This puppy rocks!

This puppy rocks!


Fast, small, lightweight—and still a full-featured GNU/Linux: Puppy Linux combines a complete set of applications with great flexibility, yet it requires minimal hardware. This article introduces this increasingly popular GNU/Linux distribution.

Which GNU/Linux?

The GNU/Linux operating system comes in hundreds of flavors or distributions. All are essentially different packaging of the same base software, assembled and adapted for different purposes. Among the features that distinguish the many distros are the user interface, bundled applications, tools, system requirements, and the methods for installing the basic system and additional applications.

Each GNU/Linux distribution has its own personality and strengths. Puppy Linux offers a full-featured, high performance system that doesn’t require state of the art hardware. Puppy’s goals aim at creating a distribution that:

  • contains all the applications needed for daily use
  • has good performance
  • requires minimal system resources
  • is highly reliable—“it just works”
  • is easy to install and boot from any allowable media (hard disk, flash drives, USB devices, CDs, DVDs, CD/RWs, Zip disks, the network card, et al)
  • Easy to use

Read this list carefully and you’ll notice that the third goal directly conflicts with the first two. How can a system offer all the applications most users need, perform well, and still run on low end hardware? Puppy’s solution to this paradox underlies its success.

Puppy is not based on any other GNU/Linux distribution. It is not a “remastered” version of some other GNU/Linux. It was created, file by file, from scratch several years ago specifically to meet the goals above. And so it attains them.

I will discuss Puppy in terms of its goals. Before I start, one note: there are several versions of Puppy as well as a number of derivatives called Puplets. This discussion represents them all.

Applications

Puppy’s primary goal is to include all the applications users normally require, be easy to use, and still perform well even on limited hardware. How can it do that?

Part of the answer lies in its selection of applications. Puppy includes programs for every need—but it carefully picks those that are the most resource efficient. These include everything from office applications to personal information management, from multimedia to web access, from networking to instant messaging. The sample Puppy screens in figures 1 and 2 show various apps being accessed.

Figure 1: Accessing Puppy’s Mulimedia ApplicationsFigure 1: Accessing Puppy’s Mulimedia Applications
Figure 2: Some of Puppy’s UtilitiesFigure 2: Some of Puppy’s Utilities

At every turn, Puppy chooses small, lightweight applications. For example, for office work the system includes the Abiword word processor, the Gnumeric spreadsheet, and GsView to display PDF and Postscript files. These applications meet the needs of most users, yet they are way more resource efficient than their Microsoft Office and OpenOffice.org alternatives. Since they are file format compatible with these competing applications, they make reasonable replacements.

Here’s another example of this principle at work. The default browser Puppy uses, called Dillo, runs in only 350 kilobytes. Contrast this to current versions of Internet Explorer or Firefox, which can easily consume many megabytes of memory. Yet for most users’ needs Dillo works just fine. If for some reason you prefer some other browser, you can easily add Firefox, SeaMonkey, Mozilla, Opera, Flock, or almost any other browser. Get the idea?

The major difference between Puppy Linux and its derivatives are in the area of bundled applications. Various Puplets add specific applications like OpenOffice.org, Skype, Firefox, Apache, or many others. I sometimes configure PCs donated to charity, and I’ve found it easy to select a version or derivative of Puppy that bundles the required applications. Check out the apps included in the various Puplets here and here.

Adding applications

Beyond the included applications, a key difference among GNU/Linux distributions is how easy it is to add extra applications to the base system. Can applications be downloaded and installed automatically? Almost any GNU/Linux—including Puppy—allows you to download and compile applications from source code, but most users don’t have the time or the expertise for this. A package manager makes installing additional applications infinitely easier.

Another important factor is how many easily-installed applications are available. A package manager is only as valuable as the apps it can install. A large pool of applications from which to select means greater value.

Puppy’s package manager is called PETget. Figure 3 shows its main interface panel. Simply select the apps you want to install and tell whether you are installing them from the Puppy Live CD or from the internet. The software does the rest.

Figure 3: Adding applications with PETgetFigure 3: Adding applications with PETget

PETget also installs many packages outside the official Puppy distribution. These packages are put together by the Puppy community and are often referred to as DotPups.

The official Puppy Live CD distribution includes over 500 packages. DotPups add another couple of hundred (see here and here). The result is that PETget easily installs any mainstream GNU/Linux application.

You can create your own customized version of Puppy Linux using a tool called Puppy Unleashed. With it you create your own Puppy live CD (a bootable CD) with the applications you select from its 500 packages. This way you can quickly customize Puppy into your own version for your organization.

Performance

One secret to Puppy’s performance is its careful selection of lean but mean applications. The other is that Puppy runs everything from memory. The operating system and applications reside in RAM and run from there. Memory access is orders of magnitude faster than disk access so running everything from RAM coaxes reasonable performance even from underpowered computers.

For example, this web page lists start-up times for Puppy running on a 433MHz PC. The PC has only 128MB of RAM and a 128MB compact flash card, and no hard drive (Puppy knows to minimize writes to the flash device to prolong its life). Most applications start in less than a second on this PC. Here are timings for some of the bigger, slower applications as listed on that web page:

Application First start (seconds) Subsequent starts (seconds)
Mozilla Seamonkey web browser 12(once installed) 6
Inkscape graphics editor 10 8
Abiword word processor 5 5
Gnumeric spreadsheet 3 3
Gxine media player 2 2
Geany code editor/IDE 2 2

Start-up times for applications

These statistics verify my experience with Puppy’s responsiveness on a variety of old systems. I’ve installed different Puppy releases on about a dozen older machines ranging down to Pentium IIs and all performed well. They were also easy for clients to use and included all the required applications.

For example, this article describes my experience installing Puppy on a discarded 550MHz Pentium III. That old machine runs Puppy applications about as fast as my 2.6GHz Celeron runs many Windows XP and Red Hat Enterprise Linux apps. It makes you think, doesn’t it?

The complete Puppy download ranges from about 28MB up to 95MB, depending on the release. This is much less than GNU/Linux systems that are not optimized for low end hardware, which typically require at least a 700MB CD. Puppy achieves its small footprint both through its selection of small, space efficient applications and by compressing its files. Puppy’s automatic compression and expansion of its files is transparent to the user.

Puppy needs from 128MB to 320MB to run fully in memory, depending on the version. Puppy runs on computers with less memory but is slower because then disk access is required. So with only 128MB of memory you get a responsive system when using Puppy.

Flexibility

A good way to try Puppy and see if it meets your needs is simply to download the live CD software, burn it to a CD disc, and then boot it. You can try out the product and it will not change anything on your system. When you burn the live CD software to CD disc, be sure to direct your CD burning software to create an “ISO disk”, “disk image” or “bootable disk”. (Options like “data disk”, “audio disk” or “video disk” will not boot.)

If you decide you like Puppy, you have many options for how to use it going forward. Continue to boot off the CD, and tell Puppy to save your session to a hard disk file. This saves your preferences across sessions. It even saves any new applications you installed during your session. Puppy saves the information in a file it writes to any existing Windows or GNU/Linux partition. (This includes Windows NTFS partitions.)

Alternatively, you can install Puppy to hard disk, USB device, flash drive, zip drive, CD, DVD, CD/RW, or whatever else your machine will boot from. The Puppy Universal Installer makes this process simple.

The option I especially like is called a frugal disk install. To do this you just copy four files from the Puppy Live CD to any existing disk partition. You can copy the files manually or let Puppy do it for you from a menu selection. Puppy’s files consume about 600MB of disk space.

Place these files in any Windows or GNU/Linux hard disk partition. Then you can run Puppy from there. No need to tangle with disk partitioning or risk your previously installed software. For example, on some machines I placed the Puppy files in a Red Hat Linux partition. Then I added a few simple lines to Red Hat’s boot loader file (the Linux GRUB utility) to include Puppy in the list of operating systems I can select from when the PC boots. I didn’t have to repartition the hard drive to set this up, and Puppy boots much faster off the hard drive than it did off the old slow CD drives.

Puppy is as flexible in booting and as generous in co-existence with other operating systems as anything you’ll find.

Should you adopt a Puppy?

Every GNU/Linux distribution presents its own advantages and unique personality. Puppy is superior as a full-featured yet lightweight product. It doesn’t compete with the “large GNU/Linuxes” like Ubuntu, PCLinuxOS or Red Hat, but rather creates its own category of product. Neither is Puppy intended as a “business GNU/Linux” for IT customers who require support contracts, regular product upgrades, and a large development community. Puppy addresses the needs of millions of PC users who want an easy-to-use, reliable system with good online community and support.

Puppy brings new life to old PCs and makes them useful again. And it really flies on newer PCs that ship with bloated Windows systems! Puppy comes in several versions so you can pick the one that meets your needs, or you can download standard Puppy and easily add or delete apps via the PETget package manager. You can even master your own customized version with Puppy Unleashed.

Puppy’s default user interface will make anyone familiar with Windows feel right at home. Anyone can start using the product with minimal training.

Puppy features thorough online documentation, though it sometimes lags behind the fast-moving product. The keys to Puppy’s support are its two forums here and here. Having participated in numerous online communities, I’ve found the Puppy forums exceptional. This community is enthusiastic, knowledgeable, and helpful.

Why not give Puppy a go? You can try it as a live CD without affecting any installed operating systems or their applications. Or install Puppy on that old PC you have in the basement collecting dust. You’ll be amazed at how useful it can become with the right software. Bring this little Puppy home and I guarantee it’ll put a smile on your face.

More

For everything about Puppy Linux, including downloads, visit:

This article was written with Puppy Linux and its tools the OpenOffice.org Writer word processor, the Composer and Bluefish HTML editors, mtPaint for creating the figures, and the Opera, Firefox, and Dillo web browsers—all running on an old Pentium II laptop. My productivity was as good with this setup as it is on my expensive new Windows Vista machine at my office. For more on how to revitalize old PCs by installing Puppy and other small Linuxes, see this article.

Category: 
License: 

Comments

Anon's picture
Submitted by Anon (not verified) on

Holy moly, now that's a review! Excellent job. You only missed mentioning one trick of Puppy's, but it's something that no other OS I know can do: operate from a multisession CD or DVD. That's right, Puppy can boot from a CD or DVD, then save to that same CD or DVD when you shut down (or sooner, on command.) All your changes will be loaded the next time you boot.

I recommend either at least 256 MB of RAM, or a swap partition on a hard disk drive that is accessible to Puppy at boot, for running multisession. I have run Puppy from multisession DVDs for over a year in a computer without a hard disk drive. Multisession Puppy will run from any kind of CD or DVD (+ or -, and RW; I use cheapo DVD+RW disks.) Multisession seems to work more reliably on DVDs than CDs, especially with laptops.

If you want to give multisession a try, use Puppy's Burniso2cd to burn the multisession disk. Most other burning programs can't do it right.

Anonymous visitor's picture
Submitted by Anonymous visitor (not verified) on

Hello Reviewer,
I believe that the "Seamonkey Web Browser" is included as the default browser and not dillo which is also included.

Once you experience Puppy Linux and experiment with what it can do, you'll never go back.

Writing this to you from TEENpup Linux (A version of Puppy Linux for Teenagers)

Puppy's user base just keeps growing.

Anonymous visitor's picture
Submitted by Anonymous visitor (not verified) on

Puppy does come with SeaMonkey already installed. And, I believe Dillo was recently dropped in favor of another ultralight browser.

Scott Thomas's picture
Submitted by Scott Thomas (not verified) on

I ran the live CD on my PIII 550 last night, and the longest it took to load anything (the web browser) was 3 seconds. Other programs like the spreadsheet and word processing programs loaded in less than 2.

My system has 448MB of RAM, and has SimplyMEPIS installed on a 6.4GB hard drive. I ran the live CD, and mounted the hard drive, messed around with music files, and then saved my configuration to the drive - something that is REALLY cool.

I might start using this with SeaMonkey for my day-to-day web surfing as it's much faster than firefox on this PC. I hadn't ever used Puppy, but I've very impressed with it.

The author's picture
Submitted by The author (not verified) on

Thank you to several readers for their comments pointing out that the SeaMonkey browser is now included in recent Puppy releases. And thanks, too, for mentioning the multisesson capabilities of Puppy -- a key feature that, AFAIK, few other Linuxes support.

Howard Fosdick

miscos's picture
Submitted by miscos (not verified) on

I would add another direction to Puppy's versatility. If you are new to Linux and have low-end systems ( may be with high-end systems also), just start from Puppy and you will end in Puppy afterwords. This is a secret, I have found.(re-invented wheel? -I do not know) It has all the flavours in favour of a linux new user and technically challenged like me. Cool..
Mishra

catweasel's picture
Submitted by catweasel on

As an unreconstructed cat-lover, Puppy is definitely my favourite canine.
I recently got it installed on a 9yo Time laptop - 475MHz K6-2 processor, 2.5 GB hdd - you get the picture!
I boosted the SODIMM RAM from 32MB to 96MB and created a 200MB swap partition on the hdd. Then installed Puppy.
Goes like a dream!

Anonymous visitor's picture
Submitted by Anonymous visitor (not verified) on

Anyone involved in rescuing foul-ups with that other ubiquitous system needs this distro in their toolbox. Fast, simple and hasn't let me down yet on reads or writes.

Most forwarded

Interview with Dave Mohyla, of DTIDATA

Dave Mohyla is the president and founder of dtidata.com, a hard drive recovery facility based in Tampa, Florida.

TM: Where are you based? What does your company do?
DTI Data recovery is based in South Pasadena, Florida which is a suburb of Tampa. We have been here for over 10 years. We operate a bio-metrically secured class 100 clean room where we perform hard drive recovery on all types of hard disks, from laptop hard drives to multi drive RAID systems.

Anybody up to writing good directory software?

Since the very beginning, directories (of any kind) have had a very central role in the internet. (I have recently grown fond of Free Web Directory. Even Slashdot can be considered a directory: a collection of great news and invaluable user-generated comments. As far as software is concerned, doing a quick search on Google about software directories will return the free (as in freedom) software directories like Savannah, SourceForge, Freshmeat and so on, followed by shareware and freeware sites such as FileBuzz, PCWin Download Center and All Freeware (great if you're looking for shareware and freeware, but definitely less comprehensive than their free-as-in-freedom counterparts).

Interview with Mark Shuttleworth

Mark Shuttleworth is the founder of Thawte, the first Certification Authority to sell public SSL certificates. After selling Thawte to Verisign, Mark moved on to training as an astronaut in Russia and visiting space. Once he got back he founded Ubuntu, the leading GNU/Linux distribution. He agreed on releasing a quick interview to Free Software Magazine.

Is better education the key to finding better software?

I read David Jonathon's article Anybody Up To Writing Good Directory Software? the other day, which got me thinking about software directories in general. As David mentioned, many of the software directories one finds when doing a quick google search are free as in beer, not as in freedom. But what interests me is the software directories that already exist, providing a combination of both free as in beer software, and open source software. Sites such as Freeware Downloads and Shareware Download don't advertise themselves as providing free as in liberty software, but each of them have a good selection of open source software available... if you know where to look.

Most emailed

Free Open Document label templates

If you’ve ever spent hours at work doing mailings, cursed your printer for printing outside the lines on your labels, or moaned “There has got to be a better way to do this,” here’s the solution you’ve been looking for. Working smarter, not harder! Worldlabel.com, a manufacture of labels offers Open Office / Libre Office labels templates for downloading in ODF format which will save you time, effort, and (if you want) make really cool-looking labels

Creating a user-centric site in Drupal

A little while ago, while talking in the #drupal mailing list, I showed my latest creation to one of the core developers there. His reaction was "Wow, I am always surprised what people use Drupal for". His surprise is somehow justified: I did create a site for a bunch of entertainers in Perth, a company set to use Drupal to take over the world with Entertainers.Biz.

Update: since writing this article, I have updated the system so that the whole booking process happens online. I will update the article accordingly!

So, why, why do people and companies develop free software?

More and more people are discovering free software. Many people only do so after weeks, or even months, of using it. I wonder, for example, how many Firefox users actually know how free Firefox really is—many of them realise that you can get it for free, but find it hard to believe that anybody can modify it and even redistribute it legally.

When the discovery is made, the first instinct is to ask: why do they do it? Programming is hard work. Even though most (if not all) programmers are driven by their higher-than-normal IQs and their amazing passion for solving problems, it’s still hard to understand why so many of them would donate so much of their time to creating something that they can’t really show off to anybody but their colleagues or geek friends.

Sure, anybody can buy laptops, and just program. No need to get a full-on lab or spend thousands of dollars in equipment. But... is that the full story?

Fun articles

Santa Claus - the most successful open source project

It dawned on me the other day, as I was shopping for the dozens of gifts it seems I have to buy every December, that Santa Claus is the most successful open source project in history. (Bridget @ Illiterarty would agree with that). Santa Claus is essentially a marketing development that is embodied by everyone who stuffs a sock, gives a gift, hosts a dinner or wishes Merry Christmas over the holiday season.

Most emailed

Editorial

When I first started thinking about Free Software Magazine, I was feeling enthusiastic about the dream. I had Dave, Gianluca, and Alan willing to help me, I had established members of the free software community willing to help me out, I had writers volunteering their time and energy for free, and I had a generous offer from OpenHosting for servers, all before I'd proved myself. There was a sense of excitement in the air, and I thought maybe, just maybe, I could make this work.

Free Software Magazine uses Apollo project management software and CRM for its everyday activities!