This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new!

Feature: Puppy Linux

Puppy Linux 4.00 is barking up the right tree

By Dennis L. Ericson on June 10, 2008 (7:00:00 PM)

Share    Print    Comments   

With the recent release of Puppy Linux 4.00, developer Barry Kauler and his team have provided a lightweight but functional Linux operating system. To help reduce size and include more functionality over the previous binary-package-based Puppy 3.01, Puppy 4.00 has been compiled from a Slackware 12-based source. Yet despite its small size -- the ISO file is a meager 87.1MB -- Puppy has an abundance of applications, with more than enough for an average user.

To maintain a consistent user interface, Puppy 4.00 has abandoned GTK+ 1 and Tcl/Tk, and is now a totally GTK+ 2 based system. As such, the developers have been able to migrate and upgrade Puppy to a host of new GTK+ 2 replacement applications, such as Osmo personal organiser, ePDFView PDF Viewer, Homebank personal finance manager, Pidgin chat client, Fotox image viewer (now renamed Fotoxx), and mhWaveEdit audio editor, among others. New features for Puppy 4.00 include scanner and digital camera support via SANE and Gtkam, respectively.

Puppy Linux has always been a live CD, which means you can boot and run Puppy from any computer, even if you already have another operating system installed. When running live, Puppy won't disturb anything on the hard drive, and all your files are still accessible. And you can save all your work (including files and configuration and desktop settings) to a pup_save file (see below for more information).

On my Dell Latitude C600 laptop, which is equipped with an 850MHz Pentium III and 384MB RAM, booting live from the CD took about two minutes. The process included answering a few questions about keyboard and video, after which the desktop showed a nice ocean/mountain scene wallpaper. Puppy uses Joe's Window Manager (JWM), configured with clock, sound, battery level indication (for laptops), memory available, and a CPU utilization graph. JWM is a simple window manager compared to GNOME or KDE, but it seems to have everything users need, and is in line with Puppy's minimal approach. On the desktop are icons for all the major applications, named by functional description, with many more applications available under the 'Menu' in the lower left corner. After clicking the top banner for Getting Started Information, the traditional Puppy "woof woof" bark played, telling me that sound was configured correctly.

My laptop pointer pad and keys worked correctly, except that I could not select by tapping the pointer pad. Scrolling up and down using the pointer pad right side seemed to work fine, while scrolling with the pointer pad horizontally seemed to scroll pages in the Web browser -- which I did not like.

My laptop has both an Atheros-based wireless ath0 port and a wired eth0 port, and Puppy's Network Wizard showed both interfaces available. With eth0 disconnected, configuring the wireless network was a breeze, including scanning for the available networks. It took two scans to find my network, but after selecting it and configuring the WEP key and Auto DHCP, Puppy connected to my wireless network. Puppy has done a good job of making wireless work well and intuitively.

My file server resides on another (wired) subnet, so I decided to remove my wireless ath0 card to be sure that the network could connect via the eth0 port. But after configuring the eth0 port for DHCP, I lost network connectivity. A little investigation revealed that /etc/resolv.conf was incorrect, which led me to think this might have something to do with the ath0 port still being active. Back on the Network Wizard screens, there was no obvious way to disconnect ath0. So to disable ath0, I manually typed ifconfig ath0 down in a console. Then I configured the eth0 port to use DHCP, and Puppy was back on the network. After that, Pnethood Samba client easily connected to my Samba share on the server.

Puppy has built in CUPS support for printing, so next up was connecting my Hewlett-Packard LaserJet 5L printer to the parallel printer port. I had no difficulty in configuring the printer, and printing worked well in all applications that provided a printer pop-up window, including SeaMonkey Web suite, Gnumeric spreadsheet, AbiWord word processor, and Leafpad text editor. But some programs that print via an external command, such as the Geany IDE/editor, would probably need to be reconfigured for most printers to work correctly.

Unfortunately CUPS was not able to print on a shared printer on my print server. It seemed there were either error messages during configuration or the URL for the IPP protocol did not appear correct. Having CUPS communicate with another server to print is probably pushing CUPS to the maximum, but sharing printers on a network is a common practice, and it would be nice if Puppy supported network printing as easily as a local printer. Overall I give Puppy fair marks for the CUPS implementation.

Puppy 4.00 now supports digital cameras. Unfortunately, Gtkam did not support my older Samsung digital camera, and auto detect was not able to detect it, but I was able to use Pmount and mount the USB device, and then open a ROX-filer file manager window to see and download the images. So using a digital camera with Puppy may be a little more difficult than just using Gtkam, but it still seems doable for an average Linux user.

Also new in Puppy 4.00 is scanner support via the excellent XSane software. Most scanners need to preview first, and clicking "Acquire preview" in short order scanned an image in the preview window using my Epson scanner. When I clicked Scan in the main menu I acquired the full-size image, which you can save in a number of formats. Opening Fotox verified that the image had successfully been downloaded and saved. Xsane works well and is a great addition to Puppy.

Using the SeaMonkey Web browser, I could play Flash-based video on sites like YouTube and Yahoo! with no issue, with no additional Flash download required. The default Gxine media player handled MP3 audio and MPG and WMV movie files with no problem. I rate Puppy very good with multimedia codec support.

On my laptop, running Puppy in RAM from the live CD, all the applications loaded and ran within a second or two. For comparison, I did a frugal install of Puppy Linux 4.00 on an older IBM 300 GL desktop, which has a 167MHz Pentium CPU and 128MB RAM. It took about two minutes to boot from the GRUB boot screen, and AbiWord, Gnumeric, and SeaMonkey took 30, 15, and 40 seconds to load, respectively. The mouse and keys worked well on the desktop install.

There are two ways to install Puppy on your hard drive: the full (normal) install, and the frugal install. Both can be done using the Puppy Universal Installer, a prompt-based utility that makes installing Puppy easy. The full install is like any other OS install, using the entire partition, installing directories and files, and so on. But the more useful method is the frugal install, where only the four main Puppy files (vmlinuz, initrd.gz, pup_400.sfs and zdrv_400.sfs) are placed on the drive, along with a boot loader entry. You can frugal install Puppy on a drive by itself, or add it to a drive that already has an operating system on it, or even frugal install on a USB flash drive. Puppy was designed and optimized to be run this way, and in fact, the CD is set up just like a frugal install.

To me, the best part of installing Puppy is that all work you do can be stored in one separate file, called the pup_save file. Puppy creates a filesystem within that file, and stores in it all configuration and user files. The setup for this occurs on your first shutdown, when Puppy asks you what you want to do with user data and configurations. The options include storing to hard drive, USB flash drive, or even a multisession CD. Using this one file for storage means you can run live from a CD or USB flash drive or via the frugal install and still have all your work saved, available each time you run. Puppy has earned its keep in my house, where I regularly install Puppy as a rescue CD/OS on computers where I anticipate making potentially (non-intended) destructive changes to another OS.

Puppy seems to have an application for just about every need already included. There are also hundreds of additional programs available for download via the Petget utility, as well as Squash File System (SFS) files available that add completely packaged functionality to Puppy and are loaded during bootup. For example, devx_400.sfs will add complete C/C++ compiling, and openoffice-2.2.0.sfs will add the complete Suite (version 2.2.0) to Puppy. Just place these SFS files in the directory you placed the frugal install files and run BootManager, which is a utility that configures which SFS modules to load during bootup.

In summary, the new Puppy 4.00 release is the cat's meow. Puppy Linux 4.00 is fast, reliable (on my systems it ran for days with no issue), has good wireless support, new scanner tools that work well, all the necessary multimedia codecs, and has a minimalistic yet usable approach that allows older computers to be functional machines again. Puppy also excels as a rescue CD or OS. Puppy also has good documentation already built in for new users and has active online forums.

On the not so positive side, Puppy seems to lack networked printer support, has minor laptop pointer pad issues (at least for me), no port shutdown in the Network Wizard, and digital camera support may require manual operation. But none of these are showstoppers, and Puppy 4.00 remains one of the best minimalistic Linux distributions around.

Dennis L. Ericson is a real-time embedded systems software engineer who resides in West Hartford, Conn.

Share    Print    Comments   


on Puppy Linux 4.00 is barking up the right tree

Note: Comments are owned by the poster. We are not responsible for their content.

default root user is *not* barking up the right tree

Posted by: Anonymous [ip:] on June 10, 2008 08:52 PM
Puppy OS (aka POS) is a perfect replacement for Win95 because it shares the worst flaw of Win95: single root user account. Bad dog!

Don't tell users that this is a step up from Windows versions that have separate user accounts, or is comparable to other Linux distros that separate administrative/root privileges. *It isn't*. It doesn't matter whether it's used as a CD or off a device if it's connected to a network and has access to other storage (for example, hard drives) -- any remote access becomes a vulnerability and compromises your whole system. Bad practice is bad practice whether it's in Windows or Linux or OSX or anything else. Running as root-only is BAD and not proper Unix practice.

On just that level I can't believe POS has as many fans as it does, but PT Barnum was right. Dumb it down so users don't have to worry about permissions and separate root/admin accounts and dummies will flock to it.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 10, 2008 09:53 PM
I have to agree with the first post!! although there are a lot of things I like about Puppy and the top of the list has to be how the developers have gotten wireless working so well. However upon closer inspection I too made the same observations about the security risks and also read the lame reasoning on their forums trying to rationalize away the problems Puppy has with running in the root account. This didn't really dawn on me until I actually did an install on one of my hard drives and noticed that it never asked for user accounts and passwords and it didn't even ask for a root password. Then I started asking some pointed questions on their forum and soon realized what a turkey Puppy really is. They need to change the name from Puppy Linux to Turkey Linux. Needless to say it did not take me very long to format the hd that I had installed it on.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 10, 2008 11:09 PM
While I don't like or use Puppy very much myself, I dislike everyone's problem with running in the root account. Puppy is Live CD distribution, and its pretty good at rescuing your computer. Most of us drop down to single user mode and root to repair problems that might occur. Puppy was not meant to be used as one's general purpose, everday distribution. I can understand one's concerns if a major distribution such as Ubuntu, Fedora, or openSUSE started using a single-user root account, but not a distribution such as Puppy Linux, Slitaz, Damn Small, or Knoppix.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 11, 2008 12:53 AM
Eww, GTK2... there goes puppy as a serious light, minimalistic distribution that'll run on ~150mhz/64mb PCs.
It's a shame, DSL's done a similar thing, I'm stuck with the older versions or standard debian.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 11, 2008 09:21 AM
This is a ridiculous criticism. Puppy's single user approach appeals to many users, many of whom might object to being called "dummies." The fact is that security is not always the primary concern of a computer user. An experienced Linux user, who is the only person with access to his computer, might very well find the single user approach appealing. Who the hell are these pompous asses to insist that such people are dumb?

One other note: the tapping function is easily corrected with a setting in xorg.conf (maxtapping is set to 0 by default...set it to 225 and tapping works the Puppy forums for this easy fix).


pos is for dummies... i said it, i stand by it

Posted by: Anonymous [ip:] on June 11, 2008 04:00 PM
My points were not ridiculous criticism. They're spot-on (no pun) and at the heart of differences touted as reasons to use Linux over Windows.

Take a look at any list of reasons given why users should choose Linux over Windows (like the one below) and right near the top of nearly every such list is "security." The difference being Unix permissions that separate what an administrator can do across a system or network versus what a user can do in his limited reach on the system or network. POS disregards that and chooses instead to function in a manner which even Windows recommends against and, by default, allows full and unencumbered access across each mountable filesystem and across a network.

I would rather users choose to run Windows with separate admin and user accounts than POS as root -- it's much safer for them and for their data. That way they avoid local and remote exploits and any harm inflicted is limited to what the user account controls (which, if set up properly, isn't very much). It also greatly reduces their chances of becoming part of some botnet. Yes, Linux machines can be herded. Does Puppy come with SSH? Root only login? Wow. Nice. Not.

All of this, though, is antithetical to POS because it means users have to learn about permissions and follow sound 21st-century computing principles -- principles even Microsoft now recommends! POS isn't Linux for smarties, it's Linux for dummies. POS doesn't appeal to experienced Linux users. Read their forums, read their information. POS targets inexperienced users like the reviewer who can't be bothered to RTFM to set up hardware properly (and note that even the stuff that was "set up" wasn't set up properly). Dumber users are gullible enough to believe that the kernel (Linux versus Windows) matters more than everything on top of it (Firefox, Flash, Open Office, etc.). Such naivete is what eventually leads to very serious trouble, especially when connected to a network (Internet=network) teeming with people ready to see what they can do to wrest control of various machines.

Sad that this kind of poor execution by any distro is DEFENDED on a Linux-oriented website, let alone reviewed in such glowing terms without one word about such a lapse in administering security. I stand by my dummies comment. Running as root only is stupid; only stupid people run as root. Clear enough?

And to the user who lumped in Knoppix and DSL with POS, take a little closer look at those: user knoppix and user dsl have sudo privileges but aren't root. While I'm not a big fan of wide-open sudo like they use, at least those two distros require first gaining user access before exercising root via sudo. At least DSL (Knoppix may also have it, I'm not going to look right now) has a "secure" cheatcode that prompts for both user and root passwords at boot. This is much better than logging in as root, much less running exclusively as root.


Re: pos is for dummies... i said it, i stand by it

Posted by: Anonymous [ip:] on June 11, 2008 09:47 PM
principles even Microsoft now recommends

Uh, actually, since Windows NT 3.1 came out, Microsoft has always had significant recommendations of good security practices. Most are well-known basics (don't install what you don't need, use separation of privilege, close ports, etc, etc) and others are Windows-specific. The problem is, not a lot of people bothered to look and just assumed it was the same as Windows 3.1 (a single-user OS with no security). Any Windows admin worth his salt, and there's quite alot of them out there, will tell you security has never been an issue with Windows, bad admins are.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 11, 2008 05:16 PM
OK, don't kill each other over this. Yes, using any network connecting program as root is a potential vulnerability. Yes, if you are chatting on IRC or browsing regular web sites as root you are a DUMMY. It would be completely OK, if Puppy positioned itself as a rescue Live CD distro. Unfortunately it is not the case, they position themselves as a platform for making general use Live CDs or as a Live CD for running off of older systems. So, using Puppy USB stick to fix your systems (which might include downloading a driver from known site) is OK, since you are going to be doing most things as root anyway. Using it as a regular OS is a bad idea. Oh, and BTW, GTK2 is not all that heavy, Pentium 150/64MB is just not a reasonable system. I mean I am not complaining that I cannot run linux on my Mac Classic :)


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 11, 2008 05:51 PM
I have to agree that the single root user "feature" is an absolute show-stopper. Anyone who doesn't understand that should have their license to drive a pc revoked.

Too bad, because otherwise POS is a very good distro for older pcs.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 11, 2008 06:24 PM
re: "I would rather users choose to run Windows with separate admin and user accounts than POS as root..."

That's probably a true statement security wise, but if a user is going to run as root (admin) in Windows anyway, and a lot of people do, I would rather have him run as root in Linux....Puppy Linux included.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 12, 2008 01:05 AM
To those who believe the single root user "feature" is an absolute show-stopper: Please read


Re: Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 12, 2008 10:00 PM
I read your blog entry, and am not convinced by your rationalization. If you are running as root, the programs you start, for the most part, run as root (the servers you mentioned which drop privileges being exceptions). If you haven't read and understood the source code, there is still (considerably) more of a risk than if you were running as a non privileged user. I was also puzzled by the following from your blog entry.

"You cannot, as people keep falsely claiming, “sudo su” and so become root. That capability was thought about a long, long time ago and disabled at the source code level. I know this having compiled sudo from source, installed it, and configured it to suit my taste."

I find this EXTREMELY puzzling, since I "sudo su" and become root EVERY DAY on a few machines that I have configured to allow that from my account, and since I am not a programmer, there is no way that I could have re-enabled this at the source code level, even if I wanted to. So when exactly was it disabled?


Puppy Linux 4 ate my Dingo

Posted by: Anonymous [ip:] on June 12, 2008 05:45 AM
Excellent review.

3.01 had Slackware compatibility but is not based on Slackware. Puppy is designed from scratch and Puppy 4 (Dingo) was compiled with the state of the art T2 system and is not as directly Slackware compatible as 3.01

The load in times 'AbiWord, Gnumeric, and SeaMonkey took 30, 15, and 40 seconds to load, respectively' seem very slow. All programs are already in ram (that is how Puppy runs - making no difference is speed running from HD (Hard Disk), USB keydrive or CD) It is more usual to have 1 or 2 second loads for Abiword and Gnumeric and a few more seconds for Seamonkey browser.

Puppy is a single desktop distro. Not designed for networks. Some people have created multi-user versions which have network security for the tin hats. They worry. We have fun with Puppy.

What is heartening is the quality of understanding and knowledge of Puppy in this review.
Some of the added strengths of Puppy are the outstanding support on the forum for ALL level of users, it's new website
and the ability to create new customised versions.

Multisession (running from and saving on CD/DVD) is still a Linux rarity and means no HD is required.
Puppy is a cutting edge distro, with users abandoning the hardship of bloated Linux distributions for the speed and ease they always knew Linux could deliver.

Puppy is too easy.
Woof woof from Lobster


Incomplete Review

Posted by: Anonymous [ip:] on June 12, 2008 06:34 AM
The bummer here is the repeated problem of Puppy affectionados who post "Reviews" that fail to discuss a "feature" that many feel is a shortcoming - running as root.

A reviewer who fails to report about this "feature" is failing to inform his readers about something that many believe is very important.

This "feature" is controversial, at best. Conscientious reviewers will deal with the controversy, not ignore it.

I don't think a rational discussion would include characterizations such as stupid, dumbing down, or turkey. Puppy does what it strives to do. (Though I am unconvinced by the rationale I have seen in the Puppy forum.) My main problem is that Puppy affectionados fail to deal with a significant issue in their "reviews".


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 12, 2008 03:34 PM
After doing a full install of Puppy to the hard drive, how difficult is it to set up limited user accounts and not run as root?


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 12, 2008 05:02 PM

This is Dennis, the guy who wrote the review. I added a comment above at 6:24 regarding running as root/admin in Linux versus Windows and would like to add a few additional comments now.

It is true that I probably should have mentioned the root only 'feature' of Puppy Linux. I can not really say why I did not, as I certainly was aware of it. But for me, the root only access has never been a big issue with Puppy Linux, as I do not use it as day to day distribution. When I do use it (and I do use Puppy Linux), I need root access, so for me it is a wash. I have used Puppy Linux since version 2.15 and have yet to have any security problem with it, but I will admit that there is a potential problem here. But in my humble opinion, I think you stand a more probable chance of having your hard drive fail before having your security compromised with Puppy Linux .

If your computer is behind a firewall router, I think you can breathe a little easier too, and don't forget that Puppy Linux does come with a Linux-Firewall Wizard as well. Puppy also has built in accounts used for other purposes, e.g. user 'spot' when running the DidiWiki server application, and the Puppy Linux forums talk about how to set Puppy up to use this account. So I think they have a solution for those who want to run a user account, but yes, it it not set up right out of the box.

I also think the best way to run Puppy is via the Frugal Install. This prevents any application from destroying any original system files, as they are within the compressed sfs files, not under /bin, /sbin, etc. Of course changes you or another program make could potentially get stored in your pup-save file (which stores all the /bin, /sbin, etc changes), which worst case might mean that you would have to boot Puppy ignoring the pup_save file. You can do this by either booting from the CD using the 'pfix=ram' option, or if you Frugal Installed Puppy, under grub, hit 'e' to edit the grub entry and add 'pfix=ram' to the kernel boot line. Then you can delete the pup_save file, which is no worse than if you were running as a user and an application overwrote all your files.

Lastly I just want to add that I think that Puppy is a great Linux distribution. Is it perfect? No. But I challenge anyone to find another mini Linux distribution that does so much, considering it's size. Despite it's apparently one flaw, Puppy can and does make older hardware usable, using up to date software. If it boils down to using Windows 95/98 or Puppy, I choose Puppy. And who knows, if enough people complain about the root user access, maybe the Puppy developers will make that change.


not putting our systems at risk

Posted by: Anonymous [ip:] on June 13, 2008 10:55 AM
Hi Dennis,

you wrote:
" way to run Puppy is via the Frugal Install. This prevents any application from destroying any original system files, as they are within the compressed sfs files, not under /bin, /sbin, etc."

Unfortunately yes, any application can destroy or alter not only your Puppy installation (.sfs files on your harddisk mounted read/write unter /initrd/pup_ro) but all partitions, operating systems and devices that are present in the system you are running Puppy on. This is because running any code with root privileges is not preventing any destruction.

Running Puppy installed on writable media like our harddisks or usb-sticks does not put only alien system files at risk. Some safer practice will once help Puppy alot. Containing many bright ideas, there sure is one only waitin to jump up for this one.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 12, 2008 08:40 PM
Just so everyone knows, Grafpup, a variant of Puppy (though they haven't based a version on 4.0 yet) can be used in multiuser mode.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 13, 2008 03:11 AM
Unfortunately, there is no VNC (TightVNC was in earlier versions) in this version 4. The older pupgets do not work on this one.


Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 13, 2008 10:34 PM
Just to say that tapping on the pad it is disabled for default, it is a project choice. Simply modifying MaxTapTime in /etc/X11/xorg.conf will do the trick.



Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 14, 2008 02:09 AM

Puppy Linux 4.00 is barking up the right tree

Posted by: Anonymous [ip:] on June 24, 2008 04:40 AM
First of all if one compares puppy an other mimi-distros do not forget that puppy has the most recent kernel and has many gui configurators, so you can set up everything you want almost in seconds
it's the only distro where i did not have any problems with network setup and multimedia playing

also it's the best one to use with EEEpc( i have a puppyrus, a russian puppy 3-based distro occupying only 300mb on ssd with all needed apps and everything works fine!) ,really xandros occupies 2,3 gb and mostly other distros have many problems on eee

as for working as root - it's not a problem if you know ( even just a bit) what happens on your computer. And if you're a linuxiod you know much more than needed.

i use puppy for almost a year and have no problems with it

alexander mager( magerlab) from russia


This story has been archived. Comments can no longer be posted.

Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya