A Frugal Installation copies the image from the Puppy CD to the hard drive. At bootup, Puppy is loaded into your computer's memory (RAM) just as it is when you boot Puppy from CD, however, loading it from a hard drive is much faster. This way, Frugal Installation combines the advantages of booting from CD-ROM (protection from malware) and a hard drive bootup (speed). Moreover, upgrading to a new Puppy version is very simple - all you have to do is replace some files.
Start "Menu | Setup | Puppy universal installer". Choose which medium Puppy should be installed to. In this example, I chose the internal hard drive.

If you have several hard drives, select one.

Next, click on the button next to the partition that you want Puppy to be installed to - /hda2 in this example.

In the dialogue box, click "OK".

You now have to decide whether you want a "Frugal" or a "Full" installation. In our example, click on the "FRUGAL" button.

Now you change the installation directory. Just click on the "OK" button.

The files are now copied from CD to the hard drive.
The installation is finished. In the next two dialogue boxes, click "OK".


Since you now have two operating systems on your computer (Windows and Puppy Linux), you need a boot loader. The boot loader is the first program executed after switching the computer on. It enables you to specify which operating system should be started up. If Windows was the only operating system on your computer up to now, you do not have a boot loader. Start the installation of the boot loader GRUB with "Menu | System | Grub bootloader config".
Select "simple installation" and click "OK".

In the next dialogue box, select "standard" and click "OK".

Now you have to specify where the GRUB boot loader should store its files. These can only be written to a Linux file system partition. Thus, please specify one of the Linux (ext2 or ext3 file system) partitions you created (/dev/hda2 in the example). If you do not have a Linux file system partition yet, you need to create one.

Now you have to specify where the GRUB boot loader itself should be installed to. Select the Master Boot Record "MBR" and click "OK".

In the next dialogue box, click "OK".

In the next dialogue box, click "OK".

The installation is complete. What remains to be done is to configure the GRUB boot loader so that Puppy Linux can be booted. This is how to do it:
Open the file "menu.lst". You will find this file in the /boot/grub directory of the partition you installed the GRUB files to (/dev/hda2 in our example). For Linux newbies, I include detailed instructions on how to find and open this file. More advanced users can skip ahead to where menu.lst gets edited.
Start "Menu | Filesystem | Pmount mount/unmount drives" and click on the red hard disk symbol next to "/dev/hda2".

The symbol changes colour from red to green.

Start "Menu | Filesystem | ROX-Filer file filemanager".

Click on the arrow in the upper left corner.

You have gone up one directory.

Click on the folder called "mnt".

You are now inside the "mnt" folder.

Click on the folder called "hda2".

You are now inside the "hda2" folder.

Click on the folder called "boot".

You are now inside the "boot" folder.

Click on the folder called "grub".

You are now inside the "grub" folder.

Use the right mouse button to click on the file called "menu.lst".

From the context menu that pops up, select "File menu.lst | Open As Text".

You can now see the contents of the menu.lst file.

Edit the file at this point:

title Puppy Linux 301 frugal (on /dev/hda2)
rootnoverify (hd0,1)
kernel /puppy301/vmlinuz pmedia=idehd psubdir=puppy301
initrd /puppy301/initrd.gz
(Notice: depending on what medium you boot from, you have to set the pmedia parameter to one of usbflash, usbhd, usbcd, ideflash, idehd, idecd, idezip, satahd, scsihd or scsicd. If you did not install the GRUB files to the /dev/hda2 partition, you need to change the rootnoverify parameter as well - partition number and Linux drive letter minus one, so if the GRUB files are on /dev/hdb3, make it "rootnoverify (hd1,2)".)
The bit you changed in the file should now look like this:

"Comment out", i.e. put a number sign (#) before each of the following lines:

It should now look like this:

All necessary changes have been made. The file should now look like this:

Save the file by selecting "File | Save" from the program's menu. Exit the text editor.
Close the ROX file manager.
Click on the green hard drive symbol next to /dev/hda2. It should then change colour from green to red.

Click on the green CD-ROM symbol next to /dev/hdc. Remove the Puppy CD.

Exit Puppy and reboot the computer: "Menu | Shutdown | Reboot computer".
When you reboot the computer, you will be asked whether you want to save the "session" (i.e., all the configuration changes you made). Hit Return to select the entry "SAVE TO FILE", which is already highlighted.
Confirm the next dialogue (Warning) by hitting Return.
In the next dialogue, select the "hda2" partition with the cursor keys and press Return.
You will be asked whether you want a normal (unencrypted) or an encrypted save file. Select "NORMAL" with the cursor keys and press Return.
The next dialogue lets you choose a size for your save file. A file size of 512 megabytes is usually sufficient. You can increase (but not decrease) this size anytime from within Puppy. Pick the desired file size with the cursor keys and press Return.
Confirm the next dialogue by pressing Return. Creating the save file can take a few minutes; please be patient.
Your computer will now shut down completely and then start up again. You will then see the boot loader come up. Select "Puppy Linux (on /dev/hda2)" with the cursor keys and press Return. Puppy boots up.