Last Edited: 01 May 2008 by superuser
Importered from old WiKi -- 30/04-08 17:04.

Using Puppy Linux 2.14 FIRST DRAFT - edit from wiki

the wiki code on this page (double click on page) is kept to a minimum
to allow printing, reading, converting etc

New in Puppy 2.14

  • PETget package manager is now fast
  • Zigbert's PuppyBackup
  • Plinej's PBcdripper audio CD song ripper upgraded
  • Help files dynamically updated according to PET's installed
  • Sox Gui audio functions from Plinej
  • Grafburner Gui for CD burning from Nathan F
  • 'pup2pet' 'new2dir' and 'dir2pet' allow developers to convert dotpups to newer dotPET
    software package format
  • XDG menus, DotPup or PET installation or removal auto added and removed from menus
    in any window manager
  • Rarsa's taskbar interactive volume control
  • Rarsa's Network Wizard upgraded
  • Mouse Wizard option to choose left-hand mouse
  • Printing and fonts improved

Grafburn CD/DVD burner

Grafburn is a simple set of shell scripts that create a gui around cdrtools, making it possible to easily create and burn data and audio cd's and dvd's. It is intended to be small, simple, and easy to navigate, while providing an interface to the most common burning tasks.

With Grafburn you can
* Create data cd's or dvd's
* Burn already existing iso images
* Blank cd and dvd media
* Create and encode audio cd's (ogg, mp3, or wav encoding supported)

Usage

Being a very simple program it uses simple solutions for most tasks. To create a data cd you place the files that should go into the cd inside a temp directory, which should have enough free space to hold the entire cd. Grafburn will then create an iso image, which is an image of the cd filesystem, and give you the choice whether or not to burn it right away. You can set the

location of the temp directory as well as the location where the iso image will be created using the preferences dialog.

It is also possible to burn an already created image, and blanking of cdrw is also supported. DVD-RW blanking should be possible but is untested.

Wine Windows emulation

Download this file to /mnt/home and reboot:

http://dotpups.de/dotpups/Emulators/Wine-0.9.22/Wine-0.9.22_210.sfs(8.8∞ MB)

InkLite

This is a fork of an early version of Inkscape, and is basically the same as Sodipodi, with a few tweaks and a conventional user interface.
Online documentation: http://www.inkscape.org/doc/index.php?cess=cess/base.cess

AbiWord

AbiWord is a mature, well written, feature packed word processor. Barry likes to say that you could write your PhD thesis on it. Fire it up and see for yourself. Menu -> Word Processors -> AbiWord.
AbiWord has a grammar-checking plugin, however the Links Grammar package has to be installed for it to work. Run the PupGet package manager (see Setup menu) to install Links Grammar. Note, the Links Grammar package is named link_grammar-4.1.3.

After installing Links Grammar, start AbiWord, then go to "Edit -> Preferences..." menu and turn on grammar checking.

This is new to the 2.4 series. It is a plugin, named AbiMathView, and it requires the gtkmathview package.
It is not WYSIWYG editing, as you have to enter a Latex equation, so you would need to become familiar with basic Latex syntax.

gtkmathview is a package that can be installed with the PupGet package manager (see Setup menu). You need to install two packages, libt1-1.3.1 (Type1 font rasteriser, used by gtkmathview and gtkmathview-0.7.5.

If you want to use the actual MS TrueType fonts, not substitutes, do this:

1. Use the Puppy pmount program (in the File Managers menu) and mount the Windows C: drive.
2. Create this folder: /root/.fonts/
3. Copy font files from C:\windows\fonts\ folder to /root/.fonts/ folder.

Note that MS Windows has four basic fonts that are in all versions of Windows, right back to 3.x. They are Arial (proportional, no serifs), Times New Roman (proportional, with serifs), Courier New (non-proportional, that is, equal spacing between characters), and Dingbats (symbols). For each of these, you need to copy four files -- there is a file for normal, italic, bold, and bold-italic.

After doing that, restart AbiWord, and the fonts will be available.

There are many plugins available for AbiWord, available from the AbiWord web site.

Puppy has various plugins installed. Plugins are to be found in the /usr/local/lib/AbiWord-2.4/plugins/ folder.
You can add plugins there, but they will get removed at a Puppy-version upgrade. But, you can place further plugins into the /root/.AbiSuite/AbiWord-2.4/plugins/ folder.

You should not have to compile plugins yourself. You should be able to find precompiled plugins via the AbiWord website. They must be compatible with the current version of AbiWord, which is 2.4.1. If an AbiWord plugin is a .tar.gz file, you will have to extract the files.

Gnumeric

Gnumeric is another outstanding application. This one is a spreadsheet editor with lots of features. Just like AbiWord you can open all your files in almost any format. Menu - > Information managers. -> Gnumeric.

Why Choose Puppy?

Puppy boots up and runs fast in RAM memory, freeing any CD boot drive. Puppy has all the applications needed for daily use in only 39MB (Barebones) or 83MB (Puppy2.13). Puppy will boot from a minimum PC with 586 CPU and 32Meg RAM. Puppy will easily install to CD, DVD, USB, Zip or hard drive media.
Puppy minimizes USB keydrive writes to extend boot flash devices life indefinitely.

What is Puppy Linux?

Puppy Linux, originally developed by Barry Kauler, is a small, mature, fully featured Linux operating system for your PC. Puppy works well on old, second systems and is a delight on modern computers. It boots from CD, flash card, hard disk, USB key-drive or a CD-RW, saving files on CD-R, DVD-R or USB keydrive. Puppy runs from RAM memory with applications including web browser, word processor and chat program. Applications are very responsive on modern equipment and obsolete equipment becomes usable.

Isn't Windows or a big Linux better?
• However new your hardware, in a few months it slows down in Windows. True?
• Windows and most Linux distributions are slow; big, complex and cumbersome
• Puppy Linux is simple and easy. Fun
• Puppy is faster loading from CD than MS Vista from hard disk
• Puppy includes all needed free software
• Puppy uses wizards and simplicity - everything is explained
• Puppy comes with great free support, via our community forum, wiki, free video tutorials and audio broadcasts
• People who try Puppy are amazed by his speed, ease of use and fun factor. Everyone Loves Puppy

How to get Puppy

You can get Puppy Linux here

http://puppylinux.org/wikka/DownloadLatest

Save the current release puppy-2.xx-seamonkey.iso (e.g. puppy-2.13-seamonkey.iso) on your hard drive. The file size is about 83MB.
To make sure that you downloaded a genuine original file correctly, you can compare the checksum of the ISO file with the associated file puppy-2.xx-seamonkey.iso.md5.txt (e.g. puppy-2.13-seamonkey.iso.md5.txt). Download this file as well.

Within Linux:

Open a shell/terminal and change into the directory, in which you stored the two files. Enter the following command:
md5sum puppy-2.13-seamonkey.iso
As a result you get the checksum. Open the file puppy-2.13-seamonkey.iso.md5.txt with a text program (e.g. AbiWord). The two checksums should be identical.

Within Windows:

Download the DOS-Program md5sum.exe. To open a DOS-Box click on "Start | Execute". This opens an input window, into which you enter the following command:
cmd

Now you get a DOS-Box.

Change into the directory, in which you stored the two files, e.g. C:\Puppy. Enter these commands:
c:
cd \
cd puppy
dir *.*
Now you should see the Puppy-files. Enter the command:
md5sum -c puppy-2.13-seamonkey.iso.md5.txt

You should get an "OK".

Subsequently you burn the ISO file (in our example puppy-2.13-seamonkey.iso) on CD. To burn an ISO file on CD, consult the manual of your CD burning software. Beginners sometimes copy the ISO file simply as a data-file on CD, which doesn’t work. Usually the CD-burning software has a special menu option for burning an ISO file on CD. You can verify whether you burned the CD correctly by looking at the CD with the file manager (e.g. Windows Explorer). If you see files as "image.gz" or "vmlinuz.gz" everything is OK. If you see the file "puppy-2.13-seamonkey.iso" this is incorrect.

Differences between Puppy 1 and 2 series

Puppy 1 uses an earlier Linux kernel and may offer better support for some older hardware. In Puppy 2 you will find increased speed, more powerful applications such as Inkscape and Gparted, and the Universal Installer. Puppy hardware recognition is now rivalling that of Knoppix and has surpassed XP for older equipment. Puppy 1.09CE was the last in the 1 series. It is still used and supported.

Run from CD - the easiest way to try Puppy

You don't need a hard disk to run Puppy. No installation is required either. Have a major Linux or Windows on your hard disk and run Puppy from CD or USB keydrive.

How to run Puppy the very first time

First set up the boot sequence in the BIOS. If you do not know how to get into the BIOS-setup, consult the computers manual. Usually you press one of the following keys immediately after switching on the PC: ESC, one of the function keys F1 to F12 or the Delete key. At the BIOS-setup you change the boot sequence so that the CD-ROM drive is first and the hard drive is second. Save the settings and close the BIOS setup. Insert the Puppy CD into the CD-ROM drive.
When the PC reboots, the BIOS will boot from the CD. Now Puppy should start.
During the starting procedure you are requested to enter the keyboard map. Navigate with the cursor keys downward to the entry "us" (us stands for USA) or your locality. Then strike the return key. Thereafter a further window (Puppy video Wizard) appears.

Use arrow keys, navigate with the arrow keys to the resolution and depth of colour (e.g. 1024x768x16 or 1280x1024x24) and, if a ( ) checkbox appears you press the space bar, so that an X is set for your required resolution. Otherwise just arrow down until the required resolution/depth is highlighted. Then strike the return key. Make sure that the entry is marked as "supported".

After a test the Puppy desktop appears for the first time. These settings will be optionally saved on your HD or CD (requires burner) when you finish. The choice is yours.
Puppy is loaded completely into RAM. Your old operating system is untouched, you can safely use Puppy Linux. Now you can take the CD out of the CD drive if you wish.
If you terminate Puppy you are asked whether you want to store the settings (and your personal files) in a file named pup_save.3fs on a hard drive or CD-ROM. A window appears which offers you the choice between "SAVE-TO-FILE" and "SAVE_TO_CD_or_QUIT" (you can change between the two options with the tab-key). Select with the tab-key "SAVE_TO_CD_or_QUIT" and press the return-key. Now a further window appears and you can select "NO_SAVE" or "SAVE_TO_CD".
If you would like to store the settings (and your personal files) you are asked on which hard drive.

Save settings and personal files

So that Puppy can store all settings and your personal data, a file named pup_save.2fs (or, in earlier Puppy versions, pup_save.3fs) is saved. A size of 512 MB for this file, is a good start. This is big enough for further programs and can be backed-up on CD-ROM (note: if you want to backup the file on a USB stick, it must have a storage capacity of 1 GB).

Hard drives, partitions and filesystems

A hard drive can be divided into one or more partitions. If you create several partitions on a hard drive, each partition appears like a hard drive in the operating system. In other words, although you have only one hard drive in your PC, you will see several (virtual) hard-drives with Windows or Linux. Windows designates the hard drives (as well as the floppy disk drive and CD/DVD drive) with letters. Usually 'A:' designates the floppy disk drive, C: the hard drive (first partition), D: the CD-ROM drive, E: the hard drive (second partition), F: the hard drive (third partition) and so on. Each partition has its own file system. Windows normally uses NTFS (Windows XP) or FAT32 (Win98, Win95).
With Linux the (first) hard drive is addressed as /dev/hda or /dev/sda. If your PC has a second hard drive, it is addressed as /dev/hdb or /dev/sdb. The partitions are sequentially numbered, starting with one. The partitions of your harddrive are addressed as /dev/hda1 (corresponds to the Windows C-partition), /dev/hda2 (corresponds to the Windows E-partition), /dev/hda3 and so on. Linux can work with different file systems such as ext2, ext3 or ReiserFS. These file systems are not readable by Windows. In addition Linux can work with Windows file systems too. Due to this capability a FAT32 partition is ideal to exchange files between Windows and Linux. Puppy can also save and read from NTFS formatted drives.

How to create a FAT32-partition

First of all you have to plan your new hard drive partitions. I recommend you add to your existing Windows partition at least three further partitions. The following example assumes that you have only one hard drive (Windows-partition C). Your hard drive could be like this:
First partition: NTFS (Windows XP)
Second partition: FAT32 (to save your Puppy-file pup_save.3fs)
Third partition: FAT32 (to exchange files between Windows and Linux)
optional fourth partition: ext3 (Linux)
The first partition is your Windows partition with all its programs and data. The second and third partition have a FAT32 file system, which can be accessed by Windows and Linux. On the second partition (recommended size of approx. 1 GB) the pup_save.3fs-file will be stored. The third partition (recommended size of approx. 5 GB) will be used to exchange files between Windows and Puppy. To save many large files with Puppy Linux (e.g. music collection or picture collection) you should create a fourth partition with an ext3-filesystem. This file system can not be read by Windows and is intended for Linux only.
To create the partition you should do this:
First of all save your files on a CD-ROM, DVD or an external hard drive. Remember also to save your favourite Internet addresses and your email's. If you have encrypted files, it is advisable to decrypt them and save them too. This protects you from data loss while creating new partitions.
Now you have to make sure that on your Windows partition all files are stored at the beginning of the hard drive partition. To do this, run the Windows Defragmenter program. You will find the program in the start-menu "Start | Programs | Accessories | System Tools | Disk Defragmenter". Depending upon the size of the partition and the stored files, this procedure can last for a very long time (over one hour). If you have many files, you can accelerate the procedure if you first backup these files and then delete them.
Subsequently, when you start Puppy Linux from CD, start the program "Menu | Control Panel | Gparted partition manager". Make the NTFS partition smaller and create the new partitions.
In Puppy Linux you start a shell "Menu | Run | Rxvt terminal emulator" and then you enter the following commands, in order to create the second and third partitions with a FAT32 files system:
mkfs -t vfat /dev/hda2
mkfs -t vfat /dev/hda3
If you want to create a partition with ext3 file system for Puppy Linux, then enter the following command:
mkfs -t ext3 /dev/hda4
Close the shell and remove the Puppy CD out of the CD-ROM drive. Then shut down Puppy Linux without saving.
Next time you start Puppy Linux, you can choose the partition /dev/hda2 to store the pup_save.3fs-file.

How to install Puppy

If you don't want to start from CD-ROM each time, you can install Puppy on a hard drive. There are four alternatives:

Install Puppy on a hard drive
Install Puppy on a USB-stick
CD-ROM-image on a hard drive
Install Puppy on a multi-session CD/DVD

How to save a Puppy-image on a hard drive and how to boot the image in RAM

This is a fine option for starting Puppy. It combines the advantages of booting from CD-ROM (protection from harming programs) and hard drive (speed). If you want to use this option you have to install a boot-manager (e.g. GRUB) first.
After GRUB is installed, start Windows and insert the Puppy CD into the CD-ROM drive. Copy the file pup_2xx.sfs to a partition with FAT32 filesystem (in our example this is the second partition, which probably has the letter E under Windows). If you had already stored the file pup_save.3fs from an earlier use of Puppy and if you would like to use it further, copy this file to the same folder as the file pup_2xx.sfs. Subsequently, you create a directory named "boot". Then you copy from the Puppy CD two files named INITRD.GZ and VMLINUZ to this directory.
The partition should have the following content now:

E:\pup_2xx.sfs
E:\ pup_save.3fs (optional)
E:\boot\ INITRD.GZ
E:\boot\ VMLINUZ

Now you still have to configure the boot-manager GRUB. Terminate Windows and start Puppy Linux from CD-ROM with the boot-option "puppy pfix=ram".

* Open a shell "Menu | Run | Rxvt terminal emulator" and enter the following command
mount /dev/hda2 /mnt/hda2
The command assumes that GRUB is installed to the partition /dev/hda2.
* Run the program "Menu | Word Processing | Geany text editor"
* Open the file /mnt/hda2/boot/grub/menu.lst with the text editor.
* In the menu.lst-file change the selection of the operating system (the line begins with the command default):

default 1

* Add these lines at the end of the menu.lst-file:

title = Puppy
rootnoverify (hd0,1)
kernel /boot/vmlinuz root=/dev/ram0 loglevel=3 PMEDIA=idehd
initrd /boot/initrd.gz

Save the menu.lst-file.
Close the text editor.
Close the FAT32-partition with the command

umount /dev/hda2

Take the Puppy CD out of the CD-ROM drive.
Shut down Puppy without saving.
Boot the PC. Now Puppy should start without a CD inserted in the CD-ROM drive.

To boot from CD

It is likely that your computers boot (start up) order is:

1. floppy
2. CD
3. Hard disk

Just pop in the CD and reboot

Boot Options

When Puppy boots it offers you some boot-options. If you do not enter anything, Puppy is loaded into RAM. When starting, Puppy automatically looks for a previously stored pup_save.3fs-file. If this file doesn't exist yet, you are asked about a preferred keyboard and screen resolution
With the boot-option

puppy pfix=ram
you have the option to start Puppy into RAM without your pre-saved-settings and without your personal files even if a pup_save.2fs-file already exists.

Booting

If Boot up fails

Press Enter - sometimes the CD has not started spinning yet
Do a soft reboot (Ctrl + Alt + Delete) Sometimes part of the memory is not cleared
Turn off and wait 30 sec - time needed to ensure memory is cleared in some older RAM

Turning an ISO image into a self booting Linux Operating System with MS Windows:

Use Burncdcc
About 350k
Here are flash videos explaining the process:
http://rhinoweb.us

Download the most current Puppy Linux iso file
Install BurnCDCC
Burn the iso image using BurnCDCC
Insert your new Puppy disk into to CD Drive and reboot the computer.

When burning use the slowest burn speed in burncdcc to ensure correct burning.

Running Puppy
When you have a bootable CD:

Restart your computer with Puppy CD in your CD-ROM drive (If it does not attempt to boot from the CD, see the entering CMOS page). At the boot screen, either wait five seconds for normal boot. Press 'Enter' to bypass the 5 second delay.

The Menu

Pressing 'Enter' will select the first option and speed up boot time

(see the isolinux.cfg in the CD image for each version's options):

Just wait 5 seconds for normal startup!

The Initial Boot up

Upon the first boot of Puppy (or if you didn't save your settings), you are asked some questions:
At the Select the keyboard dialog, use arrow keys to scroll down to 'uk' (or whatever keyboard layout you wish) and press Enter.

How to boot from CD

Newer computers are able to support booting from CD. Some computers look for the Operating System on the hard disk first. Change the computer to use the CD-ROM before the hard drive.
Puppy is a Linux "Live CD" so you simply put the CD into your drive and reboot. There are two ways to do this; one, buy a copy, and two, burn your own.
If you decide to buy a copy remember Puppy is free you are just buying the CD (the plastic round thing) and shipping not Puppy Linux. Here is the web address to find out the details http://pupweb.org/puppy/download/downpage.htm#Purchase
If you decide to burn your own you must obtain the ISO image. This is a file that contains all the information on the CD. It is available here http://pupweb.org/puppy/download/downpage.htm∞ You need the file that is named puppy-2.???????.iso ( where the ??? will change with version ). To burn the file to a CD you must have a burning program that can handle ISO images.

Windows 2000/XP - HT Fireman ("free") or Nero (not free)
Puppy Linux 1.x.x - Graveman
Other Linux - Kd3, Graveman or others

The important thing is that you use the ISO burning feature and don't burn the ISO file itself to the CD. So for example you could find it in the menu or select copy then for the input device select ISO file.

Booting

In order to boot there are a few things that have to be set up correctly. Most computers should be OK to just put the CD in and restart.
There are a few simple things that can go wrong and this may not be a complete list. So before doing anything drastic like changing BIOS settings try this;

Turn your computer completely off for about 10 seconds then back on.

If you have more than one CD drive try all of them.
Re-burn the CD

The next thing to try would be to tell your BIOS that you would like to boot from a CD. Your system will be different from my system but this is the basic idea. Turn your computer off then back on. When your computer first turns on press the "Del", "F1", "Esc" or some other key to enter the BIOS setup. Your system could even tell you what key to press on the screen.
When you are in your BIOS setup program find the section that says boot order or boot device priority or something like that. Change this setting to boot from the CD drive first. This is OK because if there is no CD it just goes to the next device. A good way to set this up is for your CD to boot first then the floppy drive then the hard drive.
If your computer is really old or there is some problem then last thing to do would be to make a wake floppy (Setup / wakepup).
When the CD boots the first thing that you see is the Puppy boot menu. For now just hit Enter. This will start Puppy with the default boot settings.
The next screen you will see is the key map selection. Select your keymap ("us" for me) and press enter. Last you must select Xvesa or Xorg. If you don't know the difference select Xvesa. The last thing you will have to set is the resolution. It just select the one that best suites you.

Changing CD boot settings:

Many laptops allow you to boot from the CD once (only for this time) by pressing a special key (usually Esc, Del or F1, F2, F3, F11, F2 or F10) during the memory checks (very soon after the computer's power on).
The second method is to setup your box to permanently look for a boot CD at first, and try to boot from the hard disk only if no CD is found. Again, you have to press a key during the startup, which will allow you to enter CMOS/BIOS SETUP - it should say during the boot up sequence.
Then the (usually the second set of options) will include a set of boot possibilities. Change to CD/ DVD or USB Boot (if available) then save (usually F10) and exit the setup function
You may need to do a cold-reset or even turn your computer off, to use the new settings. You should boot from the new option which you can change back to HD later

If Booting requires BIOS changes:

You may need to change the boot order in your BIOS. In the BIOS look for 'Advanced setting', 'Boot order' or 'Boot options'. Set CDROM as a first device and hard disk as a second one.

Here is how you change those settings:
During a hard boot (when the computer is first turned on or when the reset button has been pressed) try these - getting the right time can be tricky. Press the combination or key about every 2 seconds to ensure entering the CMOS/BIOS

Entering CMOS For Different Motherboards

Press Tab during boot = Emachine
Press DEL during boot = AMI, Award
Press Esc during boot = Toshiba
Press F1 during boot = Toshiba
Press F2 during boot = NEC
Press F10 when square in top RH corner of screen = Compaq
Press Ins during boot = IBM PS/2 with reference partition
Shift Ctrl Alt + Num Pad Del = Olivetti PC Pro
Ctrl Alt ? = some PS/2s, eg. 75 and 90
Ctrl-Esc = Misc computers
Ctrl Ins = some PS/2s when pointer at top right of screen
Press reset twice = some Dells
Ctrl Alt Enter = Dell
Ctrl Alt Esc = AST Advantage, Award, Tandon
Ctrl Alt + = Misc computers
Ctrl Alt S = Phoenix
Ctrl Alt Ins = Zenith, Phoenix
Ctrl S = Phoenix
Ctrl Shift Esc = Tandon 386

Device setup

Most things in your system should work without any configuration, for example, your mouse. The devices in this section need extra information or drivers in order to work. First try running the wizards yourself located at Menu -> Setup -> Wizards. If you need help see the sections below.

Dialup Modems

Start off clicking on the connect icon on the desktop. If you have an external serial modem it should have been auto-detected by Puppy. In that case just take the GKdial option. If not you will have to use the modem wizard.
If the modem wizard does not work you most likely have a winmodem. Puppy does support some types of these modems and there are Linux drivers for others. The best way to get help about modems that do not work with the wizard is the forum at http://www.puppyos.com/∞, just click on the forum link at the top . If your modem does not work consider picking up an external serial modem, they are cheap and work great with linux.
In any case when you get a modem set up all you have to do it open GKdial ( Menu -> Network -> GKdial ) and use the add button.
Next, enter the information from your ISP.
Now click Add and then click Connect on the main screen.

Dial-up Internet access

Analogue modem setup

Configuring Puppy for Internet access using modem dialup should be extremely simple. If you have an external serial modem (which is strongly recommended for Linux) then it will have been auto-detected by Puppy -- as long as it is turned on when Puppy starts up. Then, all you have to do is click on the 'connect' icon that you will see bottom-left of the screen and choose to launch the dialler program GKdial.

If your modem was not auto-detected, but you do have what is known as a 'hardware modem', you will need to run the Modem Wizard:
Just like Windows 9x, 2000 and XP, Puppy has a "Start" button -- click on this and up will pop a menu. Select this from the menu:
Setup --> Modem Wizard

The Modem Wizard locates your modem. If you already know that your modem is /dev/ttyS0 for example (same as COM1 in the DOS/Windows world), fine, but do run the Wizard. The Wizard causes /dev/modem to be linked to the actual modem, and the dialler program GKdial is configured to use /dev/modem. Also, the Wizard causes setserial to execute at bootup (which is supposed to initialise your modem properly). You only need to run the Wizard once, and settings are remembered.

NOTE: Puppy currently supports two types of "software" modem, the Lucent Linmodem, and the Smart-Link range of soft-modems. See notes below.
GKdial, the dialler program

Click the 'connect' icon on the desktop and choose to launch GKdial. Note, this icon by default launches the Internet Connection Wizard, but you can easily change the icon to immediately launch GKdial.

GKdial enables you to create multiple accounts, that is, to dialup as many different ISPs (Internet Service providers) as you wish.
When you first start Gkdial, create an account by clicking the "Add" button. There are some simple questions to answer, such as your username, password, and ISP telephone number.

The only "difficult" part of setting up an account with Gkdial is that it asks for "Server Name" and to choose CHAT, PAP or CHAP connection protocol. In the case of Server Name, just choose any meaningful name to describe the account (it probably doesn't matter, but just to be on the safe side, only enter a single word, no spaces). For the connection protocol, PAP works for me, so give that a go. Your second choice would be CHAP.

Gkdial keeps the configuration files for each account in /etc/ppp/peers and /etc/ppp/chatscripts folders, so if you ever really need to get into fiddling with them, you know where they are!

After creating an account in Gkdial, you simply click the "Connect" button ...and cross your fingers!

Note that the default "modem initialisation string" used by Gkdial does not work for all modems. Symptoms could be that although the modem is recognised it won't dial-out, or won't connect. In that case you have to edit the modem configuration file created by Gkdial in /etc/ppp/chatscripts/. Documentation on initialisation strings is below.

NOTE: There is a second analogue modem dialup program, called Xeznet, which is a GUI frontend to eznet. Try this if GKdial doesn't work. Note that when adding an account, the "tty" field and the "speed" field do not need to have anything entered into them as they default to /dev/modem and 115200bps.

ADSL/Broadband

My own experience with using Puppy to connect to ADSL was very simple and pleasant.

A friend of mine has ADSL with westnet.com.au (in Australia). Her computer runs Windows 98, and she ran the Easy-Config program supplied on the CD. She purchased a Netcomm NB1300 Plus 4, which is an ADSL router modem with one usb and four ethernet ports. On my recommendation, she did not use the usb port. She connected the first ethernet port to her PC, inserted the CD and did some simple hardware configuration as explained in docs on the CD (basically, choose "Never dial a connection" in the Internet configuration, and run "winipcfg" and choose the ethernet card not the dialup modem and press "Renew" button). Then she ran Easy-Config and just entered three parameters: she had to choose a "ISP-profile" and she left it at the first one, which was "ISP-profile-001". The other two parameters were username in format of "username@westnet.com.au" and her password.

Hey presto, she was up and running.

I plugged my PC into the second ethernet port, ran the Puppy Ethernet/network Wizard and chose DHCP, and immediately I was off and running also!

My experience highlights the advantage of using a better quality modem. If you are thinking of upgrading from dial-up to ADSL, look very carefully at the modems offered by the ISPs. The Netcomm NB1300 Plus 4 has a router built-in, so supports 4 PCs simultaneously connected to the internet (5 PCs if the usb port is also used). After running Easy-Config, the username and password are stored inside the modem itself. This modem has built-in DHCP server and firewall capability. In fact, this kind type of intelligent modem may be running Linux internally -- I don't know if this particular model does though.

Avoid a usb-only modem. Cheap and troublesome. For Windows, they require a special driver to be installed, whereas an ethernet modem needs no special driver. For Linux, ethernet modems are supported, but usb modems may not have a driver. Puppy has very little support for usb modems.

An update to the above is that I recently setup another ADSL router modem for somebody, and this one has a web browser interface -- meaning that no Windows-specific software is required to get it setup -- the way to go!

Troubleshooting

Modem strings

It is on my to-do list to provide a list of modem strings for you to choose from. If you find that your modem will not dial out properly, in the case of GKdial look in /etc/ppp/chatscripts/ folder, and you can edit the file therein. Here are some URLs with lists of modem strings for particular modems:

www.56k.com/inits

www.west.net/~jay/modem

Here is a typical modem string:

ATZL1M1&FW2

ATZ sets modem to defaults, L1 turns on the speaker, M1 set the speaker volume, &FW2 sends dialler info from the modem.

Note also that some modems need to have a "country code" programmed into them, which is done by a Hayes command (that is, put it into the modem string). This is something that I need to document. Currently, country-setting is only provided in the Puppy Modem Wizard for the Smart-Link range of soft-modems (winmodems).
Puppy 1.0.3+ has the WvDial package, which includes the wvdialconf program. Open an rxvt window and execute this:

# wvdialconf /etc/wvdial.conf

The most interesting thing about wvdialconf is that it finds your modem then probes it and determines a suitable initialisation string. You could try this string with Gkdial. Note that the file /etc/wvdial.conf created by wvdialconf is intended to be used by the WvDial dialup program wvdial, executed like this:

# wvdial

...however, be sure to first edit /etc/wvdial.conf and enter username and password.

So, wvdial is another way to dialup an ISP, in addition to Gkdial and Xeznet/eznet.

If you would like to experiment with sending Hayes commands to your modem, Puppy has a neat little commandline program called modem-stats. Open a terminal window and run it like this:

# modem-stats -c "AT" /dev/ttyS0

There is another application, called Cutecom, a serial port terminal program, that you will find in the Utilities menu (note, recent releases of Puppy do not have this program builtin -- it is a PupGet package: see the menu Setup --> Puppy Package Manager.). It's very easy to use: for my modem I had to tick the "Handshake: software" checkbox and selected "CR,LF line end" from the listbox near bottom of the window. After opening the serial port for any Hayes commands that you type in "Input:" box, the response from the modem will appear in the top text box. For example, you type "AT" followed by the ENTER key, and the modem should respond with "OK".

Winmodems

If your modem is not auto-detected and the Modem Wizard doesn't work, it probably means you have a "winmodem". These are cheap modems sold with most PCs these days and either need a driver for Linux or won't work at all.

External modems are usually okay, as they are true "hardware" modems. I recommend a true hardware modem as it gives faster data transfer rate (in my experience). Older internal ISA-bus modems are usually hardware modems. An older internal PCI-bus modem may be a hardware modem (but probably isn't).

If you don't want to be bothered with the hassle of trying to get a driver for your winmodem, I recommend the investment of purchasing an external serial modem, but not a USB modem. Unfortunately some manufacturers are apparently cutting costs with external USB modems and it may not be a true hardware modem.
With a true hardware modem, Puppy will auto-detect it at bootup and all you have to do is click the 'connect' icon on the desktop to launch GKdial.

However, Puppy does support two types of software modem:

The Lucent DSP Linmodem. The term "Linmodem" refers to a software modem that has a driver for Linux. Basically, the range supported is the Lucent (Agere Systems) Apollo and Mars chipsets, specifically the chips DSP1642-CC, DSP1641-CC, DSP1643-CH, DSP1644-CH, DSP1641B-CH, DSP1645, DSP1646, DSP1648, DSP1648B, and APL43. Lucent Venus chipset modems and soft AMR modems are not supported (actually, I have an internal PCI modem that identifies itself as having the Venus chipset, but it is a true hardware modem, so maybe all Venus chipsets are?).

The Smart-Link range of soft-modems. The modems supported are:

HAMR5600 based AMR/CNR/MDC/ACR modem cards on the following Southbridge chips:
Intel ICH0,ICH2, ICH3, ICH4, Via 686A, 686B, 8231, 8233, SiS 630, ALI 1535.

SmartPCI56/561/562/563 based PCI modem cards.

SmartUSB56 based USB modem.

Note that some other brands of modem use the same chipset as one of the above, so may work. I think that the latest version of the SmartLink driver is deliberately restricted to working with SmartLink modems only, but I haven't verified that.

Here are places to look for help:

You'll need Internet access to get at the following:

For more information about the Lucent Linmodem: www.sfu.ca/~cth/ltmodem

This website has a utility for scanning your modem and identifying it: linmodems.technion.ac.il

This site has more info and drivers for winmodems: linmodems.technion.ac.il/resources.html

However, if you don't have a Lucent Linmodem or one of the Smart-Link modems, I recommend don't bother. The winmodem driver will mostly likely have to be compiled for the specific version of Linux kernel used in Puppy, which is going to be a real hassle when Puppy is upgraded.
My own experiments on Windows show significant speed advantages with using a true hardware modem, so I strongly recommend that one be purchased even if you only use Windows.
The bottom-line is that currently Puppy can only be used for dial-up surfing the Internet if you have a true hardware modem, or the Lucent DSP Linmodem or Smart-Link modem.

Update: There is a HSF/HCF modem driver for Puppy. See the Puppy Forum.

Ethernet / Network (Cable Modems and DSP)

In Puppy Ethernet networks are easy to set up. Just run the wizard ( Menu -> Setup -> Wizards -> Ethernet / Network ) or click connect on the desktop and select it from there. In the wizard you will be asked to select the interface that you would like to use. Select one (if it is not correct you can go back and select the others ). For almost all networks you can just select the auto DHCP option. If not your system administrator or ISP will give you some numbers to type into the manual configuration. In that case select manual configuration and type the numbers in.

Wireless Phoenix; Late model PS/1 Value Point and 330s

The Xorg and Xvesa wizards

Choose Xorg first as it is easier to configure and more developed. Follow the instructions, selecting your preferred graphic card and monitor resolution.

Tips:

Speed up booting from live-cd
Copy pup_2xx.sfs (such as pup_213.sfs) from the cd to /initrd/mnt/dev_save/

Beautify Puppy

Put images for background in /usr/share/backgrounds/
Right click on an icon
Rox filer / options / pinboard

foreground white
background black

Notes:

You don't need a hard disk to run Puppy. No installation is required either.
Saving settings now occurs during or after using Puppy Linux
Enter or waiting 5 seconds = Normal boot configuration and data saved on first hard drive found
Settings are saved in one file
Puppy will ask where and if a personal storage (pup001 in Puppy 1 series – usually pup_save.2fs now) should be created during the first shutdown .
The location will be expected as a standard Linux drive name. Follow the on screen instructions, i.e. type the location (e.g. hda1) and press 'Enter' '. You can choose not to save your settings etc. (thus hard disk not required), nothing will be saved and you'll be asked your settings (keyboard / mouse / video) each time Puppy boots.
Your personal storage file is a compressed file system within a file on your hard drive, or a USB flash drive. It won't make any changes to other files or the boot configuration.
With Multi-session all settings will be saved (burned) as a track to the CD/DVD. Nothing would be saved to a hard drive, so again, a hard drive is not needed. Burning is done automatically on shutdown.

Not enough RAM / NTFS solutions:

You may encounter errors if you don't have enough RAM. 128 MB of RAM is required to fully load all of Puppy Linux into the ramdisk. 256 MB of RAM is required to load the OpenOffice.org suite or other large programs quickly. Puppy will run well with as little as 48MB RAM and no swap file; with 48-96MB of RAM programs are loaded from the CD when needed. A Linux swap partition or swap file can be used to help overcome this problem on systems with less than the minimum requirements.

How to setup an Internet connection

Start the program "Menu | Network | Roaring Penguin PPPoE ADSL". The program has four registermaps, which will be described below.

Registermap Basic

* Connection Name: freely selectable name, e.g. the name of your Internet-provider
* Username: ask your provider
* Network: leave it empty
* Password: ask your provider

Registermap NIC and DNS

* Ethernet Interface: eth0
* DNS Setup: From Server

Registermap Options

* Allow use by non-root users: mark with a cross
* Use synchronous PPP: mark with a cross
* Firewall: Stand-Alone
Afterwards press the "OK" button. A new window appears "RP-PPPoE". There are two buttons named "Start" and "Stop".
With these two buttons you can connect / disconnect the Internet-connection. If you press the button "Start" two green bars should be visible. Now you are online.
You can now open the Internet browser "Menu | Internet | SeaMonkey Web browser". Enter a URL and see if the Internet site is displayed.
Start the program "Menu | Internet | SeaMonkey mail and news". The configuration depends on your email-provider. In the following you will find an example for GMX.
After you press the button "Finish" the program automatically downloads your email's from your email account. If you are offline, the following error message appears:

Start an Internet-connection (see chapter 5) and click (in the Seamonkey-Mail-Program) on the button "Get new messages".

Install Problems

I put the CD in and reboot but my computer does not boot from the CD?

There are a few things that can go wrong here and this may not be a complete list.

Before doing anything drastic like changing BIOS settings try this;

Turn your computer completely off for about 10 seconds then try it.
If you have more than one CD drive try all of them.
Re-burn the CD or if you already have a version of Puppy running use this application to check it.
The next thing to try would be to tell your BIOS that you would like to boot from a CD. Your system will be different from my system but this is the basic idea. Turn your computer off then back on. When your computer first turns on press the "Del", "F1", "Esc" or some other key to enter the BIOS setup. Your system could even tell you what key to press on the screen.
When you are in your BIOS setup program find the section that says boot order or boot device priority or something like that. Change this setting to check the CD drive first. This is OK because if there is no CD it just goes to the next device. A good way to set this up is for your CD to boot first then the floppy drive then the hard drive.
If your computer is really old or there is some problem then last thing to do would be to make a wake floppy.

Puppy tells me that it can't find a partition to put the pupsave.2fs file in or that it can't save my personal data?

The pup_save.2fs file contains setup information and any data and new software you add to Puppy, so it is important to get this sorted out.
Puppy can use any partition Linux, FAT, VFAT or NTFS to store this file.

Note: If you intend to install Puppy to its own partition on your hard drive then the pup_save.2fs file is not needed.

What kind of keyboard do I have?

Americans use "us". English users in the UK use "uk". Other keyboards are supported on the initial set up and with the keyboard wizard.

When I try to install Puppy to my hard drive using option 2 the installer tells me that it can't install because the partition is mounted as root.

The fast and easy way to fix this is to reboot the live CD and at the boot menu type:
puppy pfix=ram
Then run the installer, your root is mounted in RAM so you can install Puppy to any partition you like!

The screen resolution is not the right size--it is too big or small

Go to Menu->Setup->XVESA Video Wizard or
Menu ->Setup->Xorg Video Wizard
To change the resolution

My high speed network connection is not working

There is a wizard to set up a Ethernet or LAN style intranet connection (most cable modems and other high speed connections).

Wireless

Wireless is tricky but if you carefully follow these directions you should be able to get it up and running. First grab the Windows XP drivers for your card. If you don't know what kind of card you have you must find out somehow. Ask someone to help, type in your computer's model number into google (ie. "hp pavilion zd7000 wifi card" ) or crack open your case and look at the card.
When you get the drivers open an Rxvt window in the folder that has the file that has an .inf extension.
The easiest way to do this is to open a ROX ( Menu -> File Managers -> ROX ) window and browse to the location of the driver. Then right-click and in the menu select open 'Window / Terminal here'. Next run the wifi wizard and type the commands it asks you to. Finally select the WAG (wireless access gadget ) button at the bottom.
Hit OK to the messages as it starts. When WAG starts you should be able to just hit the DHCP button at the bottom. If there are any networks available this will find them. Exit WAG and you should be on the Internet.

CD/DVD

Puppy needs to know what drives you intend to use for specific functions. This includes CD burning, playing DVD's and reading plain CD. This is needed because Puppy can tell if the drive is capable of doing these functions but it can't tell the fastest one or anything else. So just run the CD /DVD drive wizard and set this up. It may be helpful to run the program called mut or Puppy drive mounter ( Menu -> Utility's -> MUT ). This program will tell you some info about the drives so you can figure out which drives are hda, hdb, hdc and hdd.

Printers

Run the printer wizard and the directions there should be sufficient to get most printers working. If your printer is not on the list that comes up, try one that is similar. For example if you have an superjet 23e try the superjet 23 or superjet 23f.

Firewall

If your system will be on the Internet it should be behind a firewall of some kind. A firewall is something that keeps unsolicited Internet traffic from leaving or coming into your computer. Puppy has a software firewall that can be used if a hardware firewall is not in place.

Note: Routers provide some "firewalling" and many users just have a router and do not use software firewalls

Like other parts of this section the way to set it up is to run the wizard. If you know what you are doing, set it up manually, otherwise just select default. If the firewall breaks your Internet connection or does something else you can remove it completely.

Open an Rxvt ( Menu -> Run -> Rxvt ) window and type

rm /etc/rc.d/rc.firewall

This will take down anything that the firewall wizard does and return your firewall configuration back to the way that it was when you first installed Puppy.
The firewall should always be active. You can configure which ports are open to the Internet. Ideally all ports are closed. You should open only the ports you need to use. If you need some ports occasionally, keep the ports closed when not in use.
An open port is normally not risky in itself. Only if a server-program (called daemon) runs on your computer and waits at the port for inquiries, can it become dangerous. Therefore no daemons should run on your PC unless required.
The following instruction shows which ports are open and which daemons run:

* Install the Program nmap. Nmap is available as a PupGet.

* Open a shell and enter:
nmap localhost
Now you see the opened ports. If you are running Puppy at home without a home-network all ports should be closed.
* The following command shows all daemons running:
netstat -anp --ip
Now you see the running daemons. If you are running Puppy at home no daemons should run.

Intrusion detection

For further improvement of your security you should store a checksum (a fingerprint) for all files. At regular intervals, but in any case before a backup, you examine the checksums of your files. If the checksums do not agree, the file was changed or deleted.

Sound

This is very simple to set up just run the wizard and hit enter all the way through.

Installing on more media

USB Drive

Puppy can be installed to a USB drive. So to boot you would just stick it in and reboot the computer. No CD needed.
In Puppy 2 this is easy to do. First make sure you don't have anything that you need on the drive as the installer will wipe it. Now, go to Menu -> Setup -> Puppy Universal Installer.

Hard Drive

Installing Puppy to your hard drive is much the same as installing to a USB drive. The exception to this is that you must make room for Puppy on your hard drive.
You must supply an empty partition with about 500 MB of space on it. This should be an ex2 type partition. Next run the Universal installer ( Menu -> Setup -> Universal installer )

NTFS Workaround

There are two ways that Puppy can be installed to a hard drive. None of them will work if you have one big NTFS partition ( How Windows XP installs by default ). This should help you create some room for Puppy.

CAUTION: This is risky. Backup important data!
YOU HAVE BEEN WARNED !

Start off by backing up any important data. Next, open GParted ( Menu -> Control Panel -> GParted ). Now select the drive you would like to make space on in the top lefthand side.

Next, select the partition to resize and click the 'Resize / Move' tool from the tool bar. From here you can do anything you would like. Puppy only needs about 500 or 1000 MB even if you are planning on installing a lot of extra software. So just type 1000 in the third space down and hit enter. Then click the Resize button.

That's it, you should be able to install Puppy in the space you made.

How to backup pup_save.2fs

The file pup_save.2fs contains the personal settings and your personal files, if the files are not stored on another partition (e.g. harddrive, USB stick). The backup is very simple. Either you start Puppy with the boot-option "puppy pfix=ram" or you start your old operating system (Windows). Then you copy the file onto the backup medium (e.g. another harddrive, USB stick, CD-ROM).

Restore files from pup_save.2fs-file

You can see the content of the file pup_save.2fs only if the file is loaded while booting Puppy. If the file cannot be loaded, there is nevertheless a way of getting into the file and saving the content:

* Start Puppy with the boot-option "puppy pfix=ram".
* Then you open a shell and enter the following command:
mount -o loop /mnt/hdax/pup_save.3fs /mnt/data
/mnt/hdax is the partition you stored the pup_save.3fs-file (e.g. mount -o loop /mnt/hda2/pup_save.3fs /mnt/data).
* Now you can see the content of the pup_save.2fs-file at the directory /mnt/data and you can copy all files to another harddrive or USB-stick.

Backup with rsync

If you do not store your files in the file pup_save.2fs but on a partition with ext3-filesystem, you can backup the files with the rsync-command. I recommend a second (external) harddrive as backup medium. The backup hard drive must have an ext3-filesystem too (see chapter 3.3.2).
Rsync synchronises the backup with your current files and copies only the new and/or changed files on the backup medium. At the same time rsync deletes (if you want) all files from the backup medium, which you don’t have anymore. In order to be able to use rsync, you must install the program first. (Search at the Puppy-Forum).
Before you make a backup ensure that your files were not compromised
The following example assumes that you saved your files at the directory /myData and that the backup directory is /backup.

Open a shell and enter the following commands:

* mount /dev/hda4 /mnt/hda4
Mount the partition, on which you stored your file. It must be a partition with a Linux-filesystem, e.g. ext3
* mount /dev/sda1 /mnt/sda1
Mount the partition, on which you want to store the backup, e.g. an external harddrive with ext3-filesystem.
* rsync -av --delete /mnt/hda4/myData/ /mnt/sda1/backup
Backup the files. If there is no backup-directory, create one with the command mkdir /mnt/sda1/backup

* umount /dev/hda4
Unmount the partition
* umount /dev/sda1
Unmount the partition

Note: The diagonal stroke behind /mnt/hda4/myData/ is important. Only the files within the directory /mnt/hda4/myData are copied, not the directory myData itself.

These are the rsync-options:

* a: all directories and files are copied
* v: you can see the progress on the screen
* delete: directories and files, that no longer exist in myData are deleted from the backup. If you don’t like this, leave out the --delete option.

With the following commands you can restore your files from the backup:

* mount /dev/hda4 /mnt/hda4
* mount /dev/sda1 /mnt/sda1
* rsync -av --delete /mnt/sda1/backup/ /mnt/hda4/myData
* umount /dev/hda4
* umount /dev/sda1

Troubleshooting

How do I get an install CD?

Check out section 1.2.0 in this document.

I put the CD in and reboot but my computer does not boot from the CD?

See section 1.3.0 in this document.

What kind of keyboard do I have?

Americans use "us". English users in the UK use "uk". Other keyboards are supported on the initial set up and with the keyboard wizard.

When I try to install Puppy to my hard drive using option 2 the installer tells me that it can't install because the partition is mounted as root.

The fast and easy way to fix this is to reboot the live CD and select type 'puppy

The screen resolution is not the right size--it is too big or small.

When Puppy first boots there is a program that changes the size of the screen. If you need to change the resolution after this just goto Menu -> Setup -> Wizards -> Xserver Chooser.

Software Packages

If you need some software that is not included in Puppy it is easy to install more.
Puppy has two package systems, that will be merged into PETget. Both are automated and easy to use. PETGet is the main system, these packages are suppled by Puppy's developers and are in most cases the more stable of the two. DotPups are packages that Puppy users create. Sometimes these packages are experimental but most work without problems.

How do I set up my dial-up connection?

Goto Start -> Setup -> Modem Wizard to set up the modem.
When you have your modem set up goto Start -> Network -> GK Dial.
Click 'add' the button and put your information in. Then whenever you would like to use the intranet startup GK Dial and click "Connect".
Note: Winmodems may not work properly. You may have to look for their drivers and try out the SL / Lucent pupget packages too. Most users save time and hassle with a full cheap external modem.

How to setup Puppy

How to change the background desktop-image
If you want to use another background picture, copy your picture into the directory /usr/share/backgrounds or change the directory from the Puppy background program. Subsequently, you start the program "Menu | Control Panel | Puppybackground desktop image". On the left side are the available background pictures. Select a picture and click on one of the four buttons fit / stretch / centre / tile. The background desktop-image is changed immediately.

How to create your own menu

Puppy uses JWM (Joes Windows Manager) as windows manager. You can adapt JWM to your needs. If you want to change the program-menu follow these commands:
* Start the program "Menu | File managers | puppyROX file manager"
* Change to the directory /root
* Click on the symbol "Show all files"
* Right-click on the file .jwmrc and select "Open As Text". The .jwmrc-file is opened with Geany text editor now.
* Edit the file. The file .jwmrc has the following structure:
* Save the file and quit Geany.
* Restart JWM: "Menu | Shut Down | JWM restart"

How to store / remove a desktop icon

In order to store a desktop icon with a link to a program, directory or file, you can drag the file with the left mouse button from the file manager ROX onto the desktop.
If you want to remove a desktop icon right-click on the icon and select "Remove Item".

I use the live CD and I am out of room on the hard drive.

You need to increase the size of your personal storage file.

goto Start -> Utilities -> Resize Personal Storage Space

For most if not all cases, 256 Meg is all you need. I would recommend keeping any music or movies on a real partition on your hard drive.

Multiuser

Puppy is not developed as a multi-user distribution. In contrast to other distributions each user has full access to all files, programs and personal data. Nevertheless there are some options for multiusers. Search and ask the forum for solutions.

How to personalise the pup_save.2fs-file

If several persons work with Puppy, you can assign a pup_save.3fs-file to each person. In this way each person can configure Puppy individually and store his personal file in his own pup_save.2fs-file.
All pup_save.2fs-files must be in the same directory and must begin with "pup_save". For example, if there are two users Julia and Alexander you make a copy of the original pup_save.2fs-file first. Then you rename the original file as pup_save_Julia.2fs and the copied file as pup_save_Alexander.2fs. When starting Puppy asks which pup_save.2fs-file to use.

Multisession

Each user can use his own Puppy CD/DVD with his programs and his personal files. To do so use the boot option multi-session. Multi-session saving has proven more reliable with DVD's than with CD's; as always, critical data should be backed up to a remotely stored archival medium.

Linux Commands. What is Linux?

Linux is an Open Source, free Operating System with a core (kernel) created by Linus Torvalds. Linux is a free Unix compatible system. It is used by NASA, Financial institutions, and in mission critical applications where reliability is a priority.

What is the Linux kernel?

The Linux kernel is the heart of the Linux operating system.
To find out which version of the Linux kernel you are running,
type uname -r in a terminal.
Linux kernel info is at http://www.kernel.org
Puppy 2.xx uses 2.6

How do I change screen managers

xwin JWM (default)
xwin fv95wm (pupget install)
xwin xfce (dotpup install)
(xwin = xstart on other Linux systems)

How do I reboot my Puppy?

reboot (from console)
shutdown -r now
You can also press (all at once) the control + alt + delete keys
(Ctrl-Alt-Bkspc'ed out of the window manager first)

How do I shut down my Puppy?

ctrl + alt + backspace
poweroff

How do I remove/uninstall Lilo/Grub?

If you want to remove the Lilo or Grub boot loader from your system (if you are un-installing Linux etc) follow the procedures below:

For Windows 95/98 etc:

Use a DOS boot disk and at the command prompt type:
fdisk /mbr

For Windows XP:

Boot off the XP Installation CD and go into rescue mode. From there run the command:
fixmbr

How do I change directories?

cd - Used to change directories
Usage: cd [directory]
Example: cd /root/my-documents/
Example: cd .. (to move back one directory)
Example: cd /root (to return to your home directory)

How do I copy files?

cp - Used to copy files/directories from one location to another
Usage: cp file newlocation
Example: cp /home/joey/index.html /var/www/index.html
Example: cp /home/joey/* /var/www/ (this will copy everything in /home/joey to /var/www/)
For more information, in a terminal, type cp --help

How do I rename files?

mv - Used to move or rename files
Usage: mv file location (to move)
Usage: mv filename newfilename (to rename)
Example: mv index.html /var/www/index.html (to move)
Example: mv index.html index2.html (rename)
For more information, in a terminal, type mv --help

How do I move files?

mv - Used to move or rename files
Usage: mv file location (to move)
Usage: mv filename newfilename (to rename)
Example: mv index.html /var/www/index.html (to move)
Example: mv index.html index2.html (rename)
For more information, in a terminal, type mv --help

How do I list directory contents?

ls - To list the contents of a directory
Usage: ls [flags] directory
Example: ls (To list the current directory)
Example: ls /home/joey (To list the contents of /home/joey)
Example: ls -a (To list hidden files)
Example: ls -l (To list file/directory permissions and file sizes)
Example: ls -al /home/joey (To list all files and permissions in /home/joey)
For more information, in a terminal, type man ls

How do I delete files?

To delete a file you must first have write permission to it.
There is no "Recycle Bin" in Linux so once you delete a file, it's gone for good.
When removing files, you may use an asterisk (*) as a wildcard flag to remove certain files, for example if I wanted to remove all files that began with the letter j, I would run rm j*
If anyone tells you to run rm -rf / as root, DO NOT LISTEN TO THEM. Running this command will delete all the files/directories on your Linux system.
Use md5sum in Puppy console to check downloads
e.g.

# md5sum emptycrust107RC.iso

This displays a string that can be compared to the md5sum on the web site where you downloaded the .iso file.

How do I delete directories?

If you have ownership to the directory and the directory is empty, you can simply type rmdir directoryname to remove the directory. If the directory is not empty and you wish to simply delete it and all its contents, run rm -rf directoryname
Please be careful with the -rf flag, as it will remove everything in the specified directory including sub directories. With root access and the rm -rf command you can wipe out your entire system if you make an error.

How do I access my cdrom drive?
mount /dev/cdrom /mnt/cdrom

How do I access my floppy drive?
mount /dev/fd0 /mnt/floppy

How do I unzip a .tar.gz/.tgz file?
To extract .tar.gz or .tgz files, run the following command in a terminal:
tar -zxvf file.tar.gz (or file.tgz)
This will normally create a new directory based on the filename. If you want to extract a filename called file.tar (without the .gz) simply run:
tar -xvf file.tar
For more information, in a terminal, type man tar and scroll down to the tar entry.

How do I unzip a .bz2 file?

Click on the file from ROX and select "Extract"
To extract .bz2 files, run the following command in a terminal:
bunzip2 -dv file.bz2
This will normally create a new directory based on the filename.

How do I run a program?
Type the program name in a console (rxvt) window
Try: dillo, mtpaint, ical

How do I check HD errors
fsck.ext2 -vfn /initrd/dev_save/pup_save.2fs

Tips and tricks. Upper and lower case

Linux always differentiates between upper and lower case. The two files MyFile.txt and myfile.txt are different files.
Special characters

Don’t use special characters except for minus (-) and underline (_) for filenames or directory-names. Don't use the space-character. Use the characters A-Z, a-z, 0-9, -, _ only.

How to move files with ROX

If you left-click on a file and pull it to another directory the file is copied. If you press the shift-key at the same time, the file is moved.

Further information about ROX

The context menu of ROX
To use the contextmenu of ROX right-click on a file or directory.
Setup DVD/CD-burning program TkDVD
Click on the button "Advanced Options" and enter a check mark at the option "Filesystem extensions | Add Joliet extensions". This enables you to use long filenames.
Copy and paste in the shell rxvt
Copy = left mouse-click
Paste = middle mouse-click

Automatic completion in the shell rxvt

You don’t have to type the entire path or filename at the shell. It’s enough to type the first letters and then press the tabulator-key. The shell completes the directory-name or filename.

Setup time and date

Start the program "Menu | Desktop | Set date and time".

Security

If you start Puppy from CD-ROM (or from a CD-image on your hard drive) no potentially harmful programs can install on your computer. With every reboot all potential malware is gone.
However you are not wholly protected against malware while you are online, because (in theory) malware can be installed on your computer and can be active until the next reboot. That is why you should always run a firewall. Besides you can store checksums of all your files to make sure, no one has manipulated your files.

Root

In contrast to most other Linux distributions, Puppy does not differentiate between a normal user and the administrator root. Rather you always works as root, which simplifies the use of Puppy. For the normal home user, there are no special risks compared to other Linux distributions. On the contrary, Puppy is safer than most distributions.
First let’s analyse the risk of a distribution, which differentiates between user and root. The user works as a normal user, who does not have privileges to write/delete programs and system files. An intruder can compromise only the user’s files. However the intruder has an entrance to the system and can try to gain root-privileges (find the password file, use exploits to transfer malware code and so on), and afterwards try to get access to all files.
As long as Puppy starts from CD-ROM (and is not installed on the hard drive) the program-files and system-files are secure. Every time you reboot any malware programs, which an intruder could have left, are gone. Of course your own files stored into the pup_save.3fs-file or on a hard drive can be compromised by an intruder, but this can happen to the normal user of another Linux distribution as well. If you want to be safe from intrusion, store checksums of all files and backup your files regularly

Checksums

In order to compute and store the checksums, you open a shell and enter the following commands:
* md5sum /usr/bin/md5sum

Create a checksum of the program md5sum. Write down the checksum.

* mount /dev/hda4 /mnt/hda4
Mount the harddrive with your files.
* find /mnt/hda4 -type f -exec ls -ail {} \; \-exec md5sum {} \; > /root/check1.dat
Create the file check1.dat with the checksums of all files.
* md5sum /root/check1.dat
Create a checksum of the file. Write down the checksum.

If you want to check, which files have been changed enter these commands:

* md5sum /usr/bin/md5sum
Create a checksum of the program md5sum. Compare the checksum with the checksum of step (1).
* md5sum /root/check1.dat
Create a checksum of the file /root/check1.dat. Compare the checksum with the checksum of step (3).
* mount /dev/hda4 /mnt/hda4
Mount the harddrive with your files.
* find /mnt/hda4 -type f -exec ls -ail {} \; \-exec md5sum {} \; > /root/check2.dat
Create the file check2.dat with the actual checksums of the files.
* diff /root/check1.dat /root/check2.dat > /root/diff.txt
Compare the two files check1.dat and check2.dat. The differences are written to the file diff.txt.
* Open the file /root/diff.txt and check, if you know about the changed files. If not think why these files have been changed.

* Delete the file /root/check1.dat
* Rename the file /root/check2.dat as /root/check1.dat.
* md5sum /root/check1.dat

Create a checksum of the new check1.dat-file. Write down the checksum.

Encrypt with bcrypt

You should encrypt very sensitive files with the program bcrypt. Bcrypt uses the secure Blowfish-algorithm.
Open a shell and enter:
* bcrypt /MyDirectory/MyFile
Then you are asked a password (at least eight characters long; you can abort bcrypt with "Ctrl" + "C"). Bcrypt encrypts your file and appends the extension bfe to the file. The original file is deleted automatically.
If you want to encrypt more than one file or a complete directory you should create an archive-file. Start the program "Menu | Utilities | Xarchive archiver". Afterwards you encrypt the archive-file.
Note that bcrypt deletes the original file automatically. You can't recover the file. If you don't want to delete the file start bcrypt with the option -r:
* bcrypt -r /MyDirectory/MyFile
If you want to decrypt the file start bcrypt again:
* bcrypt /MyDirectory/MyEncryptedFile

Then you enter your password

Microsoft documents

If you are looking for Open Office, it is not included. Puppy is a very small distribution ( about 70-80MB ) and there is just not room. Open Office is about 114 MB. For more information visit:

http://puppylinux.org/wikka/OpenOffice

If you have files that you would like to open from Windows, this chart will help you find the correct program to open your file with.

Windows-programs and corresponding Puppy Linux programs
Windows
Puppy-Linux

Windows Explorer
ROX

Word
AbiWord
OpenOffice
Excel
Gnumeric
OpenOffice
PowerPoint
OpenOffice
Impress
Notepad
Editor
Geany
Internet Explorer
SeaMonkey

Outlook
SeaMonkey
Mail
Frontpage
Bluefish

Photoshop / Paintshop
Gimp

mp3-Player
Xmms

DVD-Player
Gxine

Windows
Puppy
Microsoft Word
AbiWord
Microsoft Excel
Gnumeric
Nero, EZ CD Creator, H.T. Fireman
Graveman
Media Player, Winamp
Gxine

Here is the AbiWord help page: /usr/share/doc/abiword.htm
Note also that Rox file manager, Sylpheed mail client and other applications are setup to invoke AbiWord. Left-click on a DOC file in Rox, and it will open in AbiWord.
The configuration files for ROX-Filer are in /root/Choices/

The configuration file for Sylpheed is /root/.sylpheed/sylpheedrc
MIME types and external applications for Sylpheed attachments are obtained from /etc/mimetypes and /etc/mailcap
SeaMonkey also reads /etc/mimetypes and /etc/mailcap, to offer a player/viewer for a file that you are about to download.
MS Word .rtf files
RTF means Rich Text Format, and is a file format for wordprocessors. The RTF standard is fully documented and all major wordprocessors can open and save in it, including MS Word. Thus, users of MS Word should be encouraged to save documents in RTF format before sending them off to other people.

Once again, ROX-Filer and Sylpheed have been setup to recognise files with ".rtf" extension and to automatically open in AbiWord when you right-click and choose "Open". In the case of ROX, just left-click.

MS Excel spreadsheet files

The Excel spreadsheet program is a part of the Office suite. OpenOffice is available for Puppy as a PETget
MS TrueType fonts can be used in Puppy -- it is just a matter of copying them across (or, if that is a legal problem, a symbolic link can be made from the Puppy partition to the fonts in the Windows partition). The AbiWord help page explains how: /usr/share/doc/abiword.htm
Open Document Format

ODF is becoming the international standard document file format. AbiWord can now import and export ODF files.

XINE

Puppy can play most video and audio files, however if you encounter one that does not play, there is a PupGet package with extra "codecs" (plugins to support more file formats).

Programming

PuppyBasic

This is an interpreter, and another alternative for developing scripts in Puppy.

PuppyBasic is also known as wxBasicScript, and is derived from a more powerful version called wxBasic.
PuppyBasic has extensions for X programming, in particular to use Xdialog and gtkdialog for creating windows.

Documentation is on the Internet:
Covers wxBasic as well as wxBasicScript (PuppyBasic):
http://noforum.de/wxBasicscript-documentation/index.htm

http://noforum.de/wxBasicscript-documentation/wxbasicscript/index.htm

Example PuppyBasic scripts in Puppy written by Mark Ulrich.
/usr/local/Dotpup-downloader-mu05/resource/downloader.wxbs
/usr/sbin/backup_dotpup_menues.wxbs

Command-shell scripting

In Puppy, you have a choice of two shells, Bash or Ash.

Note that when a terminal window is opened in X, Bash is running. If you exit from X to the commandline, Ash is running.

A shell script is an executable program, except that it is a text file and does not have to be compiled. Shell scripts can be very sophisticated, and there are lots of them in Puppy.

"Advanced Bash-Scripting Guide": http://www.tldp.org/LDP/abs/html/index.html
"Bash Programming - Introduction HOWTO": http://www.tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html

Puppy has support documentation and tools to aid with scripting:

Ash

Command shell used in Puppy

BusyBox

A suite of basic Unix/Linux console applications, can be used in scripts

Xdialog

A GTK GUI frontend for scripts

xmessage

A very basic X11 GUI dialog frontend for scripts

xcut

A console application for cut-to and paste-from the clipboard

gtk-shell

This is a very flexible, simple, tiny GTK alternative to xmessage and Xdialog. Can display/edit files, display a file-selection dialog, prompt for user input, choice buttons. No documentation. Just type "# gtk-shell -h" for help.

gtkdialog

This is yet another alternative to gtk-shell, xmessage and Xdialog. gtkdialog is a GTK2 application and reads an XML file that describes the dialog format and user interaction, allowing incredible sophisticated GUIs. This program was introduced with Puppy 0.9.7. I think that gtkdialog is the pick of the bunch!

Note that Puppy currently has two versions of gtkdialog, named gtkdialog and gtkdialog2 -- it is preferred that you use the latter as this will eventually be the only one in Puppy -- in other words, always execute the binary "gtkdialog2".

Here are some scripts used in Puppy:
/usr/sbin/hardware-probe
/usr/sbin/modem-wizard

C/C+ + programming

All of the tools for compiling C/C+ + applications are to be found in an add-on file named devx_xxx.sfs.
The default live-CD is not setup for compiling C or C+ + programs, however there is an add-on file named 'devx_xxx.sfs' (where 'xxx' is the Puppy version number, for example '210') that turns Puppy into a complete C/C+ + compiling environment.
Note, if you want to do this from a live-CD, fine, but it is necessary that the PC have either a Linux swap partition and/or a lot of RAM. C/C+ + compiling needs a lot of temporary space, and as Puppy is running in a ramdisk, if it is too small you will be in trouble.

Note that I personally always run Puppy from a live-CD and my PC has 256M RAM and a 400M swap partition -- this gives me an effective ramdisk of about 520M.

After downloading devx_xxx.sfs and placing it in the right place, reboot Puppy, and that's it, you're ready to go.

All of the normal compiling tools work, such as "configure" and "make".

Tcl/Tk

Tcl is an interpreted scripting language, similar in concept to Ash scripts as described above, and indeed a Tcl program can just as easily be made into a shell script. However, what really sets Tcl apart is the Tk library, which makes it into a full-blown GUI programming environment. There are many extension libraries for Tcl, and Puppy currently has Tk (the standard extension, provides all the basic widgets), Img (Tcl/Tk only handles gif files, this extends to jpeg, png, etc.), Combobox (a sophisticated widget), BWidget (more sophisticated widgets). Note that you can find all of these in /usr/lib.
There are also some special packages for Tcl, such as FTP and uri (these two are not currently used, but planned to be used if phv, the Puppy HTML viewer is expanded).

Many applications in Puppy (or as PupGet packages) are written in Tcl/Tk, such as Slidedraw, TkZip, CDTAR, XS, snamp, tkpppoe, phv, TkDVD and regexpviewer.
Why Tcl? Why not Perl or Java? For me personally, there are three main reasons: there are a huge number of GUI applications available, Tcl/Tk is fairly small, and it is a very simple easy-to-learn language. That last point is extremely important, as I can actually read code that other people have written, unlike all the languages based on the C syntax, that can have quite obscure code (C+ +, Java).
Another point to consider is support. The Tcl/Tk community is very active, and their websites have heaps and heaps of docs, tutorials and code examples. Also, Tcl/Tk is pervasive -- every Unix and Linux distro has it. Also it is available for the other operating systems, such as Windows and Mac.

Here are some tools in Puppy to aid Tcl/Tk programming:

ML The console editor MP and the GUI editor Beaver have colour syntax highlighting for Tcl/Tk, however Puppy has yet another text editor, called ML, that is especially designed for Tcl/Tk coding. ML has colour syntax highlighting and a rapid jump-to-procedure feature.

tkcon This is a console, like rxvt terminal emulator, and in fact capable of doing much the same as rxvt, but with special features to aid Tcl/Tk programming

Tcl/Tk links:

www.tcl.tk/advocacy/top10.html Top 10 reasons to choose Tcl
www.tldp.org/HOWTO/Scripting-GUI-TclTk Scripting graphical commands with Tcl/Tk: mini HOWTO
mini.net/tcl/540.html Is Tcl different!
mini.net/tcl/3222 Tcl/Tk is too easy
rsusu1.rnd.runnet.ru/graphics/tcl/tcl-faq comp.lang.tcl newsgroup FAQ
wiki.tcl.tk/969 Arts and crafts of Tcl-Tk programming
hegel.ittc.ukans.edu/topics/tcltk/ Online docs
www.beedub.com/book/ Book extracts "Practical programming in Tcl and Tk"

improvements with thanks to

Paul Addis
Brad Coulthard
Oliver
Anon
Barry Kauler
Nathan Fisher
ed.jason@gmail.com (Lobster)



CategoryDocumentation