Puppy Linux 2.15CE has a few new tricks
Given how similar Puppy 2.14 was to 2.13, I was wholly unprepared for how different the latest Puppy release, 2.15CE (community edition), is from its predecessors.
First of all, it looks completely different. That's because IceWM is the default window manager for Puppy 2.15, although the old standby JWM (Joe's Window Manager) is still available. And aside from the radical change in GUI, the desktop background is darker (and less "puppy" themed) than in distros past. Still, the Menu key on the bottom left does have a paw print.
Under Settings-Themes in the main Puppy menu (accessible, as always, by right-clicking anywhere on the screen), you can alter the look of your desktop very easily.
Under IceWM, Puppy remains lightning-fast -- it sure was on my Dell 3 GHz Optiplex GX520 with 512 MB RAM.
All my configuration information from the previous Puppy version was picked up from my pup_save.2fs file when I booted 2.15 for the first time, so my networking, screen resolution and printing were already set up.
When I brought up a Web page, the fonts in the SeaMonkey browser looked "funny," or at least different. The change was due to SeaMonkey being configured to use a serif font instead of the usual sans-serif. Pages looked strange to me, but everything is displaying normally enough. It's nothing that can't be fixed, though, because it's easy to change to sans-serif under the SeaMonkey Edit menu (go to Preferences, then Appearance, then Fonts, then pick sans-serif for whatever seems appropriate. I did just that, and everything then looked like it was "supposed to."
Despite the SeaMonkey change, other apps in the new Puppy, like AbiWord, look terrific with the new window manager. The fonts appear crisper, and as I said, it's just as quick in IceWM as in JWM.
But here's the big "secret" in Puppy 2.15: Restart with JWM (from the Shutdown manager) and you are back in the old Puppy window manager -- and when you do, it looks like you have about TWICE AS MANY APPS in the menus. Open Office, yep. Scribus, yes; the Gimp, Blender ... but none of these apps actually run until you download the proper packages (I haven't gotten to that yet). I assume that they will be accessible from both window managers at that point. (Note: these apps are characteristic of the GrafPup package.)
The Puppy Software Installer (a new utility) is where these packages seem to be, and it looks easy to use. The PETget package manager is still there, and it appears to duplicate the work of the PSI, albeit with fewer apps. I think the PETget packages are more "official," while the PSI contains the old "dotpup" applications. I've heard about apps availabe as .SFS "squash files," especially the ones that crop up in the JWM menus so that's something else I'll have to look into.
When you first load the SeaMonkey Web browser, it tells you all about 2.15CE's downloadable Expansion Packs -- just click on what you want (from Open Office to the GIMP, Opera, Audacity, even KDE, and follow the instructions (or at least that's what I'm led to believe).
Also new -- and on the Seamonkey home page -- are "online applications" -- things you can do via the browser for word processing, presentation, spreadsheets, image editing, office suite, chess and more. I plan to check these out, sinc I have a great insterest in apps delivered over the Web.
There is also 3DCC (under System) to "install drm-modules to enable accelleration for your kernel," Open GL for 3d apps, and the Nvidia drivers for those who have monitors that require them.
The many configuration Wizards under the Setup menu are one of the best parts of Puppy. They make setting up a system easier than any other Linux distribution I've tried. A new Wizard -- the Defaults Wizard -- enables you to see the "default" program that will run for 15 separate tasks, from Web browsing to word processing, drawing, spreadsheet, contacts and more. And it makes it easy to change those apps. For instance, if you want your "write" icon on the desktop to load AbiWord, that's the default, but if you have installed Ted or even Open Office Write, you can make those the go-to app when you click that "write" icon. A great tool.
For some reason, the "free ram" counter did not show up in JWM, as it does in previous Puppies. But it's there in the default IceWM desktop environment.
Another new thing in Puppy 2.15: When you're in ROX-Filer, photo-file icons now feature minature images (like in Windows XP) -- a very welcome addition.
The Shutdown menu from 2.13/2.14 is missing in the IceWM version of Puppy 2.15. In the new GUI, i can quit X from the menu (or ctrl-alt-backspace from the keyboard), go down to a shell prompt and then poweroff or reboot (text instructions are on the screen), but I miss the elegance of directly rebooting and shutting down from the GUI. I know itn's not Unix-geeky enolug, but I like the way it worked before.
Luckily when running JWM, the old Shutdown menu is right there. It all boils down to what you're used to -- and I'm the kind of peroson who doesn't like to change things unless there's a good reason ... call me conservative, but hey, I'm running Linux, not Windows 2000 or XP, so I've got a little daredevil in me, right?
Curiously -- at the prompt, xwin or startx will start IceWM. Some systems will only start a window manager with startx, and it's nice to see Puppy allow for both commands.
Flash video still works great -- Puppy being one of the select distros to provide Macromedia Flash right out of the box. Sure, it's not open source, but Macromedia Flash has pretty much crushed Java and all the other streaming-video technologies in its YouTube-propelled wake. At least it's better than Windows Media, right? (YES, right.)
At one point, I tried the "Change window manager" command in the menu, but instead of going from JWM to IceWM, I got a blank screen. Ctrl-alt-backspace wouldn't kill X at this point, but ctrl-alt-del did shut it down. I didn't do a whole lot of "change window manager" type stuff in 2.13 and 2.14, being a big JWM fan, so this could've been a problem in previous Puppies -- I'll have to look into it further.
Another thing that seemed to change in Puppy 2.15CE is the location of my SATA hard drive in the directory tree. In previous versions, it used to be under /mnt, but in 2.15 it is under /initrd/mnt and is called dev_save instead of sda1. It also was auto-mounted -- something that didn't happen in previous Puppies, in which you have to mount drives you're not booting from. It's an interesting change. Some people don't like drives to be auto-mounted, but I'm on the fence with this one. Still, Puppy's Mounting Utility Tool (a.k.a. MUT) remains easy to use if you want to check and change the status of other drives in your system.
And despite the different look, all the apps I've grown accustomed to using in Puppy are there: the AbiWord word processor, the Geany text editor, the SeaMonkey browser/e-mail/html editor suite, the light Dillo browser, the Gaim instant-messaging program, the ROX-Filer and the mtPaint image editor.
My overall impression of Puppy 2.15CE is a good one. But I wish all the packages I see on the JWM menus were included on the CD, along with clear instructions on how to either install or enable them. And from a quick perusal, it appears that adding the packages while using Puppy 2.15 as a live CD is one thing, but adding them to a hard-disk install is another. If it hasn't been worked out already, I expect it will at some time soon. In Puppy, problems tend to get solved quickly, and the online community at the Puppy Forums is second to none in its ability to help users.
Still, I'm not prepared to give up Puppy 2.14, which I've been running for 22 days straight now on the Thin Puppy (a Maxspeed Maxterm 1 GHz thin client with 256 MB RAM and, since it died, no Compact Flash storage, nor a hard drive or CD drive). I'm used to it. And that's the beauty of Puppy and other distros that are designed primarily to be used as live CDs. You can have a stack of them, with the option of booting any version that works for you -- for your hardware and the work you're trying to do.
The Puppy developers have been issuing new versions at a very quick pace. Looking at Distrowatch, between Sept. 14, 2006 (Puppy 2.10) and April 6, 2007 (Puppy 2.15), there have been six Puppy releases in under eight months -- quite a pace.
One of the neatest features of Puppy is the pup_save.2fs file. When you are running from the live CD, you have the option of creating such a file when you shut down the system. I think it's limited to 512 MB in size, but contained in that file are your downloaded applications and files. And when running from CD, you can keep the pup_save.2fs file on a USB flash drive. Or it can live on your system's main hard drive, even if you're not using that drive as a boot device. As for me, I like to keep a separate pup_save file on each box I run Puppy on. That way I have the settings unique to that computing environment saved.
As far as files go, I prefer to keep them on a USB flash drive so I can take them wherever I need them -- and since Puppy plays well with both NTFS and FAT file systems, I generally format the drives as FAT so they can be read on a Windows system (and so I can work in any environment). The other advantage of keeping files on an external drive is that Puppy's own file system, after booting, is contained entirely in RAM. That's great for speed, but when you download anything large (like giant audio or video files), it all eats away at your free RAM and can really affect the system. But if you store your files on any other drive, be it flash or traditional hard disk, your memory stays fairly intact (except for things such as browser cache) and the whole computing experience under Puppy goes much better.
And if you do run Puppy with a traditional hard-drive install, it's probably a good idea to either partition your drive and save your files on the partition, or use an external flash drive to keep those files portable. That's because even when booting from hard disk, Puppy still keeps its file system in RAM. Again, it's fast, but you run the risk of losing some of your work if you put the available RAM under too much stress. It's not as much of a problem on machines with 512 MB or even 1 GB of RAM, but with 256 MB it's essential, with 128 MB mandatory.
That said, if you've got some free memory left, saving standard text and image files (which is what I do generally) doesn't even dent the free memory, and it's OK to keep those in the RAM-based file system -- Puppy even has a "My Documents" folder to make Windows types feel better. It's probably a good idea, since in Puppy you're always logged on as root, and there are no "user" files characteristic of a "normal" Linux system. There's a bit of a debate about this on the Puppy forums, but those who program the system generally have a reason for it, and if I knew more about it, I'd delve further. As it is, I'm content to use the system as is.
And while many people do install Puppy to their hard drives, the majority probably run it from live CD with a pup_save file on the hard drive or an external USB flash drive. That's probably the best-case use of Puppy. Your file system is easily backed up (just copy the pup_save.2fs file to another drive). And one of the benefits of Puppy running its file system in RAM is that writes to your flash media are kept to an absolute minimum, extending the life of your flash memory indefinitely.
But remember, if you want to download a 600 MB ISO file, you're gonna have to put it on another drive or partition, or you'll soon be in memory trouble. As long as you keep this in mind, Puppy is ultra-stable and is just so plain usable and fun, it remains my go-to distro.




What a great review of the best lightweight, yet ultra adaptable linux distro's there is. Yes, DSL is great too, but is does not have the obvious tailorization and user-friendliness that Puppy has. Also, to anyone who even just tries this distro out for more than a few minutes, its fairly obvious how much "love" was put into it by the devs, because it really does have all those special touches that truly take it over the top. I do like DSL, but I love Puppy!
"I think it's limited to 512 MB in size" -> this is not true. You can dynamically request an increase of the size of the pup_save.sfs in the graphical interface and the change to pup_save.sfs will be applied during the next boot of Puppy.
Ciao,
Ulysses
The pup_save.2fs can be as big as you want, but initially the max is 1.25GB. This can be raised by an option in the menu from 64MB to 512MB at a time.
I didn't know you could increase the size of your pup_save file (more specifically pup_save.2fs). I'll have to look into it further.
Your sata drive location will change because puppy automounted your old save file! If you booted with 'puppy pfix=ram' everything should have been as before. Great review :)
Puppy is good but still has problems. I downloaded and installed into the root folder all of the sfs addon packs. But only some of them showed up in the menu - and Open Office not at all. After that I started looking at other distros again for usability.
I'm a bit more comfortable with PET packages and dotpups than I am with the .sfs packages. I think that after downloading them, you've got to do something to get them to show up in the menus. What that something is, I don't know at this point. But Puppy is extremely usable even with no add-on packages. For me, configuration with Puppy went better than it did with all the other distros I've tried, and that continues to be a prime reason I've continued to use it. If the .sfs files aren't working for you, try to get Open Office as a PET package -- that just might work for you. Or better yet, go to the Puppy forums and see what other people's experience is with the .sfs files -- you just might be able to solve your problem with their help.
Just a couple clarifications about how Puppy works. For starters, the contents of the pup_save.2fs file do NOT load into ram, so feel free to put stuff in it. Personally, I like the idea of keeping stuff outside it anyways, since I do a lot of experimental stuff and it's easier than having to go back and extract data from a save_file I broke (though that isn't hard, just mount it from the commandline with the -o loop options).
The files that do get loaded into ram are pup_xxx.sfs and initrd.gz (and of course vmlinuz, the kernel). Out of them, pup_xxx.sfs is the one with the final filesystem, the original one that comes with Puppy. Any changes you make get stored in the pup_save.2fs file, which isn't in ram.
One semi-exception is if you have the pup_save.2fs file on a USB stick. In that case, Puppy attempts to greatly extend the life of the drive by only writing to it every thirty minutes and on reboot. So any changes you make in a session would be stored in ram, but after rebooting they'd be in the pup_save.2fs file, and ram would be refreshed. Unfortunately, there's a bug so that the ram can't be cleared during the 30-minute save-cycles. The data is still written, it just isn't cleared from ram until a reboot.
With regard to the mount point changing, it's actually been like this since Puppy 2.02, and probably since 2.00. The partition you have the pup_save.2fs file on gets mounted at /initrd/mnt/dev_save, and then is symlinked to /mnt/home to maintain compatibility with older Puppies. The /initrd location has to do with how Puppy 2.xx boots. Initially, the contents of /initrd are /, but then Puppy pivot_root's into /initrd/pup_ro2 (I think), which is where pup_xxx.sfs is mounted, and then it uses UnionFS to combine with some of the other things mounted like sfs files or the pup_save.2fs file.
To use an sfs file in a LiveCD, USB, or Frugal install, you put the sfs file in the same location as your pup_save.2fs file (/mnt/home), and reboot. That's enough to install it, but it won't enable the menus. To do that, you have to open a terminal and run the command 'fixmenus' (without quotes) and restart the windowmanager.
Finally, there is a shutdown option in the IceWM menu. At the bottom, there is a submenu titled "Logout". If you click it, it just kills X. But if you go into the submenu, it offers "restart IceWM", "reboot", and "shutdown", which all work. There are a couple other entries that may or may not work. Someday I'll probably patch the source to make that menu a little more descriptive, at least in Pizzapup. Whether the standard Puppy will continue using IceWM I don't know. If it does, I'll offer the patched package.
Neither is it correct that Puppy loads files into ram when you install to hard drive, except if you do a "frugal" install, which runs pretty much the same as when booting from the cd. But a full hard drive install runs just like any conventional Linux installation.
Other than a few bits this was a really great review, and I think the innacuracies were more than likely just honest mistakes. Frankly a lot of people use Puppy every day and still don't understand it's inner workings.
Do you mean that when you do a conventional hard drive install, new files that you create and save are stored on the hard drive and not in free RAM? Even when I had a somewhat conventional hard drive installation (using a 1 GB Compact Flash card acting as an IDE drive) I don't recall it working that way, although I could be wrong.
I just did a hard drive install of Damn Small Linux 3.3 on this same thin client, and I had to create root and user passwords, so I imagine that there are user directories in which I can store files, and that as root I can create any number of accounts. And if I recall, the hard drive install of DSL is pretty much a Debian system. At any rate, with only about an hour on DSL 3.3, I don't want to make any pronouncements, but Puppy 2.14 seems to run a bit faster and smoother.
The only time your files are actually stored in RAM is when you either have no pup_save.2fs file, or when you have the pup_save.2fs file on FLASH media. Even with FLASH, they're only held in RAM until you reboot, then they stay on the drive (until you edit them). When you next boot up, Puppy loads itself into RAM, but not any files you installed in the pup_save.2fs file.
If you run Puppy with your pup_save.2fs file on anything that isn't FLASH media, your data never gets stored in RAM, just the core files that come with Puppy. Well, except for when running a Multisession Puppy, which behaves similarly to using FLASH based systems, except for no periodic saving and the reboot save is optional. (Note: DVD's work better for Multisession, as CD's have a 99 track limit, among other things).
So yes, if you use a conventional HD install, the files would go straight to the drive, but the same thing would happen with any method except with FLASH media, which keeps them in ram at first to minimize disk-writes.
Another thing to be careful with is the freemem applet. It doesn't always show RAM. It does when you first boot and are running completely in ram (no pup_save.2fs file), but once you set up a pup_save.2fs file it should start showing the free space inside it instead. It might behave differently when you use FLASH though, I'm not sure.
A good read to learn more about Puppy is here:
http://www.puppyos.com/development/howpuppyworks.html
That might do a better job of explaining than I do. I'd especially read the part about FLASH media, (PUPMODE 13).
I was reading through your blog last night, especially the parts about your efforts on Thin Puppy. Part of the problem could be that Puppy got confused, and thought you were using a conventional drive, due to the IDE interface. I'm pretty sure Puppy doesn't create swap automatically, so I doubt that's what killed the card. So it could be that Puppy thought it was a conventional harddrive, thus the increased amount of RAM you had and potentially the reason the drive died.
But I'm just guessing here. I haven't used it on less than 256MB of ram, and I only booted from FLASH twice. I generally run a Frugal HD install. It boots much faster than LiveCD (27 seconds last I checked, for a heavily tweaked system). Once booted, it runs nearly the same, with the base OS completely in RAM.
You can still speed up your boot times by copying the pup_xxx.sfs file to the harddrive. Put it in the same location as pup_save.2fs. That way Puppy can load it from HD rather than the CD, but it still doesn't need any bootloaders installed or anything. It would probably cut a boot from 2 minutes to about 40 seconds, maybe more or less. I haven't done it in a while.
One thing you might want to look into for using "low" ram (in the 128 MB and under range) is mini-Puppies. We usually call them "Barebones". There's quite a few, all with differing amounts of software. The smallest is CLI only, but Puplite and BarelyPup are both around the 40MB range, I think. John Murga, the administrator of our forums, occasionally makes a "Mean Puppy" that weighs in about 50MB, and is usually pretty well featured and often smoother than the standard Puppy.
Thanks for the detailed comment. I think my CF flash drive was killed by static or something -- not excessive writes. I'm going to try another flash drive eventually, but now I've got a conventional hard drive hooked up.
The way I set up Puppy 2.14 with the CF drive was to choose "Install to CF flash for use as IDE," meaning I had the CF in a card reader on a separate computer and did the install that way -- it's one of the great features of the Puppy Universal Installer (and yet another feature that Puppy does better than anybody I've seen). So I think the system was treating the CF as a flash drive and keeping more things in RAM, even though it was connecting through the IDE interface. In any case, my Thin Puppy experience only got off the ground when I bumped up to 256 MB of RAM. I'm going to try to do a conventional hard drive install of Puppy soon. I tried about 10 distros yesterday, and no one of them would install all the way (could have something to do with the CD drive and the hard drive being on the one and only IDE header on the motherboard). So far I've gotten DSL 3.3 to install (once -- I tried again on another HD and it wouldn't boot). I will try again with Puppy -- aiming to dual-boot with Puppy and DSL.
Anon wrote: "Puppy is good but still has problems. I downloaded and installed into the root folder all of the sfs addon packs. But only some of them showed up in the menu - and Open Office not at all. After that I started looking at other distros again for usability."
You may not have been aware that there is a limit of 5 sfs files that can be unioned with Puppy - 2 of those are already taken by pup_215.sfs and zdrv_215.sfs, the main OS and drivers packs respectively. Only the first 3 of the extra sfs packs you installed in / will be recognised.
That limitation can be overcome by packing the contents of several sfs files into 1 file.
Hope that helps
The kernel will be updated in the upcoming 2.17 release great things are expected as always
Also check out the contribution of the above poster WhoDo it is called EZpup and makes any puppy from 2.12 up look as good or better than the 2.15 ce version only a 15mb download you get
vista-like themes (via icewm)
cursor theming
enhaced icon set and more...
I'm a person of habit and familiarity, and I'm pretty much using Puppy 2.14 right now. I like the JWM window manager (and I wish the default Fluxbox in Puppy was configured more "Fluxboxey") and I didn't really see anything in the IceWM window manager that would prompt me to change.
I do have Puppy 2.16.1, but Gparted isn't working, so I've fallen back on 2.14. Also, I'm running Puppy with 64 MB RAM, so I'm doing a "traditional" hard drive install -- I'd prefer a frugal install, but I just don't have enough RAM. I don't know what's being added to 2.17 -- I'll have to take a look.
2.16 did have a different way of keeping the filesystem in RAM (I don't quite know what it's all about, but I'll take their word for it).
Some of the things I'd like to see in 2.17 are: Gparted fixed, XMMS (I much prefer it to Gxine), Vim and Nano text editors, Xterm (in addition to Rxvt), fix the "change window manager" menu item (it doesn't work), and possible an ISO with all the SFS add-ons and Pup/Pet packages included.
Other things I'd like: a full command-line e-mail solution (fetchmail/mutt/procmail/msmtp or sendmail), Sylpheed (I know it's a PET package, but it's so much faster than SeaMonkey), and is there a Web server package included? I'd like to see that (as well as some additional security. I'd like to further experiment with the encrypted pup_save file as well.
Puppy 2.16 update: I am working on a full 2.16 review, and so far I've found out that Gparted does work, but it takes a full 15 minutes on my system for the partitions to be detected. It takes less than a minute on older Puppies. And I've installed the SFS of Open Office 2.2, and I'm very impressed with how its running and how it has been put together for Puppy -- way to go, guys!