The obvious question is this: Just how do you install (Linux) on a system with no CD, DVD or USB capabilities. PXE is one option, and I could go to all the trouble of setting that up, but there's another option: Making a boot-partition out of the swap partition. If you can install from an USB stick, a floppy disk or a CD, there should be no reason you couldn't do the same from a regular hard drive partition, right? It turns out that this feat isn't all that difficult at all, it's just poorly documented. So I'm documenting what I did here.
This is done at your own risk. Make sure to backup your data. I'm writing this assuming you have enough of an idea how to modify the instructions to suit your system. If you are not reasonably familiar with Slackware, this guide is not for you.
I'm going to be using the swap partition, which was called /dev/hda2 on my old install. This varies from system to system. Please make sure you're very certain which partition you want to install on.
First step is to disable the swap partition.
# swapoff -a
Next step is to create a file system on this partition.
# mkfs.ext2 /dev/hda2
# mount /dev/hda2 /mnt; cd /mnt
As I'm going for a network install, I only want to download the isolinux and kernels directories of the Slackware tree. Here I chose the slackware.no-mirror because it's one of the faster ones nearby.
# wget -nv -r ftp://ftp.slackware.no/slackware/slackware-13.1/isolinux
# wget -nv -r ftp://ftp.slackware.no/slackware/slackware-13.1/kernels
The next step is to add the install partition to lilo, by adding the following section
image = /mnt/kernels/hugesmp.s/bzImage
append="load_ramdisk=1 prompt_ramdisk=0 rw SLACKWARE_KERNEL=hugesmp.s"
Update lilo by running
And reboot. Select SlackwareInst. Follow the instructions, and do a network install (I used the same FTP server as I grabbed the kernels and initrd stuff from). Easy as that.