Redesigned from the roots
After I released Puppy 4.1.2, I "kind of" retired and WhoDo (Warren) took over
coordinating 4.2.0 and 4.2.1. WhoDo did a superb job, but he then decided
he had enough, so I have stepped back in to coordinate 4.3. There are
various reasons why I have taken on this role again, one of them that I
have developed a whole new system for building puppies, that I name Woof. This replaces the Unleashed build system. I also designed a new package management system, called the Puppy Package Manager, or just PPM,
needed to cope with Woof's ability to build a Puppy from the packages
from any distro (Debian, Ubuntu, Arch, Slackware, T2, etc.).
Yes, the Woof build system can build a Puppy from the binary packages
from any distro, but in the case of Puppy 4.3 Woof has been used to
build "Puppy from Puppy". That is, this is a continuation of the Puppy
4.x series, using the PET packages. To get your mind around this, I
highly recommend that you read my introductory web pages on Woof and
Woof introduction: http://puppylinux.com/woof/index.html
PPM introduction: http://puppylinux.com/woof/ppm.htm
Blog/forum references: 1 2 3 4 5 6 7 8
Highlights of 4.3
These highlights are in no particular order, nor are they a complete
list of what has happened since Puppy 4.2.1. There is just too much.
Lots of guys have helped, and I haven't acknowledged everyone. But I
have provided lots of links.
Latest kernel. I
have built 4.3 with the 22.214.171.124 kernel, configured for SMP (multiprocessor) systems (but
also works fine on uniprocessor systems) This kernel supports the
ext4 filesystem and is patched for Aufs2. Thanks to tempestuous for help with upgrading the firmware. 1
- Internet by dialup.
Unlike many other distros, Puppy has not forgotten those who access the
Internet by analog modem dialup. The kernel has drivers for many
modems, including Agere, ESS, Lucent, Conexant, Smartlink, Pctel and Intel
chipsets. Rerwin has done an incredible job here, and in most cases we
have automatic detection and configuration. Rerwin has also done a lot of work on dialup via 3G devices. 1 2 3 4 5 6 7
- Pstreamvid. This is a great GUI for playing streaming video, that is, Internet TV. Created by trio. 1 2 3
- CPU Scaling Ondemand. A convenient little app created by trio, for those who find their CPU runs too hot. 1 2
- JWM Theme Maker. A convenient little app created by trio, to create a theme for the JWM window manager. 1 2
- Psync. Created by tasmod, synchronises the clock to an Internet time server. 1 2
- Mscw. Kirk created this interesting little GUI to change sound cards. 1 2
- pCD. Zigbert has
created many applications for Puppy. Many of them, including Pburn,
Pfind and Pbackup, are upgraded. pCD is a new little app for playing
audio CDs. 1 2
- QUISP. Puppy has
not yet settled on any particular database development system. QUISP
was in Puppy 2.x series, and I have decided to bring it back. The
attraction is that it is extremely small yet very powerful. QUISP is a
CGI web-browser frontend that can be used for providing anything in a
web page, including but not limited to support for the SHSQL backend. I
have put a tutorial into 4.3, plus the 'devx' file has the full
documentation and further tutorials. Basically, QUISP is back for us to
play with and evaluate, to be considered as a possible permanent
resident. 1 2 3 4
- SQLiteManager. This
is a frontend for SQLite and is an addon for SeaMonkey (but does run as
a standalone application). Like QUISP, I have put it in for evaluation.
Note that there is also SQLiteDBMS which is not included but is
available as a PET package. 1
- Hiawatha. This web server is being used in Puppy to serve CUPS, PPLOG and QUISP pages. Hiawatha is very small and extremely secure. 1 2 3
- Linux-dvb-apps. I have put this package in by request from the guys who are into DVB. It provides needed infrastructure. 1
- Screenshot utility.
Puppy has a screenshot utility based on mtPaint, but with a very basic
GUI. Trio has overhauled the GUI, added more features and made it look
nice. 1 2
- Pmirrorget, Pwsget.
Forum member Gposil has created these great little GUI apps. Pmirrorget
is for downloading a complete website, Pwsget adds username/password to
our frontend for wget (originally created by Lobster). 1 2
This is a very nice audio file and CD player. We do of course have other
applications that play audio files and CDs, including pCD, Gxine and
mhWaveEdit, plus commandline utilities, so there is a plethora of
choice here! 1 2 3
- Crop background for widescreen.
I have modified the code that places a background image on the desktop
such that it will crop an image to prevent it being distorted on a
widescreen monitor. 1 2
- NicoEdit. This is a
great little text editor written by Nicolas in Genie. This uses
Gtksourceview for syntax highlighting and also has highlighting for
Vala and Genie code. I have also retained the Geany text editor from
before, although NicoEdit is one tenth of the size -- please test
NicoEdit, report back -- I will probably promote NicoEdit to replace
Geany in the next release of Puppy! 1 2 3 4
- Pictureviewer, EmbeddedBookmarks, PuppyBrowser.
These are fantastic applications written by MU in Genie. PuppyBrowser is a complete web browser based on the
'gtkmozembed' library in SeaMonkey. Puppy uses PuppyBrowser as the
local HTML help-page viewer, and for viewing CUPS, PPLOG and QUISP
pages. 1 2 3 4 5
- Viewnior. We have a new default image viewer. Viewnior is simple, small and also supports slideshows.
- Gtkhash. A nice little GUI for generating hashes. Forum member ttuuxxx has packaged it up very nicely for Puppy, with Rox integration. 1
- Ext4 support. Puppy
4.3 built with the 126.96.36.199 kernel has full support for ext4. I have
upgraded GParted, e2fsprogs, disktype, GRUB and guess_fstype. The
latter is a utility created by Jesse, one of our hardware interfacing
- Xdelta GUI. I have
written a drag-and-drop frontend for the Xdelta utility. This is a file
difference manager, and is great for those on dialup when it comes time
to upgrade to a new version of Puppy -- just download a small
"difference file". 1 2
- Ayttm. This is our
choice of multi-protocol chat client, because it is small yet capable.
One of the main developers, Siddhesh, is very active and responsive to
our requests. 1 2
- Gtkdialog text markup editor.
In Puppy Linux we make heavy use of Gtkdialog for GUIs written in Bash/Ash
scripts. Gtkdialog is easy to use and fairly powerful. One problem
though is limited documentation.
If you have the 'devx' file loaded, you will find code examples
at /usr/share/doc/gtkdialog3, which are invaluable. However, Gtkdialog
has capabilities that are not documented or hardly so. Vovchik has provided this aid. 1 2
- Bcrypt GUI. Forum
member coolpup developed a GUI tool to encrypt files, using the
'bcrypt' commandline utility. Coolpup has also developed another with
heavier encryption named Pcrypt. 1
- JWM window manager.
For a long time Puppy has used JWM, except long long ago when we used
Fvwm. The developer Joe stopped work on the project, and two of our
guys, HairyWill and Patriot, fixed some bugs. Joe came back and incorporated these fixes into the
official source plus added some extra improvements. 1 2 3
I have put this in, but not using it for anything yet. Steve_s was
discussing ms-sys awhile back on the forum, and it looks like it could
be useful when installing Puppy. 1 2
- BootFlash. This is
a GUI application I have written for installing Puppy to Flash drives.
It is an alternative to the Puppy Universal Installer and is an attempt
to offer all the different means of installing to flash in the one
tool. 1 2
- Poweroff after mouse inactivity.
Thanks to forum member steel_i who thought of this. I have used the getcurpos utility to detect mouse position. 1 2 3
- FullerScreen. This
application is described as a "slide presenter", but it is really a
nice tool for creating presentions (like Powerpoint). It does need
basic HTML editing capability though. FullerScreen is an addon for
SeaMonkey, but runs standalone. 1
- Addons for SeaMonkey. I have already mentioned SQLIteManager and FullerScreen above. In addition 4.3 has Zombiekeys and Adblock. Note that if you open the Help page in Puppy there is a HOWTO that explains how to use zombiekeys. 1 2 3
- SFS Converter. The
188.8.131.52 kernel has Squashfs 4.0, which is not compatible with older
SFS files. Puppy will detect incompatible SFS files, and now offers a
converter, created by forum member trio. 1 2
- Pcur. I wrote a mouse cursor selector GUI. Especially useful if your eyesight is not so good and you want a bigger mouse pointer. 1
- Network Wizard. Dougal has continually refined our Network Wizard, and there is a very long forum thread detailing its development. 1
- And so much more...
lots of improvements in the underlying scripts, bugfixes, application
upgrades, massive help from the guys with testing -- I won't even
attempt to list names.
Please go to the main download page for download links:
The 4.x series was originally built from T2 packages and they host all
source packages. Extra source packages are hosted by me at http://puppylinux.com/sources/.
|Upgrading from an earlier puppy.
If you have a "pup_save" file and you want to upgrade it, it has to be
renamed. Say that you are booting from live-CD and you have
'pup_save-john.2fs' on the hard drive (or whatever) -- make a copy of
it (to be on the safe side!) named 'pupsave.2fs', then boot or reboot
Puppy 4.3. That's it, pup 4.3 only recognises save files of name
'pupsave*.2fs' (where '*' means wildcard).
|Puppy 4.3 built with older kernel.
The official 4.3 has the latest kernel, 184.108.40.206, however some old PCs
work better with older kernels (though fortunately the large majority
are happy with the latest kernel!). If you go to the official download
site or mirrors, there is a 'special-puppies' folder with 220.127.116.11 (as
used in Puppy 4.1x and 4.2x) and 18.104.22.168 builds.
|Puppy 4.3 and SCSI drives.
There is a special build of 4.3 that not only recognises true-SCSI
drives but also boots from them. Note, SCSI drives were commonly used
in server PCs 10 or more years ago. Again, please look in the 'special-puppies' folder.
Various links related to 4.3 that are worth checking out...
- Enhanced Nvidia, Intel and ATI Xorg video drivers. MU (Mark) has created these. 1 2 3 4
- Enhanced Intel and VIA video drivers for 22.214.171.124 and 126.96.36.199 kernels. Get recent video hardware working properly with these older kernels. Patriot has created these. 1
- Compile source packages.
Puppy is a cutdown tiny distro but it is super-easy to add everything
needed to turn Puppy into a complete C/C++/Vala/Genie compile
environment -- download 'devx_430.sfs' to /mnt/home, run the
BootManager, then reboot. 1 2
- Compile kernel modules.
If you would like to compile a new or updated kernel module, grab the
patched 188.8.131.52 source tarball or SFS file -- the latter enables you
to compile a module even running Puppy from live-CD or frugal install. 1
Thanks to the guys who helped with the default in 4.3 (especially
ttuuxxx for the icons and 01micko for tweaking the background). The
guys who are
into the graphics side of things have been very busy, so if you want
something different, there are heaps of themes available -- play
and play until you get something you like! I would like to thank Dejan,
who has put in the effort to collect GTK, JWM themes, desktop icon-sets
images into the one place for the convenience of the rest of us. You
can also find lots of themes on the forum, created by a very
enthusiatic bunch of guys! 1 2
- SFS files. I have
mentioned 'devx_430.sfs' and 'zp430305.sfs' files above. So, what
actually are these .sfs files? This is a truly wonderful feature of
Puppy. Newcomers, please read this: 1 2
- Create your own puppies.
This is something that is fun! You can build your own custom live-CD.
There are two basic methods, either remaster the current live-CD (see
'Remaster Puppy live-CD' in the 'System' menu), or build from scratch
using Woof -- the latter requires some Linux commandline expertise and
a Linux hard drive partition. 1
If you discover a bug in 4.3, or something doesn't work, please browse
around in the forum. There are feedback threads for dialup modems, 3G
modems, video, Network Wizard, and so on. If you can't solve your
problem, please report to this thread, which is specifically for 4.3
bug reporting. I will be monitoring this thread and hopefully Puppy
4.3.1 will have fixed your bug! 1 UPDATE: 4.3.1 RELEASED
|Bug reports, 4.3.1.
There is a thread on the forum specifically for bug reports and feedback on Puppy 4.3.1. 1
|Extra modules for 184.108.40.206.
Forum member 'tempestuous' has kindly been compiling extra drivers for
the 220.127.116.11 kernel, especially network and netbook drivers. 1
Puppy has a HOWTO page on programming builtin, so I won't write much
here. Open the main Help page and follow the link. Highlighting some
Most of our Puppy developers code in Bash/Ash and use Gtkdialog,
Xdialog and xmessage for GUIs. Our 'devx' SFS file provides a complete
C/C++ programming enviroment, and some coding is done in C. However,
the future, for compiled code at least, is Vala and Genie. I have
written a series of web pages that introduce Genie with some tutorials:
Two of our Puppy developers in particular are heavily into Vala and
Genie coding, Nicolas and MU (Mark). They have written wonderful
applications, remarkable for their simple code and tiny size: NicoEdit,
Pictureviewer, PuppyBrowser for example.
Forum/blog information: 1 2 3 4 5 6 7 8 9 10
The Woof build system enables us to build Puppy from any distro's
packages. I have released experimental builds of "Upup", Puppy built
from Ubuntu Jaunty packages. What's the point? -- well, you get the tiny size (approx. 100MB
live-CD) and wonderful speed of Puppy, a user interface and user
experience that is totally Puppy, the full suite of applications and
utilities as in any other Puppy, yet built from Ubuntu packages and
able to install further packages from the Ubuntu repositories.
Other builds are active. Ttuuxxx and Gposil are working on "Dpup", a Debian-based build [1 2], and Kirk is working on "Tpup", codenamed Fatdog2, a build from packages compiled in T2 [1 2].
All of these are available for testing. Please look on the forum for latest announcements: http://murga-linux.com/puppy/.