A distribution of Linux that I have heard about for many, many years, considered trying but have not ever given a spin has been Puppy Linux. It is known for being small and low resource intensive distribution. I have played with some other low resource distributions but this one might be the smallest resource usage of them all.
This is my biased review as an openSUSE user of Puppy Linux. I have been running it for a few days in VM and also on 32 Bit hardware. I am a fan of old hardware so anything that keeps my old hardware going and going usefully is fantastic.
Bottom Line up front, Puppy Linux is great for specific use cases like old hardware and a great way to set up a live USB environment for troubleshooting hardware or a network. It isn’t for me for full time usage on my main machine but this most certainly is not just “yesterday’s Linux.”
If you want to know more, keep reading but it’s kind of long, otherwise, this is a good time to bail or jump down to my likes and dislikes.
The installation of Puppy Linux isn’t quite as straight forward as the mainline distributions out there. That is, it takes several more steps It’s not bad but you sort of have to know what you are doing to get this set up. I decided to install BionicPup from here.
It boots into a live environment with a nice welcome and some initial settings configurations. I think that this is particularly fantastic. My understanding is, Puppy has been greeting you like this, before it was the thing to do.
I included the screenshot of the desktop, not because I want to show you how cluttered it is or that it looks dated but to show the coolest looking dog I have ever seen. I’d get a dog like this… maybe… I mean, assuming it doesn’t become my robotic overlord.
When you select to install it, as I am doing here after dinking around a while with it, you are given two basic options: Universal Installer, which is a typical installation you would have to the internal storage or a Boot flash USB Installer. For this testing and my initial purpose, I selected the Universal Installer as my ultimate intended target is an old Dell Inspiron 5100. Before I committed to install, I wanted to look at the Install Applications tab and take note on that for later. The Puppy Package Manger is the place to go to install your software.
After selecting Universal Installer you are presented with four options: USB Flash Drive, USB Hard Drive, Internal Hard Drive, Internal Flash Drive. I am curious about some of the other options, as in what they are doing different but for my purpose, I chose the internal hard drive.
After selecting the drive type to which I am installing, I was presented the need to set up the drives using Gparted. I am glad for how verbose the instructions were, but what they didn’t give me was a clear description of what was expected.
I made a boot partition but it was completely unnecessary. For future note, don’t do that again. It should also be noted, if you have an EFI only system, you will need to keep it on the USB stick. Puppy Linux does not support EFI only systems at this time.
When you have set up your drives, you will be dumped back to where you were before starting Gparted. In this case, you can just select the partition in the upper-right pane that you intend on installing the operating system.
You will be given a confirmation of the partition and a choice if you want to do a frugal or full installation of Puppy Linux. I went for Frugal on the VM and Full installation on the actual hardware. I figure, I have a whopping 60 GiB of storage, I am going to use it!
There is some extra information about choosing the Frugal installation. In a nutshell, you can save your session to a place of your choosing.
Next you have the option to install Grub4dos. Keep in mind, this will not work with EFI, from my understanding. If I am wrong about this please contact me.
I am a bit confused by this and why it insists on a “Windows” entry is recommended. Grub4dos will be installed on the Master Boot Record (MBR). Next you will have the option to review and make modifications to GRUB. This is outside of my area of knowledge so I left this as it was. I can see this being a very useful tool and I like the way it exposes the ability to make these modifications so easily.
I wanted to reboot out of the live environment into the installed environment. This was the longest logout / reboot process I have ever experienced. Also, the logout is very early 2000s in the feeling of it. Not a knock, just an observation. I don’t dislike it, at all. I find it charming.
The first time you shut down, you are given the option to save or not. I selected save. I did try the finn and that froze my system up as such I could not unfreeze it, so I recommend you use the administrator, just as it is recommended by this warning.
You will be asked for an administrator password. If you have saved Puppy Linux to a multi-session CD, you can actually save the settings there. I think that is pretty darn interesting. I just saved it to the hard drive by pressing Continue.
Next, I selected the partition which the installation lives and chose not to encrypt my data. I don’t see utility in encrypting my data when using Puppy Linux at this time.
I chose the recommended option of saving in a folder. I didn’t understand the other option, actually. So… going with what I understand is probably the best way to go.
After you are given a final sanity check.
Lastly, I changed the Swap file size to 512 MiB because, why not. 64 MiB just doesn’t seem like enough.
The installation process is a bit more lengthy than other distributions but not difficult. The ONLY portion of it that I didn’t care for was the process of partitioning. Gparted is a fantastic application but I didn’t really understand what “right” looked like for Puppy. After playing in the VM I installed Puppy on the 32-bit hardware, and based on what I learned I only made one partition and I did NOT use the finn.
Upon restarting, Puppy Linux seemed to have started as expected. Grub4dos looks very DOS 6.22 but that is not a problem at all. I rather like the look and I know I stand alone on that.
Upon initial boot, you get the same set of setup options as you did in the live environment.
Because this article is way too long, I am going to gloss over the rest of my initial playing around of Puppy Linux. Suffice to say, it is very usable, lots of software available and I can Telegram from it so, that’s pretty great.
I do like the Puppy Package Installer and since it didn’t have Apt installed, I was happily forced to use this system. Not bad at all.
Even on 16 year old 32 bit hardware with VERY little memory, it works fantastically well. I did have some trouble with Gcompris, as in, it wouldn’t start at all, so I am going to investigate that to see if I can figure out why. Outside of that, this is a very, capable platform to keep that dreadfully old hardware going.
What I Like
Number one positive for Puppy Linux is it has very clearly written instructions for going through the installation process. The process does not feel polished but it does feel very usable, very utility and very complete. For me, the polish is less important, especially considering the hardware I am putting it on.
Puppy Linux comes with a desktop environment that has system tray, so it’s immediately better than Gnome out of the box.
Everything is very snappy. I’d say it gives any modern system a run for its money just on the snappy factor. Of course, there is a huge gap in performance but the applications you are you doing with this computer are not going to be the same for most other computers.
A welcome bonus to using Puppy was the “easy button” of software installation. A very sensible, straight forward package management system that is easy to navigate and install. It is nicely verbose and gives you a great summary upon completing the installation tasks.
I appreciate the spattering of widgets along the bottom of the screen to tell you what the system is doing. I don’t know how much I need to see my disk space, nice to know it and some of those could be hidden vis-à-vis the KDE Plasma status and notifications fly out. It would make it less busy along the bottom but I still like it overall. Far better than
What I Don’t Like
I am just not a fan of single-slick by default, old habits die hard and I frankly don’t see the value in changing the way I interact with my desktop. I’ve tried single-click from time to time and it just doesn’t work for me.
It does look dated, not horribly, but it has that dated “toy” look. I don’t dislike it, it is just not my preference. I am spoiled with KDE Plasma so it’s hard to really push that off of it’s pedestal.
There is no automatic partitioning by the installer. Not a big deal but some suggested expected partition schemes would be helpful. Since it didn’t explain what Puppy Linux wants by default. I created a boot partition unnecessarily
When going with full or frugal installation, it recommends full for a “strong CPU” but “strong” is not defined. So, I am just guessing due to lack of reference.
BionicPup, perhaps the coolest name for a release of any bit of software I have used. This is my first exposure to Puppy Linux and I am very happy with it. I think it is a very satisfying distribution to use, especially on old hardware.
Setting up Puppy Linux is actually quite trivial if you have the patience to read and have somewhat of a technical background. I think that even someone with basic computer knowledge could do it, if they were motivated.
When you log in, the sound effect used is a bark. Not a puppy bark but an adult dog bark. I like the bark but wouldn’t a puppy barking be more appropriate? You know, something yippy?
In the end, would I switch my primary machine to be Puppy Linux? Not a chance but I do have some very specific use cases for this finely crafted, highly utility operating system. I would very much like to use this as a stand alone USB based desktop for troubleshooting and hardware testing, I am also going to run this on my dated Dell Inspiron, for the time being. There is a very complete software selection available.
There is a section, below the available downloads that states: “A Puppylinux distribution can also be built and assembled using packages and components from another Linux distribution called in Puppy the “binary compatible” distribution. The choice of a binary compatible distribution determines the availability of additional packages, among other things.
It made me think, Puppy Linux with an openSUSE base would be pretty fantastic. Having the package management tools of Zypper and configuration capabilities of YaST would make that a Prime Puppy Linux flavor.
I highly recommend giving Puppy a walk around the block. It’s a great experience and maybe even a right of Linux-passage.