Puppy developer news:
1st half of 2005
| Older news||Later news
This is the News page for the "first part" of 2005. It got too big for one pageThe latest 2005 News is here: News 2005 page
Puppy version 1.0.5alpha2 is released. The size of the live-CD iso
file is 54M, and the developer's compiling support file usr_devx.sfs is
43M. This is not an official
release, it is for the Puppy enthusiasts and developers to test.
- The file usr_devx.sfs has also been upgraded, so please download that as well as the iso file. If you are new to compiling from within Puppy and haven't tried usr_devx.sfs, please read down this page to where it is introduced (29Jul05).
release only has one window manager, JWM v0.23. It's not perfect, I've
reported some bugs to Joe Wingbermuehle, the developer (joewing.net -- see his forum page). If you discover anything else, report direct to Joe.
- If you want to fiddle with the colour scheme, please do. The "peach" theme is pleasing to my eyes, but may not please others.
- The isolinux.cfg file on the live-CD is setup to create a "pup002" file, to avoid messing around with any pre-existing pup001 file. If you already have a pup002 file, please remove it.
- Mozilla fonts and theme probably need some tweaking. I installed Littlemozilla theme into ~/.mozilla whereas it should really be in /usr/lib/mozilla/chrome, as it is supposed to be the new default theme, Classic and Modern having been deleted. Fonts on some pages, like the Puppy forum, are too small.
- gtkmoz, the internal HTML viewer, is actually TestGtkEmbed that
ships with the Mozilla source, and this is now somewhat broken. Not
getting antialiased fonts, scrollbars missing. This may have something
to do with the theme installation.
- This is only an alpha release, even pre-alpha, and will undergo many changes. Bladehunter and others are doing great things with wifi, and that will be looked at soon. Plus heaps more things...
A secondary reason is to preview the new-look desktop and theme.
These two files, Puppy 1.0.5alpha2 iso and usr_devx.sfs, are hosted courtesy of Normen Stengell at www.nstsoftware.com/puppy.
If you are unable to download these files, I have upgraded the Puppy Unleashed v1.0.4 CD to include puppy-1.0.5alpha2-mozilla.iso and usr_devx.sfs files. This can be ordered via the download page.
The Modem Wizard had a bug setting up the Lucent software modem. We
worked this out on the Forum and I have now fixed the Wizard. Now, you
download the Lucent driver, boot up Puppy and run the PupGet package
manager to install it, then reboot Puppy, then run the Modem Wizard.
That reboot step is essential.
To compile applications from within Puppy, just place the
usr_devx.sfs file on the hard drive in the same place as the pup001/2
file. Boot Puppy and you are immediately ready to compile. This
capability was pioneered with 1.0.5alpha1, further improved in the
I have added a further useful capability: a squashfs file named usr_more.sfs will also get mounted on /usr. A use for this could be anything very big that needs to be in /usr, for example the complete collection of KDE libraries and applications -- just by placing usr_more.sfs in the same hard drive partition as pupxxx, Puppy will have all the KDE apps.
Pup 1.0.4 and probably a version or two prior, has a bug with
loading keyboard layouts. When first booting, you choose a layout, say
"us", but the "us.map" layout file does not load. People were able to
go to the Keyboard Wizard later and choose the old two-letter
technique, which worked.
This was a bug in the /usr/X11R6/bin/xwin script and also the loadkeys program needed to be updated. Fixed.
The media player Gxine has
been upgraded from version 0.3.3 to 0.4.6, the latest.
I was amazed
though, when it crashed on full-screen video view, the same old v0.3.3
bug. I know it's not
Puppy's fault, as Kaffeine plays video DVDs in full screen without any
trouble. I thought about the hypothetical grandma currently being
discussed on the Forum -- she would exclaim "bother!" if the Gxine
program suddenly disappeared when she chose full-screen mode (granny
doesn't utter profanities). We are trying to get Puppy to the point
where granny can happily use Puppy.
So, I played around with the preferences, didn't think anything important got changed, but next time I tried full-screen it worked. Sure looks nice full-screen, granny will be happy. After I have released the Alpha2 Pup, maybe someone could check this out -- what setting makes it crash. Note, Gxine uses the "xshm" video rendering interface, which is the slowest method, but running on Puppy we get a decent frames-per-second even with slow CPUs.
As sound and video, including full-screen, is working now, I'll put the ~/.gxine/config file into the gxine-0.4.6 Unleashed package, so when build the live-CD it will be preconfigured.
I changed the Mozilla theme to "littlemozilla" -- this and
micromozilla themes are developed by the same guy, very similar, but
littlemozilla allows the underlying GTK theme to come through better. I
was thinking that the "GTK theme" choosing program could also have the
option to modify the JWM theme, apply the same colurs to JWM -- maybe
thoughtjourney could think about this! The theme could also apply to
the desktop background, for example, the picture of the cute puppy dog
with white background could be made transparent background -- if
xsetroot is used to set background colour before xli is used to load
the desktop image, then you would get the doggy displaying with
whatever background colour you want -- this is the theory anyway.
Mozilla has been compiled from "nightly source", dated 16 August
2005, and this will most likely be in the next Puppy, and will be known
as version 1.8b1.5.
The Mozilla package comes with two themes, Classic (the default) and Modern, however they are very large and I have replaced both of them with a very small theme called "micromozilla". I'm using it right now, looks okay, but if you want to apply any other theme to Mozilla it is very simple -- go to http://themes.mozdev.org, choose a theme and click on the "Install" button.
As Mozilla is built from beta source, it has some extra menu items
along the top, "Debug" and "QA" -- I found out how to get rid of these.
I tested the Mail module, using Composer to type this, they work fine.
Navigator, the web browser also runs fine, but, the image blocker still
Lobster (Forum name), our most dedicated Wiki maintainer, has now created an interactive slideshow introducing Puppy. Find it here: http://www.zen45800.zen.co.uk/puppy3/
Incidentally, the 1.0.5alpha2 only has JWM, no Fvwm95. JWM works so well, and is so tiny and fast. Also, thoughtjourney (Forum name) has developed a theme switcher for JWM (see http://www.murga.org/~puppy/viewtopic.php?p=6451&highlight=#6451) and is now working on a configuration GUI ...that is something I'm very eager to see!
More work has been done on the new-look desktop, with a pastel peach
theme for JWM and for GTK apps. In the latter case, the "GTK theme"
menu item in the "Control Panel" menu has the new theme added to the
I would like to congratulate Dan Van Wormer for the superb
implementation of a trashcan, with help from GuestToo. Although I have
been reading on the forum what you guys have been doing, I only today
got around to actually trying it.
It sure does work well. So, it will be built-in to the new-look desktop.
For you guys hanging out for an updated usr_devx.sfs for compiling,
I'll upload it early next week, along with an updated live-cd
1.0.5alpha2. This live-cd is required to use usr_devx.sfs file. It will
also have the new-look desktop, and I will invite feedback.
The desktop has been overhauled, with a new set of icons and a more consistent way
of managing them. Basically, they are more generic icons and labels, that do not
have to be changed for different applications -- instead, there are files defining
the chosen default applications.
For people on analog modem dialup, a desktop icon will be created automatically after the Modem Wizard is executed -- that's one thing I always thought would be convenient. There are also icons for help, MUT, configuration and package management.
There is also a new background image!
I've been working on a KDE version of Puppy, however I don't think
I'll release a KDE-Puppy live-CD as such, maybe a PupGet package.
I did create a live-CD weighing in at only about 85M, with Koffice
office suite, GuardDog firewall, KRecord audio recorder, Kate editor,
KGhostview postscript viewer, KPDF PDF viewer, KMail, KNode, KPPP
dialup, Konqueror, Kopete messenger, KWifiManager, K3b CD/DVD burner,
Kolourpaint, Kaffeine media player, Kaboodle sound file player,
Ksnapshot and Filelight disk usage viewer.
A nice lot of apps, nicely integrated too, but I had to ask hard questions about what Puppy is all about, and how performance compares to the similar-sized OpenOffice.
All the apps startup in 2 seconds or less. KWord and KSpread are
nice but very disappointing in regard to importing Microsoft documents
-- vastly inferior to OpenOffice, even inferior to Abiword and Gnumeric
A few years ago I used to use KDE applications, and I thought they were a bit unstable ...well, guess what, I still find them unstable. They crash too often. Perhaps there's too much complexity "under the hood".
I found myself getting increasingly annoyed with Konqueror. It's
quite a nice web browser, and the Adobe Flash plugin works with it.
But, it's the basic "Swiss army knife" philosophy that annoys me. I
want Konqueror as a web browser, I don't want a "universal viewer",
with all the overhead that involves. If I want a local file manager I
would rather use a separate specialised application, similarly for
network file browsing. I tried to cut Konqueror down to just a web
browser, but it's not easy.
Probably the direction for Puppy to take is to stay on the current
track, that is, Abiword/Gnumeric, OpenOffice and Mozilla, especially OO
v2 that can use GTK2 and will be more modular. OpenOffice is also
sharing some code with Mozilla, which holds the promise of future space
saving. Also, Abiword and Gnumeric are developing rapidly.
Bladehunter's special edition of Puppy 1.0.4 with madwifi (Atheros
chipset) wireless support, nfs drivers support in kernel and XFree
4.5.0, announced on this Puppy Forum thread, with download link.
Samba has been upgraded
from version 2.2.7 to 3.0.14a. Note that Puppy only has the client
applications: nmblookup, smbclient, smbmnt, smbmount and smbumount. The
development file usr_devx.sfs now has libsmbclient.so, required by package kdebase for Windows share browsing.
For parity with Vector, libxslt has been upgraded from version
1.0.33 to 1.1.12 and libexslt from 0.7.22 to 0.8.10. Xine in Puppy was
from Mandrake 9.2, now upgraded to parity with Vector: libxine upgraded
from 1.6.0 to 1.11.1.
For parity with Vector 5.1STD and Slackware 10.1, a few libraries in
Puppy are upgraded. glibc is upgraded from 2.3.2 to 2.3.4, libxml2
upgraded from 2.5.11 to 2.6.16, gcc-3.3.1 upgraded to gcc-3.3.4 and
libstdc++-5.0.5 upgraded to libstdc++-5.0.6.
Hey, a Puppy-powered submarine! These guys are using Puppy Linux as the control system for their submarine. See the Forum announcement.
If you need to boot an installed Puppy from floppy disk, for example
your PC cannot boot from CD or USB or not setup to boot Puppy in a HD
partition, booting from floppy is a solution. I wrote a page on this, My PC can't boot from USB|CD, however pakt (Forum name) has made considerable improvements to the floppy boot disk, and called it WAKEPUP. The announcement on the Forum is here: http://www.murga.org/%7Epuppy/viewtopic.php?t=1346&highlight=boot2pup.
Busybox sort has been replaced with the full version, as some package compile scripts require it.
I'm progressing with Puppy Sourcerer, a project to develop compile scripts for all the source packages used in Puppy and create the binary packages for Unleashed.
This is progressing well, but slowly. I'm compiling from within Puppy, and refining the usr_devx.sfs file as well. Soon I will release an improved usr_devx.sfs and a Puppy live-CD 1.0.5alpha2, for anyone who wants to compile apps.
Have successfully compiled the 2.4.29 kernel, and Qtwvdial, a Qt
application, using my thrown-together usr_devx.sfs development file.
So, have uploaded puppy-barebones-1.0.5alpha1.iso (39M) and usr_devx.sfs (38M) to www.nstsoftware.com/puppy/ -- this is an alpha release, for testing only, not the official 1.0.5 release (a long way from it!!!).
When you burn the iso file to CD then boot the live-CD, the default boot-option creates a permanent storage file "pup002", so as not to mess around with the normal "pup001" file.
Download usr_devx.sfs to /mnt/home (the partition where pup002 is located), then reboot Puppy.
When you compile, with this general method:
# make install &> loginstall.txt
Be sure to append that "&> loginstall.txt" so that you know
where files get installed, as it must be remembered that Puppy running
from live-CD only has persistence of storage for files written to
/root, /etc and /usr -- if necessary, "configure" options can be used to
control destination paths.
The PC that you test this on must have a Linux swap partition, or
failing that heaps of RAM, as the C/C++ compiler needs a lot of space
for transient storage.
As I "threw together" the contents of usr_devx.sfs, there are files in it that are not needed -- in some cases I didn't know what a file in Vector/Mandrake was for, or was uncertain, so copied it to usr_dvex.sfs just in case -- you can help here if you have experience in what packages are needed for compiling, by identifying files that are not needed. I think that there are some header files and support files for some application and library packages that don't need to be there.
At bootup, if Puppy finds /mnt/home/usr_devx.sfs exists (same place as the pupxxx file), it gets mounted on /.usr (invisible directory) and by unionfs gets mounted on /usr. So, you can see exactly what is in usr_devx.sfs by looking in /.usr (read only). You could also copy it elsewhere to experiment with modifying it and then create another usr_devx.sfs file. Say that you have copied /.usr to /mnt/home/tmp/.usr, and edited it, then you can turn that into a squashfs file like this:
# cd /mnt/home/tmp
# cp -a /.usr ./.usr
# mksquashfs .usr usr_devx.sfs
# mv -f usr_devx.sfs ../
Some very exciting news. So far, applications for Puppy have been
compiled on another host distro, most recently Vector Linux 5.0STD,
before that Mandrake 9.2.
Some of the regular Forum contributors, especially Peter Siag, Jesse Liley and Bladehunter, have investigated various means of compiling from within Puppy.
There has been a great deal of interest in this.
A couple of days ago I discovered that I can mount more than one
squashfs file onto /usr ...well, that is interesting! Bladehunter had
created a development squashfs file that he mounted on /opt/tools, but
now I realised that we could put all the development files directly
onto /usr, which is where they normally are expected to be.
Just to try it out, I grabbed any files out of Vector Linux that looked like they might be required for compiling a package, also grabbed some files out of Mandrake -- mix-and-match, although there is risk in this. I ended up with a 38M file named "usr_devx.sfs", and I modified Puppy so that if usr_devx.sfs is in the same location as the pup001 file (in /mnt/home) then it will get mounted automatically on /usr.
Note, this is designed to work also on Option-2 (full) hard drive installed Puppy, in which case place usr_devx.sfs at the top level, "/", in the Puppy partition.
After booting this new Puppy, yep, it worked, everything was in
/usr. So, found a package, JWM source actually, ran "make" ...hey, it
worked! JWM is an Xlib application, so tried Uxplor, a GTK 1.2 app.,
and Cgtkcalc a GTK2 app, both "configure" and "make" worked! No host
distro needed to compile apps!
I know this is going to interest many people, so I will release "Pup
1.0.5alpha1" soon, along with file usr_devx.sfs. Imagine, just download
one file, to /mnt/home, reboot Puppy, and you are ready to go! Nothing
to setup, it just works immediately after the reboot. Note, this won't
work with Pup 1.0.4, you will need the 1.0.5alpha1 Puppy.
Mathiasdm (Forum name) has announced a "puplet" (Puppy derivative) named NANOWRIMO, especially for writers. Announcement here.
GuestToo has create a download script for Puppy Unleashed: http://www.murga.org/~puppy/viewtopic.php?t=1302&highlight=
Also "torrents" for Chubby Puppy: http://www.murga.org/%7Epuppy/viewtopic.php?t=1308
|Puppy Linux version 1.0.4 is released. The live-CD file is "puppy-1.0.4-mozilla.iso" and is 60.3M, available via the download page. Release notes:|
- The great news for this release is the Puppy live-CD now has Gnumeric, the premier Linux spreadsheet editor. This is version 1.4.3 and includes the full set of plugins.
(Media Utility Tool) version 0.0.5 is now in Puppy. This is a greatly
enhanced drive mount/unmount alternative to Pmount. Written in Tcl/Tk
by Jesse Liley especially for Puppy.*
- Printing support has been improved, with a patched AFPL Ghostscript version 8.51 and a patched Abiword version 2.2.7.
- The WvDial package in the live-CD is now usable and available from the menu. Along with Gkdial and Xeznet/eznet, there are now three alternative Internet dialup programs.
- Gxine playing of streaming audio has been improved. We found that
some RealAudio files would not play, so a codec file is now in Puppy to
fix that. For playing of a wider range of RealVideo and other formats,
the complete codecs package from the mplayer site is now available as a
PupGet package -- it is named "xine_extra_codecs-1".
- Syslinux is upgraded to version 3.08, Grisbi to version 0.5.7.
- Puppy had the gtkftpd FTP server, however it is troublesome, and the live-CD now has BetaFTPD, adapted for Puppy by papaschtroumpf (his Forum name).
- There is a new audio file player, called tomAmp.
- New PupGet packages include ELinks version 0.10.5 (a fantastic text-mode web browser), OpenOffice version 1.1.4 (wordprocessor, spreadsheet, drawing, image gallery, presentation),** TEA 10.0 (text editor), Xfbdev (framebuffer Kdrive X server) and the kernel framebuffer modules.***
- And of course heaps and heaps of DotPup packages contributed by Puppy-enthusiasts, in particular GuestToo (Forum name): DotPups.
- The kernel has been upgraded from version 2.4.27 to 2.4.29 with
support for framebuffer, HMAC encryption and the default ramdisk size
increased from 11264K to 12288K.
- The GTK2 libraries have been upgraded from 2.2 to 2.4.****
- The live-CD boot menu now has an option "Choose HD" which enables you to choose a partition and name for the personal storage file, for example "hdb1" and "pup002", instead of the default "pup001" and automatic choice of partition. This mechanism is intended for experimenters.
- I did some work on the Lucent and Smart-Link linmodem driver
setup -- see notes further down. Jcoder24 has compiled drivers for
HSF/HCF linmodems, and I setup Puppy to recognise the drivers when they
are installed -- watch the Announcements section of the Forum for
- A lot more small improvements -- read the notes down to and including the release notes for Puppy 1.0.3 -- in fact, if you are a Puppy-newbie, please do read the 1.0.3 release notes as they apply to 1.0.4 also. The FAQ has also been expanded.
We have only done some basic testing of MUT so far. There may be some clash with the older Pmount program, so probably best to use one or the other, not mix them. Both MUT and Pmount are to be found in the menu at "Start -> File managers".
When you run the PupGet package manager, you will find a few OpenOffice packages to choose from. The base package is "openoffice_CUTDOWN-1.1.4", and this is all you need (size 43M). You can also install the "openoffice_gallery-1.1.4" for extra images, "openoffice_help-1.1.4" for help files, and "openoffice_dict-1.1.4" for English (British and US) and Italian dictionaries.
Both the "modules_fb-k2.4.29" and "xfbdev-4.3.0v2-xkbd" packages need to be installed. See further instructions a little further down this page.
Note that Vector Linux 5.0STD rc2 is using GTK2 version 2.6.1, in parity with Slackware 10.1. I was using Vector 5.0STD beta2 for compiling some GTK2 applications for Puppy, and that release of Vector uses GTK2 2.4.0. I'm surprised that the Vector developers have changed package versions moving from beta2 ro rc1 releases -- they have even changed some package versions moving from rc1 to rc2. Anyway, I expect to have GTK 2.6.1 in Puppy 1.0.5.
Due to ongoing limitations in sound support with some hardware, I intend to finally move up from the OSS to ALSA sound systems. I'm hoping to do this for 1.0.5.
Bladehunter is doing some tremendous work with wireless networking, and we should also have that going for 1.0.5. On the other hand, I may not do any of the above, as I had an interesting idea yesterday...
|Bare-bones Puppy version 1.0.4 is released. The live-CD file is "puppy-barebones-1.0.4.iso" and is only 39.9M.|
Easy to download, expand with PupGet and DotPup packages. Bare-bones is available for download at www.nstsoftware.com/puppy, courtesy of Normen Stengel of NST Software. Please read BareBones 1.0.3 release notes.
|Chubby Puppy version 1.0.4 is released. The live-CD file is "puppy-chubby-1.0.4-mozilla-openoffice.iso" and is 96.1M.
A live-CD that includes the "kitchen sink", namely OpenOffice! Chubby is available for download at www.puppy.wise-guy.us, courtesy of babbs (Forum name). Release notes:
- This live-CD is the same as the standard release, except the OpenOffice suite replaces Abiword, Gnumeric and Scribus. Yes, Scribus also, as I think OO Writer is the superior desktop publishing application, not just a "wordprocessor".
- Some extensions to OpenOffice are downloadable via the PupGet package manager. They are "openoffice_gallery-1.1.4" for extra images, "openoffice_help-1.1.4" for help files, and "openoffice_dict-1.1.4" for English (British and US) and Italian dictionaries.
- Chubby will work on PCs with 128M RAM, however 256M is
recommended. 128M+Linux-swap-partition or 256M required for Puppy to
load totally into ramdisk. Heh, heh, so you think OO is sluggish?
|Puppy Unleashed version 1.0.4 is released. The core file is "puppy-unleashed-core-1.0.4.tar.gz" (6.8M), downloadable from ibiblio.org: see the download page.
Create your own custom live-CD. For further information, see the page Puppy Unleashed.
Nduanetesh reported a problem with the
multi-session CD. At end of session, files over 5M get moved to
/root/archive/ and saved to CD but are not restored at next bootup.
This is a space-saving measure, except that he installed a Firefox
package and the file "firefox-bin" is over 5M... so it has to be copied
back off the CD at start of every session.
So, I've changed the shutdown script so that files have to be over 9M before getting moved to /root/archive/.
Someone recently reported on the Forum that they increased the size
of the pup001 file, but the ext2 filesystem had not increased (as
reported by "df"). Note, the menu "Utilities -> Resize /root
filesystem" is a script to increase the pupxxx file by 64M, 128M, 256M
or 512M -- this is your personal storage, a complete ext2 filesystem in
a single file saved on the hard drive.
Okay, I checked it out, and was able to reproduce the bug, and I have also fixed it. What happens now is that the actual resizing of the filesystem to fill the file takes place at boot-time, by code in the rc.sysinit boot script -- this gets around the previous "illegal" method of resizing a mounted partition.
There were some howto instructions posted about this recently on the
Wiki, for resizing the pup001 file on an NTFS partition. The howto
still applies, but Puppy will now automatically detect if the pup001
filesize is bigger than the ext2 filesystem inside the file and
increase the f.s. to fill the file -- done at bootup, so no need to
rerun the Resize script as instructed in the howto.
Paul Addis (Blackadder) informed me that the latest at76c503 Atmel
usb wireless driver has better device support than the version
currently in Puppy (v0.11). So, I downloaded the latest by CVS. These
drivers are installed into /lib/modules/2.4.29/net/wireless/at76c503/
and documentation, such as how to use, can be found on the author's
home site: http://at76c503a.berlios.de/.
A company called Devon IT has installed Puppy Linux on one of their
"thin terminals", and they absolutely loved it, so much so that they
have sent me a complementary thin terminal, model NTA-6010A -- a gift,
"no strings attached". I haven't got a good picture of it, but here is
the URL: http://www.ntavo.com/ntaterminal.php.
It uses a 433MHz VIA Eden CPU, no fan, and Puppy is installed on an internal 128M Compact Flash card.
No hard drive (though there does seem to be a bracket that would take a laptop hard drive), no CD drive.
Sure is neat.
Skype Unleashed/PupGet package upgraded to version 220.127.116.11.
GuestToo created a great little enhancement to Rox, that added
"script" and "Web page" to the right-click "New" menu. I have now
incorporated this into the Rox package.
I have created a menu entry for WvDial, with a simple script to run
wvdialconf to detect the modem and wvdial to dialout. So, the Network
menu now has Gkdial, Xeznet and WvDial, three different ways to dialout!
Note that WvDial is currently only usable with hardware serial modems on ttyS0 - ttyS3 (COM1 - COM 4), no good for ttyS4 (internal PCI hardware modem), ttyLT0 (Lucent linmodem) or ttySL0 (SmartLink linmodem).
I have also fixed the clash between Gkdial and WvDial.
The boot script /etc/rc.d/rc.sysinit had code to mount a squashfs
read-only file named opt_cram.fs on /opt at bootup, however GuestToo
pointed out that some applications write to /opt. Therefore, I have
modified rc.sysinit so that if a squashfs file named "opttools.sfs"
exists (in the same place as usr_cram.fs) then it will get mounted on
Note, Bladehunter is proposing /opt/tools for his gcc development system, so it will be easy to have it auto-mount at bootup.
In fact, I've generalised the code in rc.sysinit so that any number
of squashfs files can be mounted automatically. The requirement is that
they must be located at the same place as usr_cram.fs and they must
have the file format "opt*.sfs", where the * is the name of the
subdirectory under /opt at which the file will be mounted.
It is not essential, but I would prefer that the filename be within the old 8.3 format.
So, file "opttools.sfs" will mount on /opt/tools/, file "optooo.sfs" will mount on /opt/ooo/.
Then I thought, why not also get the rc.sysinit script to look for a
configuration file, like "puppy.config", after the squashfs file has
been mounted. This config file could execute at every bootup, and do
stuff like set environmnent variables. Just a thought, haven't actually
This is an interesting mechanism, an alternative to the packaging
system. Like bladehunter, you could create an enormous file of gcc
compiler development packages, and make it available as a file. The
user only has to download it and place it in the same location as
usr_cram.fs and they are in business. As it is read-only, it can sit on
a usb card in the case of a usb installation of Puppy, and not cause
excessive writes to the card.
Note, although I made OpenOffice v1.1.4 into a PupGet package, I'm
thinking that the above technique might be a better choice in the
future. Anything very large and read-only is a candidate.
I am not placing support for framebuffer video into the official
live-CD. Instead, there will be the framebuffer kernel modules in
PupGet package "modules_fb-k2.4.29" and the Xfbdev Kdrive framebuffer X
server in package "xfbdev-v4.3.0v2-xkbd".
Thus, you will need to download and install these packages. If the
default Xvesa X server works okay, even if the available resolutions
are not too good, then fine, you can get onto the Internet and use the
PupGet package manager to install them. After installing them, restart
the window manager, and "Xfbdev Video Wizard" will appear in the
"Setup" menu -- the Wizard can also be run without X, from the prompt,
just by typing "framebufferwizard".
At bootup, the boot script /etc/rc.d/rc.local0 executes
"/usr/sbin/framebufferwizard boot", which will load the appropriate
framebuffer module, thus switching the console into the chosen graphics
mode (at chosen resolution, bit-depth and screen refresh frequency).
The framebuffer modules, if modules_fb-k2.4.29 package is installed,
are in /lib/modules/2.4.29/video/ and the documentation for these
modules is in /usr/share/doc/framebuffer/.
The script framebufferwizard does need some more work. I have it working nicely with the sisfb.o module (SiS chip), on my main test PC, but I got peculiar results when testing on a PC with Trident video chip -- it may be a matter of supplying better parameters when loading the tridentfb.o module -- hence the supplied docs for users to study.
There are some modules, such as matroxfb.o, that the Wizard does not even test for, as I don't have the hardware. So, there are projects here. You can examine the Wizard code, it's fairly simple, and see how it can be adapted to detect your video chip and then load the appropriate framebuffer module (with appropriate parameters). If it works, send me the mods to the Wizard.
One small technical detail: /lib/modules is not persistent between
reboots, so the modules_fb-k2.4.29 package actually installs the
modules to /usr/lib/modules/video/. Puppy will automatically copy the
modules to /lib/modules/2.4.29/video/ at bootup, and depmod does not
have to be run, as it was run when the iso was created with the modules
in the correct place.
I've created tentative Unleashed packages for MUT, Media Utility Tool, created by Jesse Liley, and for BetaFTPD,
authored by Steinar H. Gunderson (http://betaftpd.sourceforge.net/),
and adapted for Puppy by papaschtroumpf (his Forum name) --
papaschtroumpf did most of the work in creating the Unleashed package,
I just tweaked it slightly.
MUT is like the Puppy drive mount/unmount program Pmount, but with more bells and whistles. Currently there is a clash between these two, for example if a CD is mounted by MUT, Pmount shows it as still unmounted, and if a hard drive partition is mounted by MUT then Pmount shows it as mounted at a different mount-point. We will get this sorted out, but the situation right now is that one of these should be used, don't mix them.
BetaFTPD is a FTP server.
I wish to congratulate both of these guys -- MUT is a truly wonderful little program, written in Tcl/Tk, and the scripts that papaschtroumf has created are superb extensions to the basic BetaFTPD. I intend that both of these will be in the Pup 1.0.4 live-CD.
Puppy 1.0.4 will have my first attempt at incorporating framebuffer
video support as an alternative to the Xvesa Kdrive X server. There is
now Xfbdev, the framebuffer Kdrive X server, and a selection of kernel framebuffer driver modules. To manage this, there is the Framebuffer Video Wizard (Wizard almost finished, need to tweak a few things).
Framebuffer support is only being offered for Intel, SiS,
Trident, Riva and NeoMagic video hardware, at least for now. These are all
modules, so framebuffer mode is not launched as a kernel boot parameter
-- this offers more flexibility, as the "framebufferwizard" script can
run after bootup to dynamically choose the desired module, resolution
and frequency settings. Yes, screen refresh frequency can be specified,
with the exception of the NeoMagic driver which appears to only do
1024x768x16 at 60Hz (at least, it isn't documented, will need to test on actual NeoMagic hardware).
This first release of framebuffer support will be classed as experimental, and will no doubt get tweaked and generally fiddled with, also probably will get extended later to support more video chips, such as Matrox, Radeon and Cyber200.
Note that Bladehunter (his Forum name) has a puplet
(Puppy derivative live-CD) based on Puppy 1.0.3, but with the full
Xfree 4.4.0 X server, and this will probably give snappier performance
on older hardware than the Kdrive X servers. We are sharing ideas, and
the likely near-future scenario is that Bladehunter will upgrade his
live-CD to be based on Puppy 1.0.4. So, especially if you are having
problems with the video, try Bladehunter's release. Note, he also has
support for the Atheros wireless hardware (using madwifi), something
that I have not yet incorporated into the mainstream Puppy.
Probably the best place to learn more about Bladehunter's puplet is the Forum: http://www.murga.org/%7Epuppy/viewtopic.php?t=854
The Fvwm95 popup Start menu has the text "Puppy" displayed
vertically beside the menu items. I have modified this so that it now
displays the current version of Puppy, for example "Puppy 1.0.4".
For those interested in the technical side of this, perhaps to
incorporate the "Puppy 1.0.4" image into another window manager, the
image file is /usr/local/lib/X11/pixmaps/fvwm-menu.xpm.
Utility programs from the Netpbm package are used to create the fvwm-menu.xpm raster image from ascii text. This is done in the createpuppy script in Unleashed, when the live-CD is created.
Netpbm has other utility applications that can be used to rotate and resize the image from within a script.
The boot menu has the option to "No save to HD", meaning to not use
any pupxxx file and run totally in ramdisk (which means that personal
data is not saved at end of session). I have renamed this boot option
to "Choose HD" and it now allows you to choose which partition has the
pupxxx file and the name of the file, as well as the choice of running
in ramdisk only. For example, you could choose partition /dev/hdb1 and
This can be very handy for experimenting, or if you would like to maintain different configurations of desktop layout, window manager and applications.
I announced on 17 June that Puppy 1.0.4 will be using the 2.4.29
kernel. I have now recompiled it to support HMAC encryption (required
for Atheros wireless driver -- see the work being done by Bladehunter
on the Forum), added the full set of framebuffer driver modules, and
the default ramdisk size is taken up a notch, from 11264K (11M) to
I also recompiled the Xvesa, Xfbdev and Xi810 Kdrive X servers to support the X keyboard extension (which fixes the GDK spurious right-to-left text-entry bug reported below).
A new splash screen for Puppy 1.0.4, courtesy of "harry_covert", one
of our Puppy enthusiasts on the Forum. "harry_covert's" real name is George Johnson -- thanks for the nice image George!
I was worried that the next release of Puppy was going to get held
up indefinitely, as there is a GTK bug that I couldn't fix. Opening the
Leafpad or TEA text editors, start a new file, the cursor appears on
the right side, and initial text entry is right-to-left -- that is,
back-to-front, almost like you're looking in a mirror! This bug occurs
with GTK 2.4 and 2.6.1
Eventually I posted a query to the GTK developer's mail list, and I would like to thank Nickolay Shmyrev for responding and letting me know about a patch for this, at http://bugzilla.gnome.org/show_bug.cgi?id=164125. In Puppy's case, the problem is not that the X keyboard extension is disabled in GDK, but not supported in the Xvesa Kdrive server.
Lobster has written this great review of Puppy: http://os.newsforge.com/os/05/06/22/2031247.shtml?tid=2
He has also very kindly donated the $100 payment to me to use on the Puppy project -- I'm accustomed to getting the occasional $10, so this is kind of embarassing, getting so much -- well, it'll go straight into some hardware purchases, probably a couple more wireless cards.
Over a few days I attempted to compile OpenOffice, but was forced to
give up. Instead, I focussed my attention on reducing the size of a
precompiled binary downloaded from www.openoffice.org. I have got the
compressed size down to about 43M -- that's wordprocessor, WYSIWYG HTML
editor, spreadsheet editor, vector graphics editor, and presentation
editor and player. I have made it into an Unleashed/PupGet package, but
it still needs lots of testing. A picture gallery will be an extra
PupGet package of about 3M and there will also be a dictionary package.
SANE backends scanner library has been upgraded to the latest, version 1.0.15, and Xsane scanner GUI application upgraded to version 0.97.
The Dillo web browser has been upgraded to version 0.8.5.
The text editor TEA, version 10.0, is now a PupGet package and will be available with the next release of Puppy. Homepage for TEA: http://tea.linux.kiev.ua/
I fiddled around with the packages and scripts for the Lucent and
Smartlink software modems. There may have been anomalies introduced in
changing between the 2.4 and 2.6 kernels. Puppy 1.0.1 uses 2.4.27,
1.0.2 uses 18.104.22.168, then 1.0.3 went back to 2.4.27. So, if you were
unable to get one of these modems to work, try again with Puppy 1.0.4,
I've got tremendous, wonderful news! The next release of Puppy will have Gnumeric, the premier Linux spreadsheet editor. This will be the latest version, 1.4.3 and will be fully-featured with all the plugins.
It was an all-night session, figuring out how to compile Gnumeric to work on Puppy. I ended up with a total package size about the same as Planmaker. However, had to move up from GTK 2.2 to GTK 2.4, and Gnumeric was compiled on Vector Linux 5.0STD. The GTK 2.4 and associated files are lifted straight out of Vector and I only had to recompile libgsf and libgnomeprint for Puppy-compatibility. Yes, had to introduce some Gnome library files: libgnomeprint, libgnomeprintui and libgnomecanvas. This upward step for GTK/GDK has increased the live-CD ISO size a little bit -- the test-live-CD I'm using right now is 60.8M.
Gxine now plays ogg/vorbis audio files, though somewhat reluctantly
-- Gxine will play a file once, then refuse to play it again unless it
is reopened. I also compiled Snack to support ogg/vorbis, however the
Snack player only outputs noise -- so, I have disabled Snack's ability
to play ogg/vorbis files.
I have modified Rox file-associations so will launch Gxine when the user clicks on a ".ogg" file.
/etc/mailcap has also been configured to launch Gxine for ".ogg" files -- /etc/mailcap is read by Mozilla and Firefox to discover file associations.
On the Forum we have been discussing playing of RealAudio and
RealVideo off the Internet. I used to listen to RealAudio from the BBC,
which works (it needed an extra file, cook.so.6.o, which is in Puppy
1.0.3), however, we found that two of the audio samples on this page, http://service.real.com/realplayer/test/, would not play. An extra file, sipr.so.6.0, was required, that I have now placed in Puppy.
Other files, that we call "codecs", are missing, that we need for Gxine to play the RealVideo samples on the above site. They are drv4.so.6.0 and drv3.so.6.0 -- rather than place these in the live-CD, I decided to grab the entire "extra codecs" from /usr/lib/win32 folder in Vector Linux 5.0STD and make these into a Unleashed package. This package is named "xine_extra_codecs-1" and will be available for download by the PupGet package manager when Puppy 1.0.4 is released. Note that this package is 11M uncompressed.
Happy birthday, Puppy is two years old!!! Exactly two years ago I uploaded Puppy version 0.1 to the Internet.
I have upgraded the Snack audio package from version 2.2.5 to 2.2.9.
I fixed a problem with the Snack XS sound recorder and editor -- this program has some plugins, that are supposed to be loaded at startup, except they weren't, so nobody knew about them. I modified the code so now they are loaded at startup -- some really nice things, like being able to alter pitch of a recording.
Puppy previously had XS recorder/editor, Snamp sound player and a mixer GUI. I have now added a tone generator, a levelmeter, and a new more powerful player developed by Tom Wilkinson and called tomAmp. These are all Tcl/Tk applications and designed to use the Snack library.
The kernel is upgraded from 2.4.27 to 2.4.29. This is intended to be in Puppy 1.0.4.
Although the latest release of the 2.4 series is 2.4.31, I was only able to find a NTFS patch for 2.4.29, so this has constrained the choice of upgrade. I have compiled the kernel with both framebuffer and acpi enabled.
Kirk_22 posted a bug report on the Forum, about the multi-session CD
not saving at end of session, due to the directory hierarchy being too
deep. Kirk also found a solution, to use the "-D" option to mkisofs,
which disables "deep directory relocation".
The documentation for mkiso lists this as a bug:
"Does not properly read relocated directories in multi-session mode when adding data."
The ISO9660 standard supports directory depth of 8 only, so mkisofs relocates the deeper directories and maintains a special file, RR_MOVED, to track this. However, this does not work for multiple tracks.
The solution is the "-D" option, which turns off deep directory relocation, but this violates the ISO9660 standard. It appears to work though, so I have put the "-D" option in permanently.
Note, Kirk only got this error when he installed some of the larger
PupGet packages. These get stored into /root/.usr/, and become greater
than 8 levels deep.
Syslinux has been upgraded
to version 3.08. This version fixes a problem that was reported on the
forum when trying to boot Puppy from a particular USB drive, I think it
was the Cruzer brand. This update will be in Puppy 1.0.4.
is a fantastic text-mode web browser. ELinks can run without the X
server, but works very nicely in a window, with superb mouse support.
ftp... and more. The home page is http://elinks.or.cz.
ELinks version 0.10.5 is now in Unleashed and will be available as a PupGet package for Puppy 1.0.4.
The book-keeping program Grisbi has been upgraded from version 0.5.3 to 0.5.7. Again, this will be in Puppy 1.0.4.
A step forward for printing. Those of you who have been following
the saga of printing on this news page, may recall that we developed a
patch to fix Abiword's commandline text-to-Postscript file format
conversion -- that patch has now become an official part of Abiword
However, there was still a problem of Abiword not printing some documents, and documents printing displaced upwards (causing the top couple of lines to be chopped off). I upgraded AFPL Ghostscript from version 8.11 to 8.51 in an attempt to fix this, but the situation got worse, as attempting to use Ghostscript to convert Abiword's generated Postscript to a printer-format file sometimes caused Ghostscript to crash. So, for the release of Puppy 1.0.3 I reluctantly stayed with Ghostscript 8.11.
Anyway, yesterday the Ghostscript developers provided me with a patch, and I am pleased to report that version 8.51 now does not crash.
I don't have access to a printer right now, but printing various documents to file from Abiword (which creates Postscript files), I opened them all up in GsView (the Ghostscript Postscript viewer) and they all look fine. Everything appears to be in the right place, images display nicely, no chopping of the top lines. Looking good!
The Mozilla version in Puppy 1.0.3 is compiled from the "nightly source" of 5th
May. I have now downloaded and compiled the nightly source of 13th June, as
a contender for Puppy 1.0.4. A bug in the "5th May" version is the
image blocking manager does not work, and I was hoping the latest has
cured that ...but it is still broken. So, I've filed a bug report with them.
A warning for people on a dialup connection to the Internet.
Walt H on the Forum has discovered a potential problem with Gkdial, the preferred dialup program. When you start Gkdial, there is a drop-down listbox showing your internet accounts. That is, you can have multiple Internet Service Providers, and you have to create them by clicking the "Add" button. Fine, except that the listbox already has an emtry, called "wvdial" -- please ignore this. Do not select it. It is due to the installation of the WvDial dialup package that we newly placed in 1.0.3 and are experimenting with.
Note, a problem with having different dialup applications is that
they can conflict. Gkdial and eznet are good as they do not conflict at
all, but as we have just discovered there is a problem with WvDial.
GuestToo has created a DotPup package to automatically download and install Puppy Unleashed version 1.0.3:
...note that I uploaded a md5sums file to ibiblio.org, but many of them are incorrect, but GuestToo has created a file with correct md5sums.
A few Unleashed packages were missing from the "pupget_packages-1"
directory on the Puppy download site ibiblio.org. If you have already
downloaded the Unleashed packages (as per instructions given below and
on the Unleashed page), please go back and get the missing tarballs.
There is also a file "md5sums-pupget-packages.txt" with md5sums of all the Unleashed/PupGet tarballs, in case you want to check them.
GuestToo has announced this: 1.0.3 torrent here: http://linuxtracker.org/
(torrent file made by Azureus, installed on Puppy)
Puppy version 1.0.3 released. The live-CD is file puppy-1.0.3-mozilla.iso and is 60.4M. Release notes:
- We wanted a calendar and appointment program that is compact, easy to use, powerful and not tied to just one browser suite. We found ical.
- Puppy now has the full Bash, but Busybox Ash is still retained. Also, the full cp, mkdir and mv replace the Busybox versions.
- There is a great little file find application called Gtkfind. This complements the existing Gtkcat which is more of a disk/CD cataloger.
- Puppy live-CD now has WvDial version 1.42. These are two little analog modem utilities, a dialer wvdial and a detection program wvdialconfig.
Go to the Puppy Help menu for documentation. Later I plan to integrate
wvdialconfig into the Modem Wizard, in particular for its automatic
determination of modem initialisation string -- this feature can help
you if Gkdial won't dial-out. See notes below.
- The Mozilla suite is now version "1.8beta1.3" and does not have the Calendar module (which wasn't working properly anyway).
- Puppy has moved back, from a 2.6 kernel to a 2.4 kernel (now using 2.4.27, the same as used in Puppy 1.0.1). The reasons are explained below.
- MULTI-SESSION CD: Support for the multi-session live-CD is improved. This enables you to boot from CD, run totally in RAM then save everything back to CD, no hard drive required. What you have to do is burn puppy-1.0.3-mozilla.iso as multi-session. Instructions to do this (and explanation about the multisession CD) are given here. Then, the first time booting, a menu will appear and press the "5" key then ENTER key, within the 10 second timeout. Option 5 does not appear on the boot menu. On subsequent boots, just accept the boot menu default (which is option 1).
- Printing is still a problem with Abiword. I went through a process of upgrading AFPL Ghostscript and Gimp-Print-IJS to latest versions, which fixed some things, broke others. So back on the previous versions. Printing is going to be totally overhauled soon. See note on printing below.
- Keyboard bindings for MP console text editor have been improved.
- UPGRADING: As usual, very
simple. If you have already been using an earlier version of Puppy,
just bootup the latest live-CD, and that's it, you've upgraded. If you
have installed Puppy to USB Flash drive or hard drive, run the
appropriate install script again (found in the Setup menu) and choose
"Upgrade" rather than "New installation". Be sure to run the CD/DVD
drive Wizard and make sure that SCSI-emulation of the burner drive is
turned on, if you want to burn CDs/DVDs.
So one might ask, what does the 2.6 kernel have going for it? The 2.6 kernel is much bigger, so that's a minus point. It has what is called a "preemptive kernel" which is supposed to give slightly snappier user interface response, though I experimented with it disabled and can't see any difference -- but then, Puppy doesn't have a sluggish user interface to start with, unlike many other distros. Besides, the "preemptive" feature is available as a patch for the 2.4 kernel if wanted. Improved NTFS support? -- that's a laugh. ATAPI CD/DVD burning? -- that is also backported to the 2.4 kernel. The 2.6 kernel has abandoned the UMSDOS filesystem -- another minus point. Improved USB support -- finally a plus point!
Puppy Unleashed can build a live-CD with either 2.4 or 2.6 kernel. So, we can watch 2.6 development and move up at any time. For now though, it's back to the 2.4 series.
With regard to printing, the sad story is recorded below. The problem currently is that Postscript generated by Abiword is not compatible with AFPL Ghostscript 8.11. Upgrading to Ghostscript 8.51 improved compatibility but introduced another problem with the IJS drivers. So, staying with 8.11 for now. There is a "plan of action" to tackle this, hopefully a fix will be in place for the next Puppy release. For now, if Abiword does not print, or prints wrong, open the document in TextMaker and print from there.
I would like to thank GuestToo for finding the WvDial 1.42 binary, as we can't compile it. We now have a mechanism to help people to test their modem, other than the Modem Wizard, and discover a suitable initialisation string. When Gkdial is setup, it creates a file in /etc/ppp/chatscripts/ . One of the lines in that file has this in it:
"" "ATZ"Though, you will find something different from "ATZ" in the second field. "ATZ" is the initialisation string that works on my modem. The wrong string in here can cause your modem not to dial-out or maybe not connect after dialing. If you have trouble with dialout, try "ATZ", failing that try the wvdialconfig program.
Puppy now has three different analog modem dialers: Gkdial (GUI application), eznet (console) and Xeznet (GUI for eznet) and now wvdial (console).
Puppy "bare bones" version 1.0.3 released. The live-CD file is puppy-bare-bones-1.0.3.iso and it is only 39.0M. Bare-bones is available for download at www.nstsoftware.com/puppy, courtesy of Normen Stengel of NST Software. Release notes:
- "Bare bones" is intended for people on dialup who cannot manage
to download the full 60M live-CD. Note, there is the final alternative
of purchasing a CD, which also has Unleashed and some source.
- "Bare bones" is a fully functional Puppy, but without the major applications. All the library files, all utilities, most small applications, are there. Large applications such as Abiword and Mozilla are missing. There is Dillo for web browsing and internal help viewer.
- Everything is there to connect to the Internet, and the PupGet package manager can be used to download any applications you want. Choose whatever web browser you want: Mozilla, Firefox or Opera!
- I built "bare bones" from Unleashed, and booted it to check that it basically works, however, there may be quirks -- if you discover any, let us know on the Forum! One "quirk" is that Puppy currently requires Abiword for full printing functionality, so it would be wise to download Abiword with PupGet.
- Unleashed now offers choice of kernel when creating a custom live-CD. Currently the choice is 2.4.27 or 22.214.171.124.
- Installation instructions are same as previous version, see notes further down this page. It is preferable if you start afresh, expand the core tarball into a new directory and redownload all packages from ibiblio.
- The first time that you use Unleashed, the createpuppy build script has lots of questions -- just pressing ENTER every time will get you through unscathed.
- An introduction to Unleashed is to be found here.
As mentioned above, printing is going to receive a lot of attention. The main problem is Abiword.
Just today I finally purchased some wireless networking hardware, a Billion ADSL modem and router and a Netgear PCI wireless adapter card. Now I am going to join the discussion with the guys on the Forum who are into this and we will work toward making wireless setup in Puppy a simple process.
Ha ha, I recompiled the Mozilla 1.8beta source, same source as used
for the Mozilla in Puppy 1.0.2, this time without the Calendar module.
The uncompressed size is now 32.9M. Compare with the sizes noted on
3June05 below -- the Calendar module is about 2.8M. So, ical is about
one-fifth the size.
Well, Pup v1.0.3 is on track for release by end of this week. Probably.
For a long time I have been wondering what to do about a "calendar"
application for Puppy. Puppy does have Xcalendar, which is really basic
and Agenda which is a simple appointment/event reminder. The Calendar
module of Mozilla is not working in the 1.8 series, besides, it seems
to me to be far from intuitive (but maybe that's just me).
The current major calendar programs all have their roots in a program called ical. Mozilla Calendar can still import ical data, but I haven't checked on exporting. What's great about ical, from Puppy's point of view, is that it is written in Tcl/Tk and total size uncompressed is 690K -- which is undoubtedly much less than Mozilla Calendar (I don't even have to check -- anything is smaller than Mozilla!). Ical is also real easy to use.
So, I've created an ical package for Unleashed and it will probably be in Pup 1.0.3. It will give us a powerful calendar application that is not dependent on any browser, so it could be in an Opera build of Puppy for example.
&%$#@*, I'm feeling very frustrated right now. After all my
printer upgrades, one of my test printers just prints garbage, but
works fine printing from Pup 1.0.2 and earlier. Also there's a report
on the forum of Pup 1.0.2 with the 2.6 kernel corrupting a NTFS
partition, whereas the old Pup 1.0.1 with its 2.4.27 kernel does not.
So, I am very seriously considering using a 2.4 kernel for Pup
1.0.3, and back-pedalling the printer packages upgrades somewhat.
Regarding printing from TextMaker, the commandline displayed in the
print dialog box is "lpr -r %", but in our case lpr is a link to pdq,
which is a lpr-lookalike except that it can't handle the "-r" option.
So, remove the option, like so: "lpr %".
Lots of news today!
Ghostscript, Gsview, libijs and Gimp-print-ijs have all been
upgraded, to be able to print from Abiword ...or at least attempt.
These upgrades have already been announced below. My Printer Wizard
creates a PDQ configuration file that feeds the "-ProcessColorModel"
option to Ghostscript, which worked for gs version 8.11, however gs
version 8.51 now used in Puppy suffers from a segmentation fault. As a
quick hack I removed this option, but this needs to be looked at, to
restore output color control.
Printing from Abiword is still a problem, despite all the upgrades.
I can print simple text files, but a simple document with a couple of
small images causes Ghostscript to crash. The problem is the format of
the Postcript file that Abiword is feeding to Ghostscript.
My problem file is "testdoc.doc" and is to be found in Puppy in /usr/share/text/ -- it is a little test file to confirm the a wordprocessor is able to import a MS Word file. It is also uploaded here -- as I'm going to report this to the Abiword developers.
I opened testdoc.doc in Abiword then exported it to testdoc.html
(html 4.01) then opened it in Mozilla, and it printed okay. Yep, no
problem with printing from Mozilla!
I fired up PupGet package manager and installed TextMaker word processor. File testdoc.doc opened up and printed okay.
I've filed a bug report with Abiword developers. For Pup 1.0.3
though, looks like printing from Abiword will still be "iffy". So, if a
document won't print, open it in TextMaker and print from there!
Leafpad text editor has been upgraded from version 0.8.0 to 0.8.1.
Note that in Pup 1.0.2, PRINTER environment variable is set incorrectly
in /etc/profile. If set, it should be set to the printer name. However
for Puppy it should not be set at all, as applications should call the
"lpr" command without the "-Pprintername" option, so PDQ will use the
default printer ...I don't know if there is a "printername" that would
just tell lpr to use whatever is the default printer ("lp"?). I had to
hack the source code of Leafpad to get this to work right -- I'll
inform the developer about this.
I announced below that Bash is now in Puppy, but so still is Ash.
Ash is still the default, so when you start an rxvt window, it will
still be running Ash. I'm a little bit hesitant about Bash taking over
fully at this stage. The technical term for this is what you Americans
would call a "half-assed" installation of Bash.
Thanks to Bruce B and Jesse on the Forum, who alerted me to a
problem booting the live-CD if an audio CD is also inserted in another
drive. Puppy may detect the music CD as being multi-session and think
that's a multi-session Puppy CD! I've modified rc.sysinit to detect
For people on dialup, the wvdialconfig
program is very useful, as it can detect all sorts of stuff about a
modem, including guessing suitable initialisation string. Wvdial is a
PupGet package, but that's a "cart before the horse" situation.
wvdialconfig is a utlity inside the wvdial package, but there is an
enormous library file needed by wvdialconfig. All I really want is
wvdialconfig, without that huge library, then I can put it into the
live-CD. The latest wvdial, since version 1.50, has an enormous
dependency library called Wvstreams -- I don't know how to compile that
as static, so that wvdialconfig can just get the bits that it needs
from the library. There is an older version, 1.42, that does not have
the separate wvstreams library, so we would probably get a much smaller
wvdialconfig ...except that I can't compile it and it is C++ and I
don't understand the error message.
Any C++ wiz like to help out here? Here is the older package: wvdial-1.42.tar.bz2.
John Derrickson, known as JaDy on the forum, has a fascinating implementation of Puppy that he calls PupWin. You can download, install and start Puppy from within Windows. Only Win98 so far. Here is his URL:
-- it's an ad-supported web site, so if you object to girly pics don't go there.
JaDy is now working on a version for WinXP.
I worked with bruce B and we have tidied up the keyboard shortcuts for the console text editor MP. We now have more standard shortcuts, like ctrl-x to cut selected text, rather than MP's default of ctrl-t.
A little note about Mozilla. Version 1.7.8 GTK1 is about 40M
uncompressed, 1.7.8 GTK2 is 42M and 1.8beta GTK2 is 35.7M.
They have the same features, all with Flash and Gxine plugins, but the
1.8beta build has also got SVG support.
So, you can see one reason why I want to use the 1.8.x series! I currently have 1.7.8 GTK1 build in Puppy, intended for Pup 1.0.3. Notice how much bigger the GTK2 build is! ...why? There is one file in particular, libgklayout.so that is about 2M bigger in the GTK2 build -- I have a theory about this. But anyway, 1.7.8 GTK1 is going into Puppy (I'm using it right now) -- the only slight disadvantage is non-antialised menu and dialog-box fonts ...big deal! (page rendering is still anti-aliased, which is what counts).
Note that Pup 1.0.2 has Moz 1.8beta, but the Calendar module doesn't work properly ...so now we have to wait on the developers before we can go back to 1.8 and bring Puppy's size down a bit.
When building a custom Puppy with Unleashed, there is now a choice
of kernels. Currently on offer are 2.4.27, 126.96.36.199 and 188.8.131.52, as
used in Puppy 1.0.1 (and earlier), 1.0.2 and 1.0.3 respectively. There
is currently a restriction that you must be running the same kernel
when the "createpuppy" build script is run -- in other words, to build
a live-CD with 2.4.27 kernel, you must be running Puppy 1.0.1 when you
execute the build script.
I built a 2.4.27-based live-CD and tested that it booted, but have not tested it any further -- the intention has been that all the scripts in Puppy are supposed to detect if a 2.4 or 2.6 kernel is running and adapt accordingly, but I have been focussing all attention on 2.6 development -- anyway, if you do build a "retro Puppy" with 2.4.27 kernel just let me know if any script misbehaves.
This is in the future, 1.0.3 not yet released!
Okay, it has finally happened. I decided to put Bash
into Puppy. We still have Ash, which is part of Busybox, and /bin/sh
still points to Ash. However, any scripts that reference /bin/bash will
now run the full Bash.
I have also replaced the Busybox cp, mkdir and mv programs with the full versions. Previously, Puppy did have the full cp, but it was named cp-FULL. I have retained the name cp-FULL so as not to break scripts that use it, but cp-FULL is now a link to cp.
Thanks to John Murga for creating a cut-down Perl package (version 5.8.0) for Puppy. See his announcement on the Forum: http://www.murga.org/%7Epuppy/viewtopic.php?t=53 . John has put it into his "Puplet" 50M build of Puppy, see announcement further down this page.
I've put it into Unleashed, so it will be installable with the PupGet package manager when Pup 1.0.3 is released.
Puppy has acquired Gtkfind, thanks to Bruce B on the forum: http://www.murga.org/%7Epuppy/viewtopic.php?t=383&highlight=gtkfind
Now that John Murga has created a small Perl package for Puppy and
included it in his "Puplet" 50M Opera build of Puppy, there is an
opportunity to improve printer support. Linuxprinting.org has a Foomatic
printer configuration system with online database that supports PDQ but
it needs a Perl program running on the local PC. I have added this as a
high-priority task to the Developers page.
Mozilla has been "upgraded" to version 1.7.8. Puppy was using a beta
release of version 1.8, which has a few problems, not least of which is
that the Calendar module doesn't work. I know some guys on the Forum
who will be mighty pleased to know that we now have a working Calendar
I compiled Moz 1.7.8 to use GTK1 rather than GTK2, and I also left
out the Gxine plugin (Flash plugin is still there). GTK2 gives
antialiased fonts, but that only applies to the menu and dialog boxes,
as Mozilla still does anti-aliasing for web pages. The great advantage
of using GTK1 is noticeably snappier performance.
I don't think that there is any downside to leaving out the Gxine plugin, as Mozilla will still recognise the filetypes and launch Gxine when appropriate ...but, I'm not 100% sure about what capability is lost by not having the plugin.
Another reason to go for GTK1 and leave out Gxine is for maximum
flexibility for creating custom Puppies with Unleashed. However, if it
turns out that users absolutely must have antialised menu fonts, then I
can go back to a GTK2 Moz.
There has been much discussion recently on the Forum about choice of
distro for compiling applications and kernel for Puppy, and even the
idea of a "fat Puppy" with all the compiling infrastructure.
To clarify what is developing in this area, I have uploaded preliminary "How to compile applications for Puppy "and "How to compile the kernel and drivers for Puppy" pages, with advance information related to the upcoming 1.0.3 release and the new Puppy Sourcerer source code compiling environment.
I must emphasise that these pages are preliminary and will be fleshed out a bit more by the time Pup 1.0.3 is released. Also, I'm not sure, but if kernel 2.6.12 gets released soon, I'll go for that. Currently I'm testing 184.108.40.206.
Just a side note, as there is still interest in the 2.4 kernel, I
plan to support it in the next release of Unleashed. There will be a
choice in the "createpuppy" build script, which kernel you want to use.
That's the intention anyway!
Puppy enthusiast Pizzasgood
has created a custom Puppy based on version 1.0.1. This version uses
kernel 2.4.27, and the latest official Puppy, version 1.0.2, uses
kernel 220.127.116.11. Some people are experiencing trouble with the new
kernel on old hardware. There also seems to be a problem with wireless
networking, well 1.0.1 had troubles also, but less so!
The Forum page with download links: http://www.murga.org/~puppy/viewtopic.php?t=374
Some improvements to the PupGet script. In particular, there were
some issues with uninstalling of alien packages.
Another package for Unleashed: Gambas, a Basic
language programming environment.
Packages added to Unleashed are nenscript, a
text file to Postscript converter, and Galculator,
a scientific calculator. The former will be useful for builds of Puppy
that do not have Abiword, but the conversion script "lprshell" will
have to be modified -- perhaps autodetection could be added into the
script, so it will use Abiword or nenscript, whatever is available.
More progress with printing. Puppy enthusiast Jonas
has modified the source code of Abiword to accept a filetype override
on the commandline. The problem is described further down this page. In
a nutshell, Puppy uses Abiword in commandline mode to convert text
files to Postscript, required for printing. The override ensures that
this will always succeed. Note that script lprshell was modified to
incorporate this feature.
Together with the updated Ghostscript, required to view and print the Postscript files generated by Abiword 2.2.7, things are looking good. The only thing remaining is I have to test that it does all work together, and we can actually print...
Joe's window manager JWM
has been upgraded to version 0.23. This fixes a couple of bugs. JWM is
tiny and fast. Joe's homepage is www.joewing.net.
For anyone keen to help out with Puppy development, we have two
urgent requirements. These require someone skilled in C or C++ coding:
John Murga's 50M Opera build of version 1.0.2 Puppy, unofficially
codenamed "Puplet" or "Poodle" (we haven't yet settled on what it will
be called) is now available. Here is John's release notice:
Well I finally released the new 50Mb Puppy ...
It can be found at :
It is pretty late here so I'll just comment on the highlights :
+ Opera version, uses Opera for mail too, so Sylpheed is out.
+ Full set realmedia codecs (so I can watch Euronews).
+ Textmaker replaces AbiWord purely due to the enhanced Word compatibility.
+ VIM installed as default VI handler
+ PERL and a Puppy friendly version of NdisWrapper.
+ A couple of Guesttoo's packages, like "top", "undeb", "unrpm" and "torsmo".
+ Improved setting for RXVT (A decent scrollback, smaller font, etc).
+ New splash screen (that does not scare the kids any more).
+ Boot options allow booting with ACPI off (so it works on my laptop).
+ A cool background contributed by Rhino ;-)
+ It is about 1Mb below the (50Mb) Mini-CD limit !!
+ XGalaga and a few more optional packages where added.
+ All the TCL libs are included to address issues with the last build.
+ And some other stuff I cannot remember right now ...
Known issues :
+ I didn't include TCC although I think there may have been enough room.
+ Spent a lot of time trying to get Siag to work reliably, but it kept on crashing
during use for no reason.
+ So Siag has been replaced with ABS as the spreadsheet, which really annoys me.
+ Some spelling errors
Note that John's build is what we call a "big image", in that it has
the file usr_cram.fs inside file image.gz. The outcome of this is that
a PC with at least 128M RAM is required to run it.
AFPL Ghostscript has been
upgraded from version 8.11 to 8.51, The IJS Ghostscript printer support
library to version 0.35, the Postscript to anything converter Pstoedit upgraded to version 3.40,
and the Postscript and PDF viewer Gsview
upgraded from 4.5 to version 4.7.
I am currently evaluating Mandrake
(aka Mandriva Limited Edition 2005) as the next compile environment for
Puppy, to replace Mandrake 9.2. The above apps were compiled on
Mandrake 10.2 and work okay in Puppy.
I evaluated the stock kernel from Mandrake 10.2 in Puppy, and it
works except that I cannot mount USB drives. It seems that the kernel
source has been patched in such a way that it needs something, I don't
know what, to get USB to work properly. So, that was a dead end. Next
thing I will do is see if I can compile a pristine kernel and get it to
work in Mandrake.
The release notes for Pup 1.0.2 reported a problem with Ghostscript
not being able to handle Postscript files generated by Abiword v2.2.7.
Well, the new Ghostscript seems to be handling them fine, but I found
another problem with Abiword.
Puppy has a little script called "lprshell", used to convert text files to Postscript (as we need Postscript format to print), and it uses Abiword to perform the conversion -- as Abiword can be run from the commandline only to do file conversions. However, Abiword often fails with the error message "Error importing file". Abiword has automatic file-type detection, and if I feed in, say "myfile.txt", Abiword will try to determine its filetype, but will ignore the extension. I was finding that Abiword was failing to convert plain text files, like myfile.txt. Running Abiword graphically, the file-open dialog allows an override, so I can specify that the document is plain text, then it will open. However this override is not available on the commandline.
So, I have just joined the Abiword mail list, and I will lobby them to add import filetype override to the commandline. Note, there is a "--imp-props" option that looks like it is intended for this, but the functionality has not been implemented. Anyone know an Abiword developer?
Great news. A bit further down this page I have given instructions
how to download and install Puppy Unleashed. Well, GuestToo, developer
of the DotPup package installer and very active contributor to the
Forum, has created an Unleashed installation script that does it all
automatically. For further info and download:
version 1.0.2 is released. The live-CD ISO file is named
puppy-1.0.2-mozilla.iso and is 60.9M. Release notes:
- The main news for this release is the migration from the 2.4 kernel to the 2.6 series, specifically 18.104.22.168. A lot of under-the-hood work went into achieving this.
- I have upgraded Abiword from version 2.0.12 to 2.2.7. There are significant improvements, including improved stability, better MSWord import, and text flow around images. I have also included more plugins: import/export Abiword documents compressed with bzip2, xsl-fo files, XHTML/HTML, WMF image support, and embedded editing of images (using mtPaint).
- The install-to-hard-drive script previously only created a boot floppy, but now Grub installation on the hard drive is an option. Feedback is that it works well.
- There are some more PupGet and DotPup packages. See notes below and on the DotPup wiki page.
- The infrastructure has been put in place for more rigorous handling of updating, that is, when the user upgrades from one version to the next. A special boot script, /etc/rc.d/rc.update has been created for this.
- mtPaint has been upgraded to 0.94, Leafpad to 0.8.0, Gftp to 2.0.16.
- Puppy has acquired RemoteDesktop, a GUI frontend for rdesktop, which in turn is a Remote Desktop Protocol client, for running GUI applications remotely, in particular Windows applications.
- Numerous bugfixes, especially to the PupGet script.
- The 2.6 kernel does not use SCSI-emulation of IDE CD/DVD drives
for burning. This has required a lot of script changes, and Gcombust
needed a helping-hand to get it to work. When Gcombust is started, a
help window now pops up alongside with advice how to properly configure
for successful non-SCSI burning.
- Printing is slightly broken in this release. The problem is that the new version of Abiword generates Postscript files that Ghostscript cannot handle. I expect Puppy 1.0.3 to have the latest Ghostscript, which should fix the problem. It was not done for this release as Ghostscript is at the heart of Puppy and it needs to be done very carefully.
- There is no longer a separate multisession ISO file, as Puppy is able to detect if the ISO file was burned to CD as multisession or not, and behave accordingly. This is a work-in-progress however, see note below.
- There was a problem with a serial mouse in 1.0.2RC. It got setup okay the first time, then wasn't working after a reboot. Should be fixed now.
- UPGRADING: If you have been testing version 1.0.2RC (Release Candidate), I recommend that you edit /etc/puppyversion and put the version back from "102" to "101", before booting the new CD. This will enable the update script to run again. Please read further down this page about how /usr folder is purged at an upgrade.
In version 1.0.2RC, at bootup I used the "cdrecord" program with the
option to try and detect if the ISO file was burned multisession or
not. The problem is, this causes odd effects on some systems, like the
drive tray opening then closing and one person reported it locked up at
that point. So, we need a simple little program to test if the CD is
closed or open for further burning, that does not cause these "side
effects". In the meantime, I have substituted the "disktype" program
which will detect if the CD has more than one track stored on it... the
first time the CD is booted, it will be a normal live-CD, but when
running, type this in a terminal window:
# cp -f /etc/rc.d/rc.reboot-cd /tmp/rc.reboot
...when you end the session, it will be saved to CD (optionally) and
from then on the CD should behave as multisession, that is,
automatically read-from at bootup and save-to at shutdown. This is all
assuming that you burned the ISO as multisession!
However, the multisession live-CD is still considered to be alpha-quality and under considerable development.
50M Opera build of Puppy should be available soon. I'll announce it
here when it is available.
Unleashed version 1.0.2 released. This
time it is not in the
form of an upgrade file, as there are too many changes. However, it is
not one big file either, but many little ones, which dialup people
Go to the ibiblio.org Puppy download site, and download
"puppy-unleashed-core-1.0.2.tar.gz" to a spare ext2/ext3/reiserfs
partition with at least 500M free space. Get rid of any existing
directory named "puppy-unleashed" to avoid conflict. Expand it:
# tar -zxf puppy-unleashed-core-1.0.2.tar.gz
After expansion, you will have a directory named "puppy-unleashed"
and inside that you will see a directory named "packages". The packages
directory is empty, and you have to download all the files from the
"pupget_packages-1" directory on ibiblio.org. You could use wget or
gFTP to do this.
The above picture shows how to setup anonymous FTP using gFTP. Use
your email address for the password. Right-click on the right-hand pane
to select all files for download. One thing I recommend is that you do
a visual check of the downloaded file-size of files in the left-pane
and see that they match the sizes in the right-pane.
The local packages directory will then be full of .tar.gz files. Now
# cd puppy-unleashed/packages That is, change into the packages directory if not already.
The file expandtarballs.sh is a script that should have got
downloaded along with all the other Unleashed packages.
Unleashed is an alternative for people on dialup Internet
connection, where the 61M live-CD ISO file is too much to download,
with the extra great advantage that you can create your own custom
To use Unleashed however requires familiarity with the Linux
commandline. Note, I still have a CD for sale with as much source as
on the CD, for people who just want to get it all in one go.
There are some more PupGet packages, that will be available for
download when v1.0.2 is released. They are Gimp v2.0.6
(text editor), and Smalledit
v3.17.14 (text editor). A couple of others released recently are Rebecka v0.9.15
(text editor) and Wvdial
v1.53 (Internet dialup utilities -- has a great modem detection
The install-to-usb script was broken, as the 2.6 kernel does not
support the umsdos filesystem.
Now fixed. This will of course be in version 1.0.2 final, due out in a few days.
I'm finalising the boot code for the multisession live-CD, version
1.0.2. In particular, there is now a smooth upgrade from a previous
multisession live-CD. The way it works is very simple: you download the
latest ISO file, puppy-x.x.x-mozilla.iso, burn it to CD with the
multisession option set in the burner program ("-multi" and "-data"
checkboxes in Gcombust), then boot up with the new CD.
When the new CD boots, it will see that it is new, and will ask if you have a previous multisession CD. If you answer in the affirmative, you will be asked to insert it, and all your old personal data will get loaded into ramdisk. From then on, you use the new CD. Simple, simple, simple!
Note, the previous upgrade mechanism is still there. If you don't
have a previous multisession CD, you will then be asked if you have a
"pupxxx" file already on the hard drive. That would be there if you had
previously been using a "normal" Puppy live-CD. If you answer in the
affirmative, then all data is read from it, and from then on you will
only need the multisession CD.
version 1.0.2RC has been uploaded.
The "RC" means Release Candidate, and the official release will follow
shortly. Version 1.0.2RC is for the Puppy-enthusiasts to test and
report any problems.
The file is puppy-1.0.2RC-mozilla.iso, size is 60.9M and it is to be
found at http://www.nstsoftware.com/puppy/.
When you boot this new version, one of the boot scripts,
/etc/rc.d/rc.update, will purge "strange" files out of /usr/, so look
in /root/tmp/USRREMOVED/ to see what got removed. Removed files are
logged in the text file /root/tmp/LOGUSRREMOVED.txt.
Note, in the future, any packages that install into /usr/ may register themsleves with the PupGet package manager to avoid getting purged at a version upgrade -- I posted information about this to the Forum, in the Cutting Edge section.
Puppy is now running the 22.214.171.124 kernel, and SCSI-emulation of IDE
CDs does not work (it is supposed to work but is broken in this version
of the kernel). Therefore, run the CD/DVD drive Wizard and disable
SCSI-emulation, which will require a reboot -- after the reboot, run
the Wizard again and check that the drives are chosen correctly.
Note, I consider the 126.96.36.199 kernel to be temporary only, and will
upgrade to the 2.6.12 kernel as soon as it is released. One reason is
the broken SCSI-emulation (although that is no longer needed for
burning CDs), another reason is ACPI is not fully functional.
There is no longer a separate multi-session ISO file, as they are
now merged into the one ISO file. At bootup Puppy is now able to detect
if the ISO file got burnt to CD as multi- or single-session. However, I
need to do a bit more work on the multi-session boot scripts, so give
it a miss for this "RC" release. The final version, due out hopefully
in a few days, should have this sorted out.
The biggest change from the previous version is the move to the 2.6
kernel. There are so many differences in how the modules work, so there
may be some issues still to sort out. Read the notes below to see other
changes. Make Puppy jump through hoops, let me know what happens.
There will no longer be a separate multisession version of Puppy.
That is, there will only be one ISO file, for example
puppy-1.0.2-mozilla.iso, and it is made into a multisession version
simply by burning to CD as multisession. At bootup, Puppy is able to
determine whether the ISO file was burnt to CD as multisession or not,
and behave accordingly.
The latest version of Puppy, 1.0.1, has a problem booting from
live-CD on a PC with 128M RAM, no Linux swap partition and only a
single NTFS partition on the hard drive. The ramdisk was getting
overfilled, due to the fact that Puppy was unable to create a pup001
file and had to run totally in ramdisk. I have made the ramdisk a
little bigger so v1.0.2 should boot okay.
I've been working on how files are updated when a new version of
Puppy is booted. It is far from a simple situation, but I have been
attempting to get it organised. There is now a specialised script,
/etc/rc.d/rc.update, that carefully performs any required updates. One
challenge is that /usr is now writable, and rc.update attempts to
prevent clashes between packages in usr_cram.fs (read-only mounted on
/usr), PupGet installed packages, and arbitrary files saved in /usr by
the operator -- files seen as potentially troublesome are moved to
I downloaded the Mozilla nightly source of 4th May and compiled it.
Apparently the Calendar module is now working, but I haven't tested it
Sigh, I have had to take Beaver back to version 0.2.7.
Unfortunately, v0.3.0 is too unstable -- I've been using it for about a
week as my main text editor, and every now and again it crashes.
Great news, we have a new home for the Puppy Linux Discussion Forum,
thanks to the generosity of John Murga (who also has developed a
version of Puppy that fits in a 50M credit-card size CD). The new Forum
is hosted on John's site: http://www.murga.org/~puppy.
Leafpad text editor has
been upgraded from version 0.7.2 to 0.8.0. The main new feature is
support for printing.
Puppy has finally embraced the Grub
boot manager! Although Puppy runs fine off the live-CD, and in fact
that's how I normally run Puppy myself, there is a great deal of
interest in installing the Pup onto hard drive. Puppy does have an
install-to-hard-drive script, but it only creates a boot floppy disk.
Thus, there has been on-going discussion on the Forum on how to install
and/or configure Grub or Lilo to boot Puppy on a hard drive. There have
been many success stories and some HOWTOs written.
Peter Siag recently put together a little package and script to make it extra easy to install Grub, and he has contributed a HOWTO to the forum. This has inspired me to finally put something into the live-CD, so now we have the install-to-hard-drive script that can still create a boot floppy but now also can install Grub on the hard drive, meaning that the PC can boot Puppy without needing a floppy.
Peter showed how easy it is, but I also wanted a more sophisticated
Grub installation and configuration tool, and I discovered Grubconfig,
a Bash script written by Kent Robotti (which in turn is based on
Liloconfig written by Patrick Volkerding). I hacked this script to work
in Puppy and use Xdialog rather than dialog. Also, Grubconfig is
integrated with the install-to-hard-drive script.
it works great -- my test PC has /dev/hda1 a vfat Windows partition, /dev/hda2 is ext2, and Grubconfig installed Grub to the MBR (Master Boot Record) of the hard drive and created a menu that recognised both partitions, almost all by just clicking on default choices. Fantastic! -- and oh man, does Puppy boot fast, like about 10 seconds from Grub menu to window manager fully loaded.
We have moved to a new Forum, at http://puppy.mypunbb.com/, but the old Forum, at http://www.goosee.com/puppy/sforum/simpleforum_pro.cgi, is still there. There's heaps of useful stuff on the old Forum, so go there but please treat it as read-only and post any questions to the new forum.
Note that we may also be setting up another specialised "developers" forum.
Dave the Administrator and I have worked out why the forum may be having trouble, so I have reinstated it and we will "keep an eye on it", see how it goes.
I have temporarily disabled the Discussion Forum, due to this email from my host:
Barry,   The SimpleForum Pro cgi
script on your account is causing some big problems with the server.
times during the day the server has been getting overloaded and the
list usually shows about 10-20 copies of the script running with a very
cpu usage. Something needs to  be done to dramatically reduce
impact as I've got other customers complaining. Recently it
been getting severe enough to require a web server shutdown. I'm not
how long it has  been going on, but it seems odd for it to be
that much cpu for the level of traffic.   Please let me know
have a solution as soon as possible!   Thanks,   Dave
Hagewood ArrowWeb Administrator
We have had many problems with the forum. I will be urgently
alternatives, and hopefully we will be up and running soon. I will try
setup all messages from the old forum as read-only, and even in a
downloadable single file.
Beaver text editor has been
upgraded from version 0.2.7 to 0.3.0. The change is from the GTK1 to
library, but more importantly it fixes a serious bug -- 0.2.7 could
display text files with 7-bit ASCII characters. If a a file has a
just one character, in it that is 8 bits, that is has the 8th bit set
bit-7 if you want to get technical), an empty window displays. Most
files are okay, but we do run into this problem occasionally, and have
resort to Leafpad.
On the other hand, 0.3.0 has one small shortcoming -- the titlebar of the window displays the name of the file, but not the full path as 0.2.7 does. A small thing maybe, but I liked to see the full path. If anyone is interested, this could be a simple project. Note that the beaver website has v0.3.1 latest, but we aren't using that as it has extra library dependencies.
Note also, GuestToo has created a DotPup package of Beaver 0.3.0, so you can try it out before Pup 1.0.2 arrives ...let us know if you discover a bug.
The install-to-hard-drive-Option-2 script has been expanded, thanks
Peter Siag who posted a Grub HOWTO along with some files on the Forum.
install-to-hard-drive script is to be found in the Setup menu, and
in the script is to install Puppy into his own partition in the hard
taking over the partition entirely, with no ramdisk being needed.
Previously, the script only created a boot floppy disk for starting Puppy. Peter has a modern PC that doesn't even have a floppy disk, besides, many people would like to do a full install, perhaps with Puppy as the only operating system on the PC, and not need a floppy to boot.
The next release of Puppy will have Grub on the live-CD, and the h.d. install script will offer to install Grub -- that is, boot floppy and Grub will both be options. If you have a PC with a mission-critical XP installation, or in any way unsure, do not try to install Grub. This option is currently for the highly computer-nerdy types. Stay with the safe floppy option.
Note, I haven't actually tried it yet... I need to get hold of an old PC that I can sacrifice. "grub" is actually a commandline executable that is executed and the user can then install it -- this is an area where we can probably introduce a bit more "newbie" guidance in the future -- after Pup 1.0.2 is released, Peter and others might like to try the Grub install option and perhaps refine it.
mtPaint has been upgraded to version 0.94. There are many
features, including text insertion. mtPaint has got so good I have now
it the default paint program, instead of Xpaint (which is still there)
now, click on an image thumbnail in Rox file manager and mtPaint will
mtPaint also has a screen capture feature, and this is added to the "Graphic processing" menu, joining the Xpaint screen capture -- the difference between the two is Xpaint capture has a selectable area whereas mtPaint capture takes a snapshot of the entire screen.
mtPaint is also setup as the embedded image editor for Abiword -- the next release of Puppy will have Abiword v2.2.7, and any images in a document it can be edited by mtPaint, in-place, and you can actually edit the image in mtPaint and view the changes in realtime in the document.
Bugfixes for the PupGet
Installing packages sometimes put files in the wrong place or didn't
files, and uninstalling a package didn't always properly uninstall it.
also messed up the window manager menus, now fixed. There's improved
for installing and removing local packages, which is good for
test an Unleashed package before submitting it to me. The script now
sure that the chosen download site is reachable, and if not will ask
check your Internet connection or choose a different download site.
Gftp has been upgraded from
version 2.0.9 to version 2.0.16. I was getting a segmentation fault
version 2.0.9, when I clicked on a certain very strange symbolic link
ftp site, however that version is usually quite stable. The upgrade
have fixed it.
I have uploaded the following PupGet packages to Ibiblio: qt-3.3.4,
libxslt-1.0.33, tcc-0.9.22. The first two are library packages required
use Scribus, VYM, Qhacc and Cutecom, that are also PupGet packages. All
these packages, with the exception of TCC, are already in the official
1.0.1 live-CD, however John Murga's special 50M live-CD doesn't have
no problem, just use PupGet to download and install them.
TCC is the Tiny C Compiler, introduced further down this news page. Install with PupGet and start writing C programs!
A technical note for anyone interested: if you install a PupGet
and want to know what files got installed, look in /root/.packages/,
you will find file-lists for each installed package.
Lots of fun and games getting the various serial, ps/2 and usb mice
keyboards to work with the 2.6 kernel. One problem is the change of
names from those in k2.4, also some modules no longer exist, and some
changed functionality. For example, usbmouse.ko and usbkbd.ko were
for the full HID protocol in the 2.4 kernel, but are only the simpler
HID-Boot protocol in k2.6. Module hid.o no longer exists, replaced by
more encompassing usbhid.ko. Serial mouse support was a mystery for
but that got sorted out.
I had to go out an purchase a usb keyboard ...I'm quite happy with my ps/2 keyboards, but had to do this for testing purposes. Amusing, I have a usb and a ps/2 keyboard plugged in and both are working, simultaneously!
The Lucent and Smartlink linmodem (software modem) drivers have been
compiled for the 2.6 kernel, and the Modem Wizard and rc.network boot
updated. These drivers are now PupGet packages.
...I know, I know, how do you install them if you can't get on the Internet? Well, you have to get on the Internet by some other means and download the software-modem package that you need, then bootup Puppy, and PupGet is able to install a package that is local -- PupGet packages don't have to be located on the Internet.
Okay, I have created a popup help window that appears whenever
run, which provides information how to get it to work with
IDE CD/DVD drives. it's a simple workaround, until someone hacks the
code of Gcombust.
I also went through all the wizards and scripts to make sure that
work for both the older SCSI-emulated and the newer non-SCSI-emulated
There is difficulty with burning CDs with the 2.6 kernel. I compiled
kernel with support for SCSI-emulation of IDE CD drives, although this
deprecated. However, cdrecord, the commandline utility for burning to
refused to write data to the CD although it recognised it, and even
to erase it okay. So, I tried without SCSI-emulation, which is
the 2.6 kernel, but Gcombust was unable to recognise the CD drive,
did manage to get cdrecord to work directly from the commandline. I
the cdrtools package (which
cdrecord) from version 2.00.3 to the latest, version 2.01. Interesting,
latest version of cdrecord outputs this warning:
Warning: If you have unexpected problems, please try Linux-2.4
I did get Gcombust to work, although the "Check SCSI settings" and "Detect SCSI drive" buttons do not work -- I may look at the source code, see if I can hack it so those buttons work for non-SCSI-emulated IDE CD drives.
The outcome of all of this is that SCSI-emulation is out for the 2.6 kernel. CD burning works, but Gcombust has a slight problem with its buttons.
The Linux kernel is upgraded from version 2.4.27 to 188.8.131.52.
have kept backwards compatibility, so in Unleashed the 2.4 kernel and
can be substituted and Puppy will still work.
Although the new kernel natively supports ALSA sound, Puppy v1.0.2 will still be using the OSS system (basically because I'm still learning how to setup ALSA). It is intended that Puppy will eventually support both ALSA and OSS for maximum sound hardware support.
The new kernel has been compiled with ACPI and APM support. The
will determine which of these is supported by the BIOS and activate
appropriately, however I set the kernel to treat all BIOSes older than
2001 to not be ACPI compatible, which may avoid bootup problems with
Although the new kernel is 1344K, I am still able to create a 1440K
floppy disk for hard drive installations of Puppy.
A technical note: Puppy is still using /etc/modules.conf, for
compatibility with the 2.4 kernel, however /etc/modprobe.conf is
bootup from modules.conf, as required for the 2.6 kernel. So, they both
and are equivalent, but internally have different formats.
The boot scripts and hardware detection works with both the 2.4 and
kernels. At least, so far so good.
Another technical note: One problem with USB is that the usb-uhci and usb-ohci kernel modules are renamed to uhci-hcd and ohci-hcd respectively in the 2.6 kernel, but I got around this by creating symbolic links.
mtPaint has been upgraded
version 0.50 to 0.90.
Puppy has acquired RemoteDesktop, a
frontend for rdesktop, which in turn is a Remote Desktop Protocol
running GUI applications remotely, in particular Windows applications.
RemoteDesktopClient is a Tcl/Tk application, written by John Hass, of
Note that Puppy already has a GUI frontend to rdesktop, a little something that I whipped up sometime ago, but John's effort has many more features.
Abiword update: after consultation with Mark Tyler, the author of
we now have mtPaint working as a embedded image editor for Abiword.
I have upgraded Abiword
version 2.0.12 to 2.2.7. There are significant improvements, including
improved stability, better MSWord import, and text flow around images.
also included more plugins: import/export Abiword documents compressed
bzip2, xsl-fo files, XHTML/HTML, WMF image support, and editing of
Editing of images within an Abiword document is achieved by calling
I found that mtPaint didn't work in this mode.
Abiword 2.2.7 will be in Puppy v1.0.2.
John Murga has created a Puppy live-CD based on Opera that will fit
50M credit-card size CD. For further information:
Temporary download site:
BUG REPORT: We have to
some, especially with the first release of the package managers. These
minor and you can work around them:
- PupGet is corrupting /root/.jwmrc, the menu configuration file for the JWM window manager. If you start JWM and have this situation (JWM will start but the menu won't work), type CTRL-ALT-BACKSPACE key combination to exit from X, then type "xwin fvwm95" at the commandline to start X with the Fvwm95 window manager (which is Puppy's default w.m.). You can fix .jwmrc by editing it -- the first line is duplicated, so just remove the duplicate line, then JWM will work properly. Actually, I thought that I had fixed this bug, but it seems not.
- In the "Setup" menu, you will see menu items "PupGet package
manager" and "DotPup package manager". The latter opens a web page
using gtkmoz, Puppy's internal HTML viewer, which is not up to the job
as it can't download. Instead, choose the former menuitem (PupGet) and
it has a button to the DotPup webpage using Mozilla, and that works
fine. Note, you can fix this bug by opening /root/.fvwm95rc and change
the "DotPup" menu line to start "mozilla" rather than "gtkmoz" or
- The JWM menu has an entry "Wordprocessing -> Amaya HTML
editor" which should not be there as Amaya is not installed (although
can be downloaded by PupGet). If you want, you can also fix this, by
- There is a report that Calendar, a module in Mozilla, doesn't
work properly. Nothing I can do about that now, have to hope that the
Moz developers fix it soon (Mozilla does have a bug-reporting facility,
as this is a beta version, so you can report any bugs direct to them).
1.0.1 released. The live-CD is 60.2M. Puppy enthusiasts on the
have been reporting extreme delight with v1.0.1rc1, and I am now
announce the official release. Release notes:
- Package managers, PupGet and DotPup. These are wonderful to use, allowing very easy installation and removal of packages. See notes further down.
- The full Mozilla suite, version 1.8b1.1, with Navigator, Composer, Mail/News, Addressbook, Calendar, and the Gxine and Macromedia Flash plugins. This new version is very fast.
- Lots of little bug fixes.
- If you have been testing version 1.0.1rc1, please edit /etc/puppyversion and change it from "101" back to "100", without <ENTER> on end of line. Also, as a precaution, please uninstall any packages installed by PupGet and completely erase all files in /root/.usr. This will ensure a correct upgrade.
This time I have not uploaded various "flavours" of Puppy -- if anyone wants a special flavour, the way to go is obtain Puppy Unleashed and build your own. The special "128ram" flavour, with usr_cram.fs inside image.gz, can be built from Unleashed or the remaster-CD script can be run from the released live-CD Puppy to create it. For the Opera flavour, it also can be built from Unleashed, or the Opera package can be downloaded with PupGet.
Note, it is intended that the focus of attention for the next version will be on wireless networking, updating some of the applications, and a kernel upgrade ...but with the Puppy project, who knows what will be the next surprise? I would like to apply the Alsa sound to Puppy -- is there anyone with knowledge of Alsa on the 2.4 kernel who might be interested? -- I have compiled the Alsa modules and support utilities but got no further.
Right now I'm editing this web page with Composer, from the Mozilla
version 1.8b1.1 -- well, that's the version number that I have assigned
as I compiled from "nightly source" dated 7th April, which is going to
somewhere between the official 1.8beta1 and beta2 releases.
As GuestToo reported with the official build of 1.8b1, the new Mozilla is fast, remarkably fast. The code-base of Mozilla and the separate products has now merged, and in fact the developers themselves use the Mozilla suite to compile the separate products. As well as now being as fast as Firefox, in fact faster than Firefox 1.0, the Mozilla suite has one very big advantage -- it is far far smaller than the separate products, as it shares common code. It is also better integrated than the separate products. Note however, that NVU, a standalone HTML editor that is a fork of Composer, is developed totally separately and the NVU code is not merged into Composer, at least that is my understanding.
So, I have uploaded Puppy version 1.0.1rc1, "release candidate 1",
Puppy enthusiasts to play with. This is not the official 1.0.1 release.
The live-CD iso file is only 60.2M, yet has the full Mozilla suite, including Navigator browser, Composer WYSIWYG HTML editor, Mail/News, Addressbook, and Calendar, plus the Gxine and Macromedia Flash plugins. Also, I compiled Mozilla with support for displaying SVG vector graphics, but do note that this is still immature -- I was in two minds about this, as previous experience has been that a web page with SVG can crash a SVG-enabled Mozilla. Despite the small size of the iso, everything else is still there: Scribus desktop publishing, VYM outliner, and so on. Oh, Dillo has gone (again), as this iso has gtkmoz, which is the TestGtkEmbed application provided with the Mozilla suite -- it makes a great little internal HTML viewer.
Version 1.0.1rc1 has two amazing new package managers. They are
self-explanatory -- go to the menu, Start -> Setup and you will find
PupGet and DotPup. PupGet
official package manager, that is, it can install and remove packages
the Unleashed package suite. All of the Unleashed packages are now
PupGet will download them -- try it, it's so easy! As this is "rc1",
these package managers through the hoops and report any problems.
Note that F-Prot, XF-Prot, Sane and Xsane scanner packages have been
removed, but they are only a click away with Pupget. I took out F-Prot
Linux doesn't have viruses, that's a Windows problem. Puppy users use
to test a Windows system. Also, F-Prot and Sane weren't totally
the iso anyway -- some extra parts had to be downloaded to
/root/my-applications folder -- well, that system is now (almost)
I mentioned at the last release, a little further down this page,
live-CD iso of about 60M is pushing the limit. The reason for this is
want Puppy to boot totally into ramdisk on a PC with 128M RAM and no
swap partition. I am pleased to report, on my test system, this 60.2M
does! The test PC has a 1GHz Celeron CPU, and, oh so nice, Mozilla
about one second.
Note, if you have been experimenting with using UNIONFS on Puppy,
applies to a small number of Puppy experimenters, please delete
before booting the 1.0.1rc1 CD.
Puppy addicts, burn the new iso to CD and give Puppy a whirl -- I want to upload the final v1.0.1 in less than a week from now, so kindly report any problems to the Forum promptly. Note: can someone test that the Gaim MSN module still works? (it uses SSL library from Mozilla). What about testing some SVG web pages?
Oh yeah, you will find the iso v1.0.1rc1 on ibiblio, in directory "puppy-1.0.1rc1".
I have looked at upgrading from one version to another. That is, the
appropriate updating of files when boot up a live-CD or USB stick with
newer version of Puppy.
In particular, the menus need to be correct, but it is not just a matter of copying the latest .fvwm95rc and .jwmrc window manager configuration files from the CD, as the user may have installed packages using PupGet and these entries must remain in the menus ...complicated!
Anyway, /etc/rc.d/ now has a little script called fixmenus that takes care of this.
I have taken Xpaint back from version 2.7.5 to 2.7.0, as have still
resolved a bug in the latest version.
I'm working with the developer of Xpaint on this, and we will
track it down, but anyway I'm thinking that maybe will take Xpaint out
base live-CD iso and have it as a separate Unleashed package. The
this is that mtPaint is so good. The main reason that we need Xpaint is
need its commandline ability to take a snapshot of an area of the
does anyone know of a small program that will do this?
installer is now installed into Puppy. This means that you just
".pup" file, then from Rox just click on it and it installs and a
opens showing your installed "RoxApps" (.pup packages) all with nice
Then just click on one of them to run it.
DopPup is developed by "GuestToo", a Puppy enthusiast and very active contributor on the Forum and Wiki.
Puppy now has PupGet,
package manager. There was an earlier system for downloading some
extensions, that went by the same name, but that method is now
There is something that users of other Linux distros take for
the ability to download a package, try it, then maybe uninstall it.
now do this with the entire suite of packages from Unleashed, a
that grows almost daily. Although Puppy runs in ramdisk, with /usr
a compressed read-only filesystem, by means of the UNIONFS we now have
As well as being able to install and remove packages, there is also
dependency checking. When a package is installed, entries are
made in the Fvwm95 and JWM menus, also in the Help index page, and
entries are removed when a package is uninstalled. There is also some
for "alien" packages, such as binary tarballs from Slackware, though
work is needed in that area. PupGet also washes the dishes and makes
Note that PupGet has no relation with any other package management
As usual, I reinvented the wheel, and knocked it up from scratch in two
added a few extra bells and whistles on the third day.
There is also another neat system of package installation, called DotPup, that is
suited to casual evaluation of packages contributed by users, but not
necessarily part of the Unleashed suite. DotPup packages install
/root/my-roxapps directory and are totally self-contained and easy to
PupGet and DotPup will both be supported in Puppy version 1.0.1,
that I am
trying to fast-track for release very soon.
Puppy now has the unionfs kernel
module, version 1.0.11.
Furthermore, there is great news: unionfs is used to make /usr
read-write. If you know something about the structure of Puppy, you
that /usr is really a compressed read-only file usr_cram.fs. However,
unionfs we can simulate write access to /usr -- in reality all files
to /usr are stored elsewhere. In Puppy's case, in /root/.usr hidden
directory, which means that they will be saved.
What is particularly great about write-access to /usr you shall see in the next news announcement.
GuestToo on the Forum has reported some bugs in Puppy version 1.0.0.
are only small bugs, that do not affect overall usage of the current
- Puppy was upgraded to the latest Xpaint, which has a new bug -- the Save and Save as... dialog boxes have edit-boxes in which text is invisible, although they do still work. Last night I sent an email to Jean-Pierre Demailly, one of the developers of Xpaint, and he responded promptly, with version 2.7.6 attached!So, Puppy 1.0.1 will have the fix for Xpaint.
- The Puppy drive mounter
does not display VFAT partitions. You can still mount them of course,
from the commandline, for example: mount -t vfat /dev/hda1 /mnt/data. I
also found some other strange behaviours in this script. It will be
fixed in Puppy 1.0.1.
Puppy version 1.0.0 is released. There are three "ready-made" live-CD flavours to choose from -- the live-CD ISO file with Firefox is 58.4M, with the full Mozilla suite is 61.8M, and with Opera is 55.8M. Release notes:
- The big news item for this release is Scribus, version 1.2.1. This is the premier Linux desktop publishing application. It is really great and extremely easy to use. Of course, it is big, hence the size jump in the ISO files.
- The second big news item is VYM, an acronym for View Your Mind, version 1.6.0. This is a fascinating visual "brainstorming" kind of outliner. I have removed Knowde, which was in earlier Puppies. TuxCards, another outliner, is not in the prebuilt ISOs but is in Unleashed. VYM is most intriguing -- try it and give us your thoughts on the Forum.
- CuteCom is a serial port terminal application. See notes further down.
- Dillo (v0.8.4) has come back as the default internal HTML file viewer, replacing phv.
- Both the Mozilla and Opera flavours of Puppy now have the Macromedia Flash player plugin. With the Firefox flavour it has to be added afterward. All three flavours have the Gxine plugin.
- Scribus, VYM, CuteCom, Skype and Opera are all QT-based applications, and Puppy now has Qt version 3.3.4.
- Sylpheed has been upgraded from version 0.9.99 to 1.0.3.
- Xpaint has been upgraded from 2.7.0 to 2.7.5.
- The Puppy drive mounter is improved. In particular handles hot-swapping of USB memory drives.
- The CD/DVD drive Wizard is improved.
- The startup script for MToolsFM file manager has been improved. Hardware detection works better.
- Puppy is designed to work on a PC with 586 CPU and 128M RAM minimum. However, if the hard drive has a Linux swap partition, then Puppy will work with less RAM, even as low as 32M. However, the Mozilla flavour of Puppy has gone over the limit, and will not work on a 128M PC without a swap partition. See further notes below.
If upgrading from an earlier version of Puppy, it is recommended that you run the CD/DVD drive Wizard and the Printer Wizard again. The former has improvements and the latter has an extra feature to enable Qt-based applications to print.
As usual, there are many sub-projects in-progress, but I wanted to get version 1.0.0 "out the door" by the end of March. For example, there are some ad-hoc solutions to wireless networking, reported on the Forum, but we do not yet have a refined setup or Wizard for Puppy. Note also, I had planned to upgrade Gxine, but cannot, as Puppy is currently using the GTK 2.2 libraries and the latest Gxine needs GTK 2.4 -- upgrading the GTK library is postponed for awhile.
Note, the Opera flavour does not have Gaim, instead has Xchat, Gyach and Alicq. This is because Gaim needs library files out of Mozilla/Firefox for it's MSN module. You can of course build your own flavour of Puppy with Unleashed.
Which flavour to download? The maximum size that Puppy can grow to
still load totally into ramdisk, has been reached. For a target system
128M RAM no swap file, on my test system the Firefox and Opera versions
worked fine, the Mozilla version did not. I think the iso size-limit is
60M. If you do have a minimal system, that is, 128M no swap file, and
is a boot or running problem with Firefox or Opera flavours, check the
"shared video ram" setting in the BIOS -- set it lower, to 8M, even 4M.
If unsure which flavour to choose, go for Firefox -- it is the most popular. Note that I intend to upload a lightweight flavour soon, probably with Links and Dillo, weighing in at about 35M.
I am very interested to know if VYM can be used as a general-purpose
outliner, a repository of ideas, notes, links, images. It is intended
"brainstormer", but I wonder if it could be more than that. Feedback on
Forum most welcome.
BUG: There is a minor bug in VYM, that I discovered after releasing Puppy v1.0.0. The VYM Help menu fails to open the User Manual, even though it worked when I originally tested it in Puppy. This lead to discovery of another bug: The Puppy Start -> Help has a link to the VYM User Manual, but Dillo won't open it as Dillo is not configured to open a PDF file with an external viewer. However, all is not lost: open Rox, go to /usr/share/doc/packages/vym/vym.pdf and click on the file and it will open in Gsview.
Puppy Unleashed version 1.0.0 is released. The file is puppy-unleashed-upgrade-0.9.9-to-1.0.0.tar.gz and the size is 57M. Release notes:
- There are many new and upgraded packages. New packages include Scribus, Skype, CuteCom, VYM, TuxCards, TinyCC, QHacc, Bash, Ytree, Qt3.
- The "createpuppy" build script will now create a multi-session live-CD, and can run cdrecord directly to burn to CD, no need to use Gcombust.
- Unleashed is released as an upgrade from Unleashed version 0.9.9. You just download it to the same directory that has the "puppy-unleashed" directory (but NOT in it), then expand it, then read INSTALL.txt.
There is still much work to do for dependency checking in "createpuppy", the build script. Do not take reports of possible dependency problems too seriously when running the script -- especially for first-time users, just accept the defaults by pressing ENTER key at every question.
There have been many requests to include TinyCC in Puppy. Well, it still isn't in the ready-made ISOs, but is now in Unleashed. TinyCC, also known as TCC, is a GNU-C compatible C compiler. You can use it to create basic console and GTK applications, but it is not a "full" compile environment, as explained further down.
The upgrade tarball is bigger than I had intended. If you are on dialup Internet connection and find it impossible to download it, let me know -- post a message on the Forum. I can split it into two files.
Puppy multi-session CD version 1.0.0alpha2 released. The file is puppy-firefox-1.0.0alpha2-multisession.iso, size 58.5M. Release notes:
- Some improvements have been made to the boot and shutdown scripts.
The multi-session CD has been improved, but the release is still "alpha", not yet fully synchronised with version numbers for the "normal" Puppy. That is, it is still classed as "experimental", with some fundamental issues still to be tackled -- however, it does work, see notes further down this page and user feedback on the Forum.
I discovered that the Compaq Presario R3000 laptop cannot boot from a multi-session CD if it has more than one track written on it. (Also, the Presario R3000 cannot boot from a USB device. Pathetic. Why are brand-name computers so troublesome?)
For an introduction to the concept of the multi-session CD, see the Puppy multi-session live-CD page.
Some bugs were fixed in the remaster-cd script, also some improvements.
The multi-session CD can now create a "pupxxx" backup-to-hard-drive file at shutdown, if it does not exist. Except for an NTFS partition.
Bash is now a package in Unleashed.
The QHacc personal accounting application is now a package in Unleashed.
Okay, okay, some Opera enthusiasts are asking that Opera not be left out. I guess I'll keep releasing Opera versions of Puppy.
I've made up a Opera package for Unleashed, still on version 7.54 as that is the latest stable release. I have thrown in the Macromedia Flash player and the Gxine player, and that ...grumble, grumble... Motif library. I am using Lesstif, a Motif clone, and the library is 1.3M. Note, Flash plugin is 2M.
It is interesting to compare sizes of the browsers. These are uncompressed sizes, determined using "du -k". Opera (with plugins and Motif): 11416K, Mozilla suite (with plugins): 44260K, and Firefox (without Flash plugin, only Gxine plugin): 18720K.
The Puppy drive mounter has been overhauled. Many more partitions are now handled -- previously the script only handled 1 cdrom, 2 Windows and 3 Linux partitions in a PC, now increased to 2, 3 and 4. Another improvement, a major improvement, is handling of hot-swapping of USB memory drives -- now you can unplug one USB drive and plug in another, then click the "Refresh" button in the Puppy drive mounter to show the new situation.
Note that the Puppy drive mounter is not as sophisticated as MUT, a project that Jesse Liley is working on. That has automatic refreshing and a superb GUI interface. MUT is still under development but is progressing well.
Puppy has another serial port terminal program, called CuteCom, version 0.13.0, joining picocom. The difference between them is that picocom is a commandline (console) application, whereas CuteCom is a GUI application using the Qt library.
So, how does a serial-port terminal program differ from a terminal
emulator such as Rxvt? The former are interfaces that communicate
with a serial port, such as /dev/ttyS0 (COM1). To give an example of
used to teach at a university, and one of the subjects was
Systems, in which the students programmed and designed interfaces for
microcontroller boards. The programmer interacted with these boards by
serial cable to a PC and a serial-port terminal program running on the
Another use is you can send Hayes commands to a serial modem (including internal modems) to configure it or test if it is working.
Oh yes, Unleashed now has Ytree, a console file manager.
I'm astounded... no, that's an understatement. I have just tried the latest version of Opera, 8.0 beta3, and tried to get the Macromedia Flash and the Gxine plugins to work. No go. So I tried Opera version 7.54u, still no go. They are recognised, but they just don't work.
So, I did some research with Google, and found that file "libXm.so" is required, that is, the Motif library ...Motif is an old widget library, kind of the grand-daddy of GTK and Qt, and not used much anymore. It's also large, I don't recall exactly, but think it is somewhere around 2M. Opera needs this library to load plugins!!!!!
Opera themselves confirm this: http://www.opera.com/linux/docs/plugins/install/
Sorry, you guys that like Opera, but this disgusts me. I'm not going to support Opera in future releases of Puppy. There will be an Opera package in Unleashed, but it will be up to you to install libXm.so if you want to add plugins.
Great news! Xpaint version 2.7.5 has just been released. Puppy has 2.7.0 and I thought that the project had died. Not so, the developers Jean-Pierre Demailly and Torsten Martinsen are still plugging away at it. Thanks guys. Version 2.7.5 will be in the next Puppy.
I have had to put the libxslt and libexslt libraries, as well as a little application called xsltproc (which uses the aforementioned libraries), as VYM needs xsltproc to export to HTML. I seem to recall at least one other application having a compile-time option to use libxslt, that I declined -- will have to go back and check that out -- it may have been Dia.
Sylpheed has been upgraded from version 0.9.99 to the latest, version 1.0.3.
Printing now works for the Qt-based applications. Scribus was okay anyway, but VYM and TuxCards (maybe also Opera?) use the standard Qt print dialog box, which reads the list of available printers from /etc/printcap. Problem was, Puppy didn't have /etc/printcap, as Puppy uses the PDQ printing system.
So, I modified the Puppy Printer Wizard to generate /etc/printcap. It's only a dummy file, no good for anything, but it satisfies Qt and the Qt printer dialog box is able to get the name of the default printer. I think that Qt executes a command "lpr -P<printername> <postscriptfile>" and in Puppy's case lpr is a symbolic link to pdq (which works like lpr, accepts the same commandline options).
In the process of doing this, I discovered a bug in XPDQ, the GUI frontend for the PDQ printing system. When you choose "Add printer..." from the menu, the first window ask for "Printer name:" with help info that this can be any name you want -- what it doesn't say is that this name must be ONE WORD, no spaces. I have put a warning about this into the Printer Wizard.
19Mar05The new Wikka Wiki is up for testing, see the Forum Announcements for URL.
I have setup the main page with code from the old Usemod Wiki.
Domain goosee.com is now working.
Heh, heh, I'm thinking will go back to Dillo as the default internal HTML viewer. Have created a package for v0.8.4.
I've created packages of VYM version
1.2 for Unleashed.
They are both outliners, using the Qt library. TuxCards seems to me
too basic -- okay, it does have Rich Text Format, but doesn't have
cross-linking, nor outside hyperlinking, nor image support. Personally,
would prefer to use DidiWiki.
VYM is an acronym for "View Your Mind", and this is a fascinating graphical "brainstormer" kind of outliner, similar in concept to FreeMind (FreeMind is written in Java).
VYM is very interesting, and I think that I will put it into version
VYM and TuxCards print in Postscript format, so that is no problem, in fact, VYM printout is lovely. However, I can only print to file. I will need some help here, how to setup so can print to "lpr" -- obviously, something is missing that Qt needs to choose a generic Postscript printer, output to lpr.
I got up this morning, and found that goosee.com is not working. My
has not transferred it properly. My morning here in Australia is after
have gone to bed in the USA. So, urgent emails got sent!
Hopefully goosee.com will be working soon. However, the Wiki is
disabled, due to excessive spam attacks. I will put it up again, with
for the guys on the Forum only, and we will be checking out an
18Mar05Domain goosee.com is being moved to another server, still on same host.
Some more work has been done on the CD/DVD drive Wizard. The main
that when a IDE drive is SCSI-emulated, it is accessed as /dev/scd0,
its original IDE drive designation. The Wizard now clarifies this and
prevents incorrect selections.
telephone and chat application, version 184.108.40.206, is now a package in
I have compiled Qt
3.3.4 and Scribus
version 1.2.1 and created packages for Puppy Unleashed.
A package for compiling C applications has been added to Puppy
(v1.0.0, not yet released). I've adopted a monolithic approach, placing
required tools in one package. Puppy was not originally intended to be
environment for compiling applications, however there is great interest
putting something in, especially TinyCC.
So, the TinyCC (version 0.9.22) package is now in Unleashed, but it also has make, also ar, strip, nm and ranlib from the Binutils package. Also, gtk-config and enough header files to compile basic console and GTK 1.2 applications.
I found that TinyCC does have some compatibility problems when
packages. I was able to compile Gtkcat and Gtk-shell packages in Puppy,
ran into errors that are TinyCC-related with some other packages. For
example, Gbase and uXplor gave the same error, but in the case of Gbase
successfully compiled it from the commandline, meaning that TinyCC did
like the Makefile.
The above packages have ready-made Makefiles. If a package has a configure script, there may be other issues. For example, Puppy uses the simpler Ash shell rather than Bash (though it is very easy to substitute Bash in Puppy if you wish -- see discussion on the Puppy Forum).
Yet another thing to think about is installation. Running in ramdisk, any installation is going to be lost at shutdown, also /usr is read-only. You can install in a hard drive installation (Option 2) of Puppy, that does not use a ramdisk. Or, you can create a package for Unleashed and build your own custom live-CD. Or, run the remaster-CD script. Or, just install into the /root directory (your home directory). Or, install executables into /root/my-applications/bin/ and shared library files into /root/my-applications/lib/ as these directories are in the executable and library search paths.
Previous versions of Puppy have the diff program, from the Diffutils
I have now added cmp
multi-session live-CD version 1.0.0-alpha released. The file is
puppy-firefox-1.0.0alpha-multisession.iso, size 52.5M. This is an
experimental release. The final v1.0.0 release is expected to be
with release of the v1.0.0 "normal" Puppy.
The Puppy multi-session live-CD saves all personal data and settings
to the CD. This is a world first. For details, see the Puppy multi-session live-CD page.
Please do read the page linked-to above. A few extra usage notes for
- The live-CD is only mounted temporarily during bootup. During a
session the CD drive may be used for other purposes. However, if you
wish to mount the multi-session live-CD to view its files, I am
intending that the standard mount-point will be /mnt/home, although
there is no entry in /etc/fstab for this. This command will do
it: mount -t iso9660
- During a session, note that any directory with a name starting with "tmp", for example "tmp", "tmp1", "tmp-anything", will not have its contents saved to CD at end of session. This is handy if you need a temporary scratchpad area.
- If you use a CD-RW to evaluate Puppy multi-session live-CD, after completing the evaluation and you then want to erase the CD-RW, do a "full" erase. A "fast" erase, at least with cdrecord, does not properly erase a multi-session CD.
- The multi-session live-CD does not by default create a
/etc/pupxxxbackup file. See the above link for details. If you want to
backup each session to hard drive, and you have an existing "pup001"
file, I suggest make a copy of it, say "pup002" and use that. When the
multi-session live-CD has booted, create /etc/pupxxxbackup with the
where hda1 (for example) is the partition that has the pup002 file.
The current version of multi-session live-CD does not create a pupxxx file.
- Although this is an "alpha" release, it works fine on my PC. The only disconcerting thing is the error messages spitted out by the ide-cdrom driver during bootup -- but these do not seem to compromise actual operation.
- I am not (yet) supporting USB CD drives. So far only tested with a IDE CD burner drive, not with a true SCSI drive.
- Please boot with the live-CD inserted in the CD/DVD-burner drive.
Do not boot from any other CD/DVD drive. This is because Puppy will
automatically assign that drive as SCSI-emulated, which is required for
burning-to. Any decent BIOS should automatically scan the CD/DVD drives
(if you have more than one) and find where the bootable CD is.
UPLOAD DELAY. I uploaded Puppy Unleashed to nstsoftware.com/puppy, but looked a little afterward and it had been deleted. Must have exceeded some quota. So, I uploaded Unleashed to Ibiblio. There was also a delay in uploading the "Mozilla flavour" of Puppy, but that is now also at Ibiblio. You can find the link to Ibiblio and other download sites at http://www.goosee.com/puppy/download/index.html
BUG REPORTS: When you start Firefox or Mozilla from the menu, it starts up with "file:///" rather than going immediately to the home page. GuestToo found out why this is happening, which we will fix soon. It's a very minor bug, just a slight annoyance as you have to click the Home button if you want the home page. Danleff found that the sane.tgz file, the scanner drivers for the Xsane program, is corrupt and won't uncompress. I have uploaded it again.
0.9.9 is released. There are now three live-CD flavours to
-- the live-CD ISO file with Firefox is 52.4M, with the full Mozilla
55.3M, and with Opera is 49.6M. Release notes:
- Puppy live-CDs are now built from Puppy Unleashed, which is a collection of packages and a build script. Unleashed is a separate product and is announced below.
- The Mozilla flavour of Puppy is version 1.7.5 and is the full suite, including Composer HTML editor, Calendar, Addressbook, and Mail & News. The Macromedia Flash player is also included in the ISO (note, the other flavours require the Flash player to be downloaded separately).
- Puppy now has his very own wiki, called DidiWiki, with inbuilt HTTP server. DidiWiki is executed right off the "Information managers" menu for local use, but can also be used over a network.
is a two-pane Windows Explorer clone, to help refugees from MS Windows
feel at home. Not as fully-featured though. We would like feedback on
uXplor, as if it turns out to be basically good we might do some work
- guiTAR is another frontend to tar, gzip, bzip2, and zip. Puppy already had TkZip and Xtar. Note, there is another pending product called Xzip. At this stage we are evaluating them and maybe will only have two of the best in the next release of Puppy.
has been upgraded to version 0.50. This is a fantastic little paint
- Puppy has finally become window manager independent. The live-CDs
include two window managers, Fvwm95 and JWM, and it is
very easy to flip between them, via the "Shutdown" menu. If you want to
use Fluxbox or IceWm, see the Forum.
- To help window manager independence, GUI tools are being developed that will work on any window manager. Currently there are GUIs for setting the desktop image or solid color, and Gxset for setting mouse, keyboard, font, and screen parameters.
- The utility program cfdisk has been
added, and a Pdisk,
a GUI frontend to fdisk and cfdisk has been created.
- We finally seem to have PCMCIA (CardBus) autodetection and configuration at bootup working reasonably well.
- The libhardware
database has been expanded, meaning that more kernel driver modules are
auto-detected at bootup, which means that more sound, network and usb
hardware will work.
- Puppy has the full standard Xine library for playing audio and video. The BBC Internet radio stations offer a choice of Real Player or Windows Media streaming audio, and the latter worked with Puppy, the former had an error message about "missing cook.so.6.0". This is now fixed.
- The Roaring Penguin PPPOE console tools were working. Maybe now the GUI frontend, executed off the "Network" menu, will now also work.
- DVD drive auto-detection at bootup has been improved. Also, the CD-burner Wizard has been revamped to configure both CD and DVD drives and is now called the CD/DVD drive Wizard.
- There are numerous little bug fixes and improvements "under the
hood". One that many people have been waiting for -- scroll-wheel mice
now work properly. The remaster-cd script is much improved. Power-down
now works much better -- my PCs actually do turn off. Read down this
page to find out about more improvements.
Which flavour to download? Mozilla 1.7.5 is the way to go if you need a sophisticated PIM/calendar/addressbook, but is somewhat sluggish. The Mozilla suite also has the Composer WYSIWYG HTML editor, that I am using right now. The Firefox and Opera flavours have Amaya, which is technically superior, has far better support for editing at the code level, but has ugly jagged font rendering. If you want a very fast, lean-and-mean email client, choose the Firefox or Opera flavours, as they have Sylpheed.
Note that Mozilla 1.8 code is merged with Firefox/Thunderbird, and consequently appears to have a less sluggish user interface. However, v1.8 is currently in beta only and has too many bugs to be placed into Puppy. I am hoping that Mozilla 1.8 will make it into the next release of Puppy.
Note also that the latest version of Amaya has the compile option of using OpenGL and font-antialiasing. Fonts look good, it displays animated SVG, but is woefully slow. And very big. I may offer it soon as a package for Unleashed.
There a quite a few mini-projects underway, that have not made it into v0.9.9. I decided that as it is about 7 weeks since v0.9.8 was released, that I had to get v0.9.9 "out the door". Some of the things that are now being targeted for version 1.0.0 are hotplugging support for USB drives (currently, unplugging or changing USB drives causes problems), and wireless networking (much of the infrastructure is in place -- I need to buy some hardware for testing).
Puppy Unleashed version 0.9.9 released. This is the first official release. Release notes:
- Unleashed is Puppy reverse-engineered into the individual
packages, with a build script to put them all together again. The great
advantage of this is you choose the packages you want. Thus, you can
build a lean-and-mean live-CD or USB-stick that loads totally into
ramdisk, with exactly the applications you want. For an introduction to
Unleashed, see: http://www.puppylinux.com/puppy-unleashed.htm
- Puppy has been attractive to people on slow dialup connection to
the Internet, but even so, at around 50M has become difficult to
download. Unleashed weighs in at almost 100M. Even with a ADSL or
broadband connection, the host FTP server may have speed throttling
that makes download difficult. To solve this problem, I have put
everything together into a CD, over 580M of "stuff", that can be
purchased at a nominal price: http://www.puppylinux.com/download/index.html
The CD is "live", meaning that it is bootable, and will boot the Firefox flavour of Puppy. After booting Puppy, use the Mount/unmount program in the "File managers" menu to mount the CD and view the files.
- We are adding packages to Unleashed all the time. For example, the midi player TiMidity was recently added. The way I am planning to organise this, is, after you have downloaded the base Unleashed file, puppy-unleashed-0.9.9.tar.gz, further upgrades will be relatively small files, with just new and changed packages. Thus, people on dialup connection should be able to keep up to date with the latest Puppy.
- The live-CDs announced above are built from Unleashed. Therefore, it is not actually necessary to download the latest live-CD ISO file if you have Unleashed. Just download the Unleashed upgrade file and build your own live-CD.
- Unleashed has a choice of X servers. The default, used in the ready-made live-CDs, is the Xvesa Kdrive X server. However, some old PCs and laptops do not work with Xvesa, so Unleashed also has the Xfbdev Kdrive X server and the XF_SVGA X server from XFree version 3.3.6. The latter is good for video hardware pre-2000, and has the advantage that monitor refresh frequency can be set, something that is not possible with the Kdrive servers.
- Unleashed automatically builds window manager menu and help
index, to match the selected packages. Currently only Fvwm95 and JWM
window managers are in Unleashed.
17Feb05Xine and the GUI frontend Gxine can play streaming audio from the Internet. BBC Radio offers a choice of Real Player or Windows Media streaming audio, but if the former is selected, an error message pops up that file "cook.so.6.0" is missing. I have now obtained this file from the "essential codecs" package on the Mplayer site and included it in Xine. The standard Xine in Puppy can now play both audio formats from the BBC. There is no need to install any extra codecs.
While on the subject of Xine/Gxine, Puppy has version 0.3.3 of Gxine, whereas v0.4.1 is now available. V0.3.3 is unstable when video is played full-screen, a bug apparently fixed by the latest version. Note however, v0.4.1 will be in Puppy v1.0.0, not in the upcoming v0.9.9.
16Feb05The script /usr/sbin/resizepfile.sh, run from the menu "Utilities -> Resize /root filesystem", cannot resize the pupxxx file if it is on a NTFS partition. The limitation of Linux NTFS support is explained in the FAQ page.
However, there is a solution. The script now gives instructions how to boot up XP, make the pupxxx file bigger, then reboot Puppy and come back to the script and then resize the ext2 f.s. inside pupxxx to fill the file.
15Feb05Puppy has a hardware detection system called libhardware, developed by Antonio Gallo. There is a program called scanmodule that accesses a database and determines what kernel driver modules need to be loaded. The main problem has been that Puppy is the only distro using this system, and the database is far from complete. Every now and again I have trawled the web looking for information to update the database. Today I downloaded a file called pcitable from Mandrake, that relates each hardware chip ID number to the required module. The format of this is not the same as used in libhardware, and it would have been a painstaking process to go through line by line and then search the several libhardware database files to see if the information is already there or needs to be added. So, I wrote a script to do most of the searching. Even so, I was sitting there for four-five hours.
The end result is improved detection for networking, usb and sound hardware.
14Feb05People have reported success using the Roaring Penguin PPPOE console applications, however the GUI frontend tkpppoe gave an error message. I think that I have tracked it down. I can't test it myself, so we will see if it is truly fixed after Puppy v0.9.9 is released.
14Feb05The CD-burner Wizard has been revamped and is now called the CD/DVD drive Wizard. There are some improvements to the script, also there is now selection of the DVD drive. Puppy tries to autodetect the DVD drive at bootup, but this is not always successful -- we have been investigating this recently on the Forum, and a special thanks to Just Greg for his work on this. The solution now is simple, just run the Wizard, and if Puppy was unable to guess which is the DVD drive you can choose manually, and your choice will be remembered in file /etc/dvddevice and read at next bootup to link /dev/dvd to the correct drive.
13Feb05There is some progress with PCMCIA. The script /etc/rc.d/rc.modules loads the base driver modules for PCMCIA, but that alone isn't enough. Puppy also has to have the pcmcia_cs package installed, and after loading the modules, the program cardmgr has to be executed. Normally, loading of modules and execution of cardmgr is handled by rc.pcmcia, a script provided with the pcmcia_cs package, however, Puppy is not using this script. Instead, the modules are loaded by rc.modules, as mentioned above, and also I have now added code into rc.modules to execute cardmgr.
Also /etc/rc.d/rc.reboot now has code to shutdown cardmgr.
12Feb05The remaster-cd script had some bugs. It did not create the live-CD ISO file correctly if the user chose to place usr_cram.fs inside image.gz. Also, the script did not work if executed from Puppy running installed on a hard drive ("Option 2" install, which is the full install of Puppy into a partition, no ramdisk). Now fixed.
Every now and again someone asks on the Forum about a midi player. Puppy doesn't have one. My understanding is that midi has declined somewhat in popularity, also midi players are very big, so I haven't placed a player into Puppy. However, I have created a TiMidity player package for Puppy Unleashed. If you need a midi player, you can create your own live-CD with TiMidity.
Puppy Unleashed automatically builds the menus for the window
the main Help index page, however this takes a long time. I have
build script so that if a live-CD iso is being rebuilt with the same
selection of packages as the prevous build, then the menu rebuilding is
unnecessary and is bypassed. This greatly speeds up repeat-builds when
wants to test little changes.
After a recent hard drive crash, I bought a new hard drive, and also
decided to upgrade the motherboard, as it had a few problems,
with USB. The new board is an Asus P4S800-MX and the Ethernet interface
detected by Puppy and the sis900 module loaded.
However, I then found that the program ifplugstatus, which detects if a network is alive or dead, doesn't work. ifplugstatus is from the ifplugd package, and a little while ago I had upgraded from version 0.18 to 0.25. So, I tried the older version, and it works!
So, I've sent an email to the author, and have taken Puppy back to the older ifplugstatus (note, it was named ifstatus in the old version, but this name conflicts with other products. Anyway, I have renamed the old ifstatus to ifplugstatus).
We are having a run of exciting tiny new apps for Puppy. The latest
acquisition is DidiWiki,
Matthew Allum, and his URL is http://didiwiki.org.
This is a single
executable, with built-in HTTP server. You just start it then point a
browser at it. GuestToo has been extremely helpful and has created a
script frontend, so DidiWiki can be run right off the "Information
DidiWiki is intended as a personal wiki. What do you use it for?
Basically, it's a good place to jot down notes and links. Links can be
internal, local to the PC, or remote. Images can be displayed. I have
included a good help page, with the rules for editing a wiki page.
Another application that has gone into Puppy is guiTAR, and
to TkZip. This is another application that is maintained by Terry
Puppy has acquired another file manager, called uXplor. This is a Windows Explorer clone, with the 2-pane layout, directories on the left pane, which refugees from Windows will feel comfortable with. The executable is only 54K. uXplor is currently maintained by Terry Loveall, at http://www.modest-proposals.com/. Terry has a tiny floppy-based Linux distro called WOAF and a fascinating collection of tiny X applications to go with it.
Note that uXplor does not replace ROX-Filer, as the latter is reponsible for maintaining the desktop shortcuts, therefore required (unless you don't want shortcut icons on the desktop). Puppy now has ROX-Filer, uXplor, MToolsFM and GTKSee, a somewhat eclectic collection, but each serving a useful and different purpose.
Puppy has the Gxset program, which is a GUI frontend to
adjusts various keyboard, mouse, font and screen parameters. Gxset
/root/.xset.sh, which can then be executed at bootup. However, some
in Gxset are incompatible with the xset program used in Puppy. I
wrapper script, /usr/X11R6/bin/gxsetshell, that edits and fixes
/root/.xset.sh. Also, /root/.xinitrc now will execute /root/.xset.sh if
Fvwm95 does have a GUI for these parameters, however I wanted a window-manager-independent program. Gxset can be used with Fvwm95, JWM, or any other w.m.
The install to hard drive script, Option-2, had a bug. It created a regular directory /etc on the hard drive, whereas /etc should be a link to /root/.etc, as per other Puppy installations like the live-CD and USB. I think that I have fixed it. Also, when choosing an upgrade, the script will detect if a previous installation has created a regular directory /etc and fix it.
Gradually expanding the little generic GUIs to manipulate the windows and desktop. Now there is a GUI to choose a solid color for the desktop. Works for all window managers.
I whipped up a little GUI called Pdisk. This is a frontend to cfdisk and fdisk. It just adds a bit of extra convenience, as it is started from the menu and offers simple button choices prior to launching either cfdisk or fdisk.
Did I mention that I also created a little GUI to select the background image for the desktop. Although Fvwm95 does have such a tool, I want generic tools that will work for all window managers.
Puppy Unleashed Beta2 has been uploaded to www.nstsoftware.com/puppy. This is not an official release. Beta2 is for Puppy developers and enthusiasts to play with, and requires some knowledge of the Linux commandline to use. See discussion in the Cutting Edge section of the Puppy Forum for more information. Also read earlier news on this page and News 2004 page.
Bladehunter has experimented successfully with a framebuffer X server on Puppy, and a framebuffer-enabled kernel. He had a problem with an old laptop that could not run the Xvesa X server. In the future, we will probably offer a choice in Puppy, to cater for all video hardware. For more info., see the Forum, "Cutting Edge" section.
With considerable input from GuestToo, we have made some progress with X servers.
The Xvesa X server used in Puppy up until the latest version (0.9.8) has a problem with scroll mice. The wheel works, but the mouse has to be move very slightly while scrolling, else it won't scroll. Another problem is the fixed low screen refresh rate. We have a new version of Xvesa that fixes the former problem. It appears that improving the refresh rate cannot be done with Xvesa. This improved Xvesa will be in Puppy 0.9.9.
We have also put together an alternative SVGA X server, from Xfree86 version 3.3.6. This is a somewhat older X server, that suits PCs manufactured before year 2000. It does offer more configurability, including adjusting the scan rate to suit a monitor. This will not be supplied with v0.9.9, but will be in Puppy Unleashed, a new packaging system that will enable you to build your own custom Puppy. Puppy Unleashed is currently at beta1, with beta2 coming soon. The release version will probably be about the same date as 0.9.9.
As requested on the Forum, cfdisk will be in the next release of Puppy. The hard drive partition program fdisk is already in Puppy. Many people like cfdisk better as it has a somewhat nicer ncurses interface. Note, I compiled util-linux v2.12q package to get cfdisk. I updated fdisk, hwclock and fdformat from this package also.
The fully cp program has been copied from Mandrake. Busybox cp has far less options, and I badly missed the "--update" option. The Busybox cp is still in Puppy and I have named the full version "cp-FULL". Note that I have kept the Busybox cp as the docs state that its "-f" option is "always on", that is, you get "-f" regardless of whether it is there or not -- this is a worry and I'm afraid that it might break some of my scripts if I change totally over to the full cp -- not yet anyway.
cp-FULL is being used in the boot script /etc/rc.d/rc.sysinit to greatly streamline updating of files in /root when a new version is booted. The file rc.update has been completely done away with.
The build script for Puppy Unleashed now auto-generates the main Help file. When Puppy is running, clicking the Start button pops up a menu, and one of the menu items is "Help", which brings up the main help page. This page has links to all the help documentation in Puppy and on the web. The same principle is applied as for menu generation in the window managers. In this case, the package 0rootfs_skeleton-x.x.x has a post-install script pinstall.sh, that edits the main help file, /usr/share/doc/index.html. So, there will only be links to help pages that actually exist.
mtPaint has been upgraded to version 0.50. I cannot praise this application enough! The author, Mark Tyler, has done a brilliant job with coding this application. I sometimes need to scale an image down, for example, a 64x64 pixel image down to 16x16, which Xpaint cannot do -- Xpaint can crop but not scale, which is a serious shortcoming. The latest version of mtPaint adds rotation by an arbitrary angle, plus more stuff. Brilliant, and so small, only 231K, a single executable, no other files to install, with help built-in to the executable.
Okay, the automatic menu generation for Puppy Unleashed is now working. The build script doesn't actually create a menu -- what is required is that each window manager has to have a fully-populated menu in its config file, with all menu items commented-out. The build script sifts through each w.m. config file and works out what lines to uncomment. I have it working for Fvwm95, which uses a leading "#" character to make a line into a comment, and for JWM, which has an XML format config file that uses "<!-- -->" for comments. The code should be readily adaptable to other formats.
Note that beta1 does have menu generation, but only for Fvwm95. It is not a very satisfactory technique, as it requires post-install script in every package, and it only works for Fvwm95. The new technique puts the onus on each window manager -- each w.m. has its own post-install menu-build script, and all that packages have to do is supply one or more keywords.
I have also written a short document that explains simple steps to creating a package for Puppy Unleashed.
All of these improvements will be in the beta2 release of Puppy Unleashed, that I hope to upload soon.
There is now a simple mechanism for changing window managers. Currently the default when Puppy is first run is Fvwm95, and so far I have added support to change over to JWM. GuestToo on the Forum has been contributing excellent ideas on how to implement this. At the Shutdown menu there is the choice of restarting either Fvwm95 or JWM, and the choice then becomes permanent. I settled on making the choice at shutdown, as a separate window manager selection utility is then not required.
When X is not running, that is, there is just the commandline, X can be started with a specific window manager by typing "xwin jwm" for example. Typing "xwin" without a parameter starts the default window manager, which is stored in file /etc/currentwm.
The mechanism can very easily be extended to more window managers. For Puppy Unleashed I am attempting to auto-generate the menus for whatever window managers are chosen to be included in Puppy, and it will also be required to edit the choice of window managers that can be restarted, in each w.m. configuration file.
I have put Joe's Window Manager (JWM) into Puppy, as an alternative to Fvwm95. JWM is very small and fast. The author, Joe Wingbermuehle, has been extremely helpful, adding features that I have requested. I'm very impressed with the sophistication of such a tiny program.
There will be a little utility to choose which window manager you want to run.
The first beta of Puppy Unleashed has been uploaded to www.nstsoftware.com/puppy, as file puppy-unleashed-beta1.tar.gz.
Puppy Unleashed is Puppy reverse-engineered into all the approximately 242 packages, that may then be selectively reconstituted into a custom Puppy. The build script has a nice two-pane GUI for package selection and sophisticated dependency checking. The build script even auto-generates the menu for the Fvwm95 window manager. The files image.gz and usr_cram.fs are generated, as well as a live-CD ISO file.
This is not an offical release. It is the first beta release, and intended to be experimented with by the Puppy developers and enthusiasts. The place for on-going discussion is the Puppy Discussion Forum.
If you develop a package for Puppy Unleashed and want to contribute it to the official tarball, obtain a "Puppy breeders licence" from me (that's a joke) then send it in. It is intended that the first official release of Puppy Unleashed will be concurrent with release of Puppy version 0.9.9. Future releases of Puppy Unleashed will be upgrade patches -- the first release will be approx 70M, after that the upgrade tarballs will only have new and changed packages with an install script -- this will be great for people on slow dial-up connection.
From now we will start the "smallest Puppy" competition. The smallest Puppy that can surf the Internet with GUI web browser and email client, for example. This will be ongoing, and I plan to create a "page of fame" to log people's achievements. There is also the possibility of exactly the opposite, a really fat Puppy with absolutely everything.
You need a running Puppy, not another Linux distro. Note that the build script needs about 350M temporary working space on the partition (apart from the uncompressed tarball itself, which is about 160M), so you need to have a ext2, ext3 or reiserfs partition (not msdos or vfat, unless you mount it as umsdos) with over 500M free space in which to unpack the tarball.
I have put libwmf into Puppy, and the WMF plugin for Abiword. Windows MetaFile is a vector graphics format used by Microsoft. Many clipart images provided with MS Office are in WMF or EMF (Extended MetaFile) format, so if we really want to be serious about viewing MS DOC files in Puppy, we do need to be able to view WMF images also.
Welcome to the new year!
I still haven't been able to upload the bugfix release 0.9.8R2 to ibiblio.org. Their FTP server keeps timing out. You can however find it on www.nstsoftware.com/puppy and it may have found its way to other mirrors by now.