logoPuppy developer news:

from 2.16 to 2.17

left-arrow Older news

arrow-rightLater news

Puppy version 2.17 released 

Announcement of new features and release notes are here:

Go to the main Puppy download page for links to download sites:

Currently the download sites are ibiblio and the ibiblio-mirrors:
http://distro.ibiblio.org/pub/linux/dis ... uppylinux/
(at the time of posting this announcement, the new puppies have not filtered through to the mirrors)

Note that there are two ISOs, one with LZMA compression for the Squashfs file, the other with GZIP. The content is the same, but the LZMA ISO is 83MB, the GZIP ISO is 93MB. Unless you really need the smaller ISO, I recommend the GZIP one, 'puppy-2.17-nolzma-seamonkey-fulldrivers.iso' as it has noticeably faster application loading.

Note also, there is a new web page, introducing how Internet dialup works in the new Puppy:
http://www.puppylinux.com/development/d ... ternet.htm

Mirrored here
On JANET2 so should be quick for those in the UK
(until the university suspend my account for bandwidth abuse!!!)

Barry Kauler 
Feedback can be provided on the Community Forum, either start a new thread, or use this one:

Universal ínstaller is broken. It can only install to hda1.

any torrents yet?

Mike Lockmoore 
I look forward to checking out the many great new things in Puppy 2.17, but I don't seem to be able to boot into it in my Fugal setup, although 2.14 still works fine (using it to post this).

I get through the initial part of the boot, then see a message like "Puppy cannot be found on ..." and then get dumped into the text-mode # prompt with just the initrd stuff available. pup_217.sfs and zdrv_217.sys are in my WindowsXP C:\ folder, named in lower-case as I have done in earlier versions like 2.14. The initrd.gz and vmlinuz files are renamed in lower-case and put into a folder under \boot, like my 2.14 settings. Here is a copy of my menu.lst grub file...

# GvR Sept 30th 2004
color black/cyan yellow/cyan

title Default Boot (DELL Special Utilities) on HD 0
rootnoverify (hd0,0)
chainloader +1

title Puppy Linux 2.14
kernel (hd0,1)/boot/puppy.214/vmlinuz root=/dev/ram0 PMODE=idehd
PMEDIA=idehd PDEV1=hda2
initrd (hd0,1)/boot/puppy.214/initrd.gz

title Puppy Linux 2.17
kernel (hd0,1)/boot/puppy.217/vmlinuz root=/dev/ram0 PMODE=idehd
PMEDIA=idehd PDEV1=hda2
initrd (hd0,1)/boot/puppy.217/initrd.gz

(Note that there may be some word-wrap so some of the lines above look split when they are not really.) I also tried to take out either of the PMODE and PMEDIA options, but that seemed to have no effect when booting.

Do I need different kernel boot options with Puppy 2.17? Or do I need to arrange things differently in my frugal install? Thanks for any suggestions.

Try without the PMODE and PDEV1.

If that doesn't fix it, it must be a problem with the /boot/linux.217 path. To find out, just put the files at '/' and change the menu.lst accordingly, see if it boots then.

I had a similar problem trying to use a multi-boot grub for puppy 2.16 and 2.17. After trying permutations of boot parameters and file system locations, my solution was to put 2.17 on usbflash - not very adventurous, I know.

Mike Lockmoore 
Barry: I think I had tried it without the PMODE and PDEV1 before I posted. Anyway, I moved the initrd.gz and vmlinuz files up to the C:\ folder and updated menu.lst as you suggested and it works!!! I'm posting this from SeaMonkey on 2.17 and my wireless card (which was problematic before version 2.14).

Now to check out some of the new goodies.... Thanks Barry (and helpers)!!!


Still not quite ready for a general release to the public!

We have a problem with USB keyboard detection with some hardware. As far as I can make out, some USB interfaces are being extra slow to acknowledge their presence, so I took a stab in the dark and put in an extra 2 second wait. Can you guys who have the problem of the USB keyboard not working for the "choose your country" dialog window, please try this release.

Get it from: http://distro.ibiblio.org/pub/linux/dis ... inux/test/

Wolf pup 
Barry, 2.17RC still doesn't work with lucent modem, keyboard lights blink, and computer locks up when modem is done connecting + wifi still flaky.

Dear Barry!

It could bee so very nice if the CD-rom could be checked against itself. An item in the initial start-up menu for a md5sum check of the iniitial iso-image (multisession is quite another story).
Loking at the Forums it seems to bee to much waste of resources not to do it - please.

Definitely retrograde! Slower overall.
I have to type in my locale choice.
The Woof! Woof! box is still absent.
There is a problem changing the background colour, which has been the case for several versions: the first attempt to change it doesn't work - only the second attempt???

Barry, Sage,

Just to present another view - Fast as before, did not have to type in locale, woof OK, background changes all work.

This from a fresh start. (The "Please choose which personal file to use" is a nice touch.)

I have also been using my current .2fs file with 2.17rc extensively and no problems except initially readjusting some icons.

Very fine.


It is fast and works for me with no problem as well as Puppy 2.17beta.

Matt B. 

I have no USB keyboard problems with this version.

Using a Dell Optiplex GX270, the initial release of 2.17 has the problem (I doublechecked just now), but the release candidate does not.

So whatever you changed, well done!

--Matt B.

MiBu (Michael.Burkhard<at>online.de) 

this release works fine for me (ASROCK K7vt2). No more problem witch the USB-keyboard.



Afraid the problems I reported above are now confirmed with both nVidia & ATI cards on three entirely different machines. Only slight variation is that I cannot get an entirely black background with ATI - just streaky greys and colours. This [b]IS[/b] slower than the last (alpha) even with 512MB memory. I have to type in <en_GB> for my k/b - never had to do this before. And the 'box' around the Woof Woof intro page [b]IS[/b] missing and cannot therefore be deleted using the top rhs options. Sorry guys, I have masses of kit to test with here and can do some more tests, but I suspect I know the results. Go with a modified alpha, Barry, not this beta.

Sorry to Report 2.17rc Just Hangs'Loading vmlinuz...', But beta was OK
Thanx 4 Y'r Efforts all th' same Barry & Gang ;-)

Fox7777 (Fox7777<at>CarlsonCo.net) 
In the universal installer from Puppy 2.16 to Puppy 2.17RC, the options for installing to most partitions on hda have been missing. Prior to Puppy 2.16, the options for all partitions were there. Is anyone else having problems with this? How can this be fixed?

Barry Kauler 
Ah, USB keyboard working, great!

Regarding "speed", alpha, beta and rc are identical. I'm not just writing that, it's a statement of fact.

beta and rc are just about identical, no reason to hang loading vmlinuz -- that must be something else.

Universal Installer hda partitions missing? I don't know anything about this, don't have that problem. Have you raised this issue in the forum and analysed why it might be?

I'm using opera 9.22 in 217rc booted from the live cd entirely in ram with no accessible pup_save. I've tried a few things.

- Printing which I can only do from abiword (to lpr) isn't right - the last line of the first page is overwritten with the first line of the next. Mind you I couldn't select the driver for my hp deskjet plus even with hpijs-1.7.pet installed. I chose deskjet series (which doesn't have Gutenprint on the end).

- after printer setup I noticed that the cpu usage graph was half red (and I could hear the fan louder than usual). There was nothing taking that much cpu in top. I saw cupsd at 1% and X at 3.4% momentarily. No sluggishness and the red went after a couple of minutes.

- I have a usb numeric keypad which has worked after all 4 boots (both in the locale chooser and in X (numeric even when num lock is off)). It usually failed in 216 and 217beta.

- While booting a count is printed during modem detection. It's strange that sometimes it counts into the 20s and sometimes to less than 10.


Looks good to me!

PS: Don't forget to fix the kernel-src_217.sfs, or everybody who uses it will have to do a make oldconfig && make prepare first.

Well, Sage, if you want speed, grab the 'puppy-2.17-nolzma-seamonkey-fulldrivers.iso'

Zygo, have you tried to print a test page from within the CUPS Web Interface? That would identify if the problem is just with Abiword. I have printed a test page, plus from Abiword with my HL2040 laser printer, and alignment was perfect.

Barry, the test page printed fine but it is only one page long so the 2-page-overlap is not tested.

I booted 4 times today and my usb keypad worked only the 4th time. And on this 4th occasion I was presented with a colour selection list of locales (instead of having to type in en_GB). This has never happedend before.

Hi Barry et al,

mine is fine........

cups works great...now I don't have to do to their site to get it.. I used a different driver than the recommended one...the recommended driver is slow and buggy..(hpijs or something,dunno the correct name)so I used the driver above that one in your list and voila it's a gem....(for HP870C)....ty. For HP 2110 PSC I went to linuxprinting.org...did a search and again voila


I can't reproduce the problems descibed above as mine just works on my HP nx9240 lappy.

sage...I have an ATI Radeon Mobility X1600 with a widescreen...flawless and not washed out like a writer said recently...so no help there.

Speed is as usual very fast for me(about a minute to boot)....and universal installer is as usual just right with it's help and directions.

I would like to see the Puppy Software Installer as in 2.15 to be used in the future (loved the search feature).

I ran into the usb keyboard prob on a Dell usb wireless keyboard on 2.17...did not respond at the first screen choice so I used a ps/2 keyboard and saved the session and next boot was ok with the usb wireless after configuration with the wizard...went back to 2.16 for my customer and it's fine there.

WakePup2 enhanced 

WakePup2 is a floppy disk image for creating a boot floppy disk that will bootup Puppy, where Puppy is installed to CD, USB or fat HD.

Pakt developed this originally, now John Doe has been enhancing it, see this thread:

CUPS print-to-PDF-file 

Jcoder24 created print-to-PDF for the PDQ print system in Puppy 2.16. As we have moved to CUPS, jcoder24 has now created a PET package for CUPS print-to-PDF.

I have just tested it, works great. I have created a PET package 'cups_pdf-0.2' with slight change from the original -- the install script is now /etc/init.d/cups_pdf -- it runs 'lpstats-cups -a' to test if CUPS-PDF printer already setup, if not does so. It's a teensy tiny overhead having to run this at every bootup, but I didn't know how to run 'lpadmin' when creating the live-CD. Well, probably better checking at every boot, in case a new pup_save is created.

Forum thread: http://www.murga-linux.com/puppy/viewtopic.php?t=16910

Bugfix and refinement for pup_save filesystem 

Kirk provided this feedback:
* Still have pup_save.2fs being created on a ext3 partition. When rc.shutdown is running the final sanity check shows that the name of the save file is pup_save.2fs and the file system inside the pup_save file will be ext3.

* Encrypted pup_saves are mounted as ext2 and not fscked. A comment in the init script says "#forum feedback this takes to long when encrypted..." That's a mis-understanding. When I posted that, some assumed I was talking about an encrypted pup_save, but it was non-encrypted with a lot of files.

Yes, there was a bug where a save-file named 'pup_save.2fs' got created but it actually had a ext3 filesystem in it. Fixed.

I have restored filesystem check for encrypted pup_save files at every boot. I have added a message to the console when a check is being made, so that we can observe exactly how long it is taking (previously there was no explicit message that identified exactly when or if a f.s. check was taking place).

Dear Mr Kauler

Puppy currently makes use of Syslinux/Isolinux 3.11

The latest version is 3.50 and it is a "major new feature release".
latest version

A [i]lot[/i] has changed since version 3.11 and the changelog makes interesting reading.

I have not yet found a linux distribution that makes use of 3.50. If Puppy were to do so it could then benefit from the bugfixes and the new features.

Thank you for making Puppy. It is amongst the best.

David (Getnikar) Tangye (DavidTangye<at>gmail.com) 
Hi Barry,

Sorry this is offtopic. Please see. http://www.murga-linux.com/puppy/viewtopic.php?t=19922

Puppy has Syslinux v3.31.

wilsonb (wilsonb<at>pobox.com) 
Stupid question:

How do I install it? I downloaded the gz file and am ready to extract it to somewhere. It looks like source code. Do I have to compile it and install somehow?
Is there a dot pup version?

BootManager: SFS management 

There has been some confusion with using this, which I have not been able to understand as it seems very straightforward to me -- then I am the developer, so perhaps I have assumed something that is not obvious to others.

The main confusion is with naming of the SFS files. If an SFS file has '_xxx' in its name, where the 'xxx' is three numeric digits, then it has to be '_217' otherwise it won't even get listed. So, SFS files have to have '_217' in the name, OR can be anything else, for example 'openoffice-2.2.0.sfs' is fine. An example of one that will get screened out is 'openoffice_216.sfs' -- you won't even see it in the BootManager.

The reason for filtering out any '_xxx' that is not the current version is very simple, they are likely to be inappropriate versions. For example, 'devx_214.sfs' is the C/C++ compile environment designed for use with Puppy 2.14.

Anyway, I have modified the information under the 'Help' button in the BootManager to further clarify this.

USB keyboard not working? 

A few people -- 3 I think -- have reported in this blog that their USB keyboard did not work when they were at the "choose your country" dialog for 2.17alpha, but a PS/2 keyboard did. Those people are 'Eric', 'Matt B.' and 'WilsonB'.

There was one report that the USB keyboard worked at the initial boot-parameter-entry stage, but not later at the choose-your-country dialog. The reason for this is that the first situation has its own code for receiving input from the keyboard, PS/2 or USB, whereas by the time of the dialog window Linux is running and the 'usbhid' driver is handling keyboard input.

For 2.17beta I have put in a couple of special files to try and log what is happening in this situation, but so far no one has reported back. See the announcement below for 2.17beta, note those two files. If you have this problem, can you please report it, otherwise it won't get fixed. Please report to the forum thread.


Also some people with USB keyboards said they could not input a password when using an encrypted file. I asked if they could select from multiple pup_save files, but got conflicting answers. Some yes, some no. Just assumed the usb modules were not loaded yet.

The same thing happens with me with Puppy 2.17 final. Check my thread in the bugs forums for more details.

Country setup bugfixes 

Tweaked and fixed some bugs in country/locale/timezone setup. Also added USA 'Mountain' timezone.

James (redvamp128<at>yahoo.com) 
Under 2.16 it worked fine... but the Mouse does not work in 2.17 alpha or the beta... under Microsoft Virtual PC 2007. I tried even an upgrade still did not work.

Link to simulated hardware

If there are any files in 2.16 that can help you let me know. I can get as far as the XVESA choice but with no mouse I can't tell it what resolution to use.

Sakura terminal emulator 

I have created Sakura as a PET package. This uses the VTE package, but I linked it statically with Sakura, so the VTE shared library is not required. Quite a nice GTK2-based terminal emulator, but for the standard Puppy I'm staying with rxvt.

I updated the "HOWTO write programs for Puppy" built-in help page (in the live-CD), to include FreeBASIC programming. Note, the 2.17beta has an updated "HOWTO connect to the Internet" with most recent information on dialup.

louis (louis<at>pedersen.tdcadsl.dk) 
See this new linux hardware site - it could be helpfull !
and thanks for all the work - Puppy rocks !

Is Sakura PET available for download from somewhere?

Barry Kauler 
No, Sakura will be uploaded along with all the rest of the new and updated PET packages to ibiblio, within a week.

Puppy 2.17beta available 

As usual, the alpha and beta releases are for our Puppy-testers and not for general release.
It is most important that you follow the instructions when booting -- be absolutely sure not to use anything pre-existing from previous testing of 2.17alpha ('pup_save' file, pup_217.sfs, zdrv_217.sfs -- the latter two may be on the hd in same place as the pup_save file). You can achieve this by booting with the boot parameters 'puppy pfix=ram'.
If you want to do a test upgrade of your 2.16 pup_save file, be sure to backup the file first.

Pre-release notes for 2.17: http://www.puppylinux.com/download/release-2.17.htm

Download live-cd iso file:
http://distro.ibiblio.org/pub/linux/dis ... inux/test/

Download the latest 'devx' file:
http://distro.ibiblio.org/pub/linux/dis ... modules-2/

Download the patched kernel source: http://puptrix.org/sources/kernel-

Read down this blog for announcements about improvements and bugfixes since 2.17alpha. One bug that I have not been able to solve, simply because I do not have that bug (and I tested on 6 different machines), is the case of the USB keyboard not working when the "choose your country" dialog box is displayed -- to assist with debugging that, Puppy creates two log files:
...If you get this bug, can you please post those files.

New forum thread for feedback on 2.17beta:

Note, there is one significant change from the alpha (and all previous puppies) -- I have removed /etc/TZ, also the TZ variable is no longer exported in /etc/profile.

Very fine, Barry,

2.17beta came right up, Glipper restored, and for the first time I did not have reposition a single icon!


Everything seems to work a lot faster. One minor issue that's been present with the 2.17 series: the 'Woof Woof' message that appears on the XOrg intro screen cannot be deleted as the box and functions are absent. Not a problem for me as I usually use XVESA; the message disappears in XOrg if the background colour is changed - I always use black. Consider how much better this version would be better with Opera and Seamucky removed!

Just Reporting Synaptics Mouse Pad Not Working on Toshiba Satyrlite M50 w/ 2.17 Beta Altho I Did see it listed in th' xorg.conf file. Also apparently in previous versions I've been advised I had ACPI issues ( Not Shutting Down Properly on Dead Battery I Vaguely Recall, altho I've to Test it on this Latest, But this Leads Me to Battery Monitoring???
And I 2nd Sages Sentiments about Opera & Black BackGrounds ( w/ Silver Fern Logo & All Blacks Surely World Champs Shortly again 20 Yea's Latter!?! )

I would like to see another version with opera and dillo or hv3.
I don't like the welcome backgroud it just isn't right. always not a good first impression. like the background from meanpup and it has gotta be free it is a gnu/linux walpaper.


As far as I can tell this could be the final release. It is noticeable faster then alpha. Works well with a new pup_save.2fs file as well as with upgraded Puppy 2.16 pup_save.2fs file.

I use one frugal install on a hard disk FAT32 partition and another one on a usb flash drive VFAT partition. Both sfs files, devx_200.sfs and OpenOffice.org ooo-220.sfs mount without any problem in both installations.

Timezone is properly set according to the keyboard layout.

CUPS works well with my HP LaserJet 4P and makes very nice prints, better then previous Lpd printing system.

I noticed that psubdir parameter works now for pup_save.2fs file and not for pup_xxx.sfs file as before.

Now I can have all pup_xxx.sfs, devx_xxx.sfs, zdrv_xxx.sfs and pupswap.swp on / directory and all pup_save.2fs files each in its own directory.

This is a part of my menu.lst:

# Boot Puppy Linux
title Puppy-p2.17b, idehd, bp217b, pup_save.2fs file created by Puppy-p2.17b
rootnoverify (hd0,4)
kernel /bp217b/vmlinuz root=/dev/ram0 PMEDIA=idehd psubdir=bp217b
initrd /bp217b/initrd.gz

# Boot Puppy Linux
title Puppy-p2.17b, idehd, bp217b_, pup_save.2fs file upgraded from previous version
rootnoverify (hd0,4)
kernel /bp217b_/vmlinuz root=/dev/ram0 PMEDIA=idehd psubdir=bp217b_
initrd /bp217b_/initrd.gz

# Boot Puppy Linux
title Puppy-p2.17b, idehd, bp217b0, create new pup_save.2fs
rootnoverify (hd0,4)
kernel /bp217b0/vmlinuz root=/dev/ram0 PMEDIA=idehd psubdir=bp217b0 pfix=ram
initrd /bp217b0/initrd.gz

Also I've recently discovered this download in the PC Linux OS Repository that's supposed 2 enable Agere WinModems like in M' Toshiba M50 Laptop ( I Think? )
Martian is an alternative to ltmodem and provides support for PCI Agere WinModem hardware under Linux. These are modems built on DSP 164x (Mars) series.

When configuring wvdial add "Carrier Check = no" line. No modem status is checked yet.

PLEASE NOTE: This is a BETA driver (testing release), there is no 'official' driver release yet.

" I don't like the welcome backgroud it just isn't right."
At first I thought the first boot screen a bit strange as well.
But after using this Puppy a few times to fix a Windows computer--unusual-- I really like it...more links for beginners.

My 1 gig LG usb finally booted on a cheapie Asus motherboard...
although not at first...I had to change to the back USB port.
So whoopee!........You and Puppy and all the helpful Puppy gurus
do wonders again.
Tried it on a new Asus P5GC-MX board but the network won't run.
Attansic L2...obviously not BODGY...just horrible unworkable.
Here are some links:


" Marcin Cie&#347;lak said on 2007-03-28: (permalink)

The are better drivers for Attansic L1 (0x19691048) available on the http://atl1.sourceforge.net/.

There is also another card (found on Asus F5R laptop) called Attansic L2 (0x19692048) and the driver is there:


I got this driver from Attansic on the atl1-devel mailing list."

Cheers Chris

" Tried it on a new Asus P5GC-MX board but the network won't run.
Attansic L2...obviously not BODGY...just horrible unworkable."

Tried everything...No GO.
But that BK has been working away like a Beaver...or a Platypus I s'pose,
because I plugged in my little USB Z168A ADMtek ADM8511 USB Fast Ethernet Adapter tiny network card and here I am.

I tried the new PC Linux....no go, then our other opposition Internet Cafe Aussie distro called CL33N...based on Debian....also no go.

So I takes me hat off to you Mr Kauler....you're a gem.

Regards Chris.

Back to work and fix this horrible Asus network driver thing.
Enough of this laying about.

James (redvamp128<at>yahoo.com) 
Link to Simulated hardware.

Under 2.16 it worked fine... but the Mouse does not work in 2.17 alpha or the beta... under Microsoft Virtual PC 2007. I tried even an upgrade still did not work.

f there are any files in 2.16 that can help you let me know. I can get as far as the XVESA choice but with no mouse I can't tell it what resolution to use.

I use a Logitech Marble Mouse... not using the Logitech Drivers..Using the default windows. But In Puppy 2.16 it works just fine.

I know I posted this in a few places...I do apologize. I just don't want the users who run puppy in a VM to be left out.

Hi Barry,

I could not get Puppy 2.17 beta to run on VirtualPC (no harddisk, just iso image mounted as cd-drive).
Booting stopped right after message:

creating unionfs on (/initrd)/pup_new (to become '/')... done

By the way, there are no such problems with Puppy 2.16.

Alfonso L. 
Hi Barry, I have troubles with 2.16 and 2.17 alpha and betha, because at booting says:

Looking por puppy in hdc done

Error cannot find puppy on 'cd' boot media
pupmode=1 pdev=
exited to initial-ramdisk (initramfs) commandline...

/bin/sh; can't access tty;job control turned off.

It happens only in my laptop Dell latitude CPi, PII 366mhz.

Thanks in advance, great job.

Just an minor suggestion for aesthetics - at some stage it would be good if some of the things like MUT and puppy-volumemixer have icons for JWM. I notice in 2.16 that I can give MUT an icon by making a mut.tcl.xpm, (there is one there without the .tcl) but unfortunately it doesn't seem to work for the volume mixer, just like it didn't work for MUT a long time ago.
Also, it would be good to check out Nathan's use of Roxapps in Grafpup - more like they are intended to be used - I don't know if it was ever part of Puppy, but being able to right click on "drives" and choose MUT or Pmount and stuff like that is really convenient.

MiBu (Michael.Burkhard<at>online.de) 
Hello Barry,

I have the same problem with the USB-keyboard.

My mainboard is a ASROCK K7vt2:
the keyboard and the mouse are connected
over a 4-port-USB-hub (V1.1)

After the "select your country"-dialog I
connect a PS/2-keyboard and choose "german".
After that both the USB-kbd and USB-mouse works

this is the file from /initrd/tmp/

Run lsmod: (is usbhid loaded...)
Module Size Used by
fuse 46100 0
aufs 113036 0
nls_iso8859_1 4352 0
nls_cp437 6016 0
ehci_hcd 32408 0
uhci_hcd 25364 0
usbcore 132252 3 ehci_hcd,uhci_hcd
sr_mod 17832 0
ide_cd 40328 0
cdrom 40384 2 sr_mod,ide_cd
squashfs 48264 0
sqlzma 4356 1 squashfs
unlzma 4608 1 sqlzma

Content of /proc/bus/usb/devices:

T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 6
B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux ehci_hcd
S: Product=EHCI Host Controller
S: SerialNumber=0000:00:10.3
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms

T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:10.2
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:10.1
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:10.0
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

Last 20 lines of dmesg:
<6>hub 2-0:1.0: 2 ports detected
<6>ACPI: PCI Interrupt 0000:00:10.2[C] -> Link [LNKC] -> GSI 10 (level, low) -> IRQ 10
<6>uhci_hcd 0000:00:10.2: UHCI Host Controller
<6>uhci_hcd 0000:00:10.2: new USB bus registered, assigned bus number 3
<6>uhci_hcd 0000:00:10.2: irq 10, io base 0x0000d000
<6>usb usb3: configuration #1 chosen from 1 choice
<6>hub 3-0:1.0: USB hub found
<6>hub 3-0:1.0: 2 ports detected
<4>ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 3
<7>PCI: setting IRQ 3 as level-triggered
<6>ACPI: PCI Interrupt 0000:00:10.3[D] -> Link [LNKD] -> GSI 3 (level, low) -> IRQ 3
<6>ehci_hcd 0000:00:10.3: EHCI Host Controller
<6>ehci_hcd 0000:00:10.3: new USB bus registered, assigned bus number 4
<6>ehci_hcd 0000:00:10.3: irq 3, io mem 0xdffffc00
<6>ehci_hcd 0000:00:10.3: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
<6>usb usb4: configuration #1 chosen from 1 choice
<6>hub 4-0:1.0: USB hub found
<6>hub 4-0:1.0: 6 ports detected
<6>aufs 20070618
<4>fuse init (API version 7.8)

and this from /tmp/

Run lsmod: (is usbhid loaded...)
Module Size Used by
via_rhine 24728 0
snd_via82xx 28600 0
gameport 15368 1 snd_via82xx
snd_ac97_codec 97700 1 snd_via82xx
ac97_bus 2432 1 snd_ac97_codec
snd_pcm 78992 2 snd_via82xx,snd_ac97_codec
snd_timer 23432 1 snd_pcm
snd_page_alloc 10248 2 snd_via82xx,snd_pcm
snd_mpu401_uart 8448 1 snd_via82xx
snd_rawmidi 23872 1 snd_mpu401_uart
snd_seq_device 8332 1 snd_rawmidi
snd 52324 7 snd_via82xx,snd_ac97_codec,snd_pcm,snd_timer,snd_mpu401_uart,snd_rawmidi,snd_seq_device
soundcore 7904 1 snd
via_ircc 23448 0
irda 117304 1 via_ircc
crc_ccitt 2304 1 irda
b2c2_flexcop_pci 8868 0
b2c2_flexcop 27792 1 b2c2_flexcop_pci
mt352 7176 1 b2c2_flexcop
mt312 8200 1 b2c2_flexcop
bcm3510 11400 1 b2c2_flexcop
stv0297 8448 1 b2c2_flexcop
nxt200x 15112 1 b2c2_flexcop
firmware_class 9984 3 b2c2_flexcop,bcm3510,nxt200x
lgdt330x 9352 1 b2c2_flexcop
stv0299 11280 1 b2c2_flexcop
dvb_core 80460 3 b2c2_flexcop,lgdt330x,stv0299
lgh06xf 3200 1 b2c2_flexcop
dvb_pll 14728 2 b2c2_flexcop,lgh06xf
i2c_core 22672 10 b2c2_flexcop,mt352,mt312,bcm3510,stv0297,nxt200x,lgdt330x,stv0299,lgh06xf,dvb_pll
8139too 26128 0
mii 6016 2 via_rhine,8139too
via_agp 10496 1
agpgart 36176 1 via_agp
fuse 46100 0
aufs 113036 1
nls_iso8859_1 4352 0
nls_cp437 6016 0
ehci_hcd 32408 0
uhci_hcd 25364 0
usbcore 132252 3 ehci_hcd,uhci_hcd
sr_mod 17832 0
ide_cd 40328 0
cdrom 40384 2 sr_mod,ide_cd
squashfs 48264 1
sqlzma 4356 1 squashfs
unlzma 4608 1 sqlzma

Content of /proc/bus/usb/devices:

T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 6
B: Alloc= 0/800 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux ehci_hcd
S: Product=EHCI Host Controller
S: SerialNumber=0000:00:10.3
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms

T: Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:10.2
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 1, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:10.1
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 4
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=03eb ProdID=3301 Rev= 3.00
S: Product=Standard USB Hub
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 64mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=255ms

T: Bus=02 Lev=02 Prnt=02 Port=02 Cnt=01 Dev#= 3 Spd=1.5 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=046d ProdID=c016 Rev= 3.40
S: Manufacturer=Logitech
S: Product=Optical USB Mouse
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=10ms

T: Bus=02 Lev=02 Prnt=02 Port=03 Cnt=02 Dev#= 4 Spd=1.5 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=1267 ProdID=0103 Rev= 1.01
C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
I:* If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=(none)
E: Ad=82(I) Atr=03(Int.) MxPS= 3 Ivl=10ms

T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux uhci_hcd
S: Product=UHCI Host Controller
S: SerialNumber=0000:00:10.0
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms

Last 20 lines of dmesg:
nxt200x: nxt200x_readbytes: i2c read error (addr 0x0a, err == -121)
Unknown/Unsupported NXT chip: 00 00 00 00 00
b2c2-flexcop: i2c master_xfer failed
lgdt330x: i2c_read_demod_bytes: addr 0x59 select 0x02 error (ret == -121)
b2c2-flexcop: i2c master_xfer failed
b2c2-flexcop: i2c master_xfer failed
stv0297_readreg: readreg error (reg == 0x80, ret == -121)
b2c2-flexcop: found the vp310 (aka mt312) at i2c address: 0x0e
DVB: registering frontend 0 (Zarlink VP310 DVB-S)...
b2c2-flexcop: initialization of 'Sky2PC/SkyStar 2 DVB-S (old version)' at the 'PCI' bus controlled by a 'FlexCopII' complete
ISO 9660 Extensions: RRIP_1991A
NET: Registered protocol family 23
ISO 9660 Extensions: RRIP_1991A
ACPI: PCI Interrupt 0000:00:11.5[C] -> Link [LNKC] -> GSI 10 (level, low) -> IRQ 10
PCI: Setting latency timer of device 0000:00:11.5 to 64
ISO 9660 Extensions: RRIP_1991A
via-rhine.c:v1.10-LK1.4.3 2007-03-06 Written by Donald Becker
ACPI: PCI Interrupt 0000:00:12.0[A] -> Link [LNKA] -> GSI 11 (level, low) -> IRQ 11
eth1: VIA Rhine II at 0x1c000, 00:0b:6a:05:74:44, IRQ 11.
eth1: MII PHY found at address 1, status 0x7849 advertising 05e1 Link 0000.

I hope this helps


Bugfix for Universal Installer 

The Universal Installer was orignally written by me. Dougal did a significant upgrade for Puppy 2.16 (and maybe earlier, don't recall). Testing in 2.17alpha, a small bug was discovered, which also applies to 2.16.

Forum member jamesbond reported this:
tried in 2.16.1, if you use the default settings - it simply will not boot. The default setting offered in 2.16 is wrong:
1. root is pointing to /dev/hda1 instead of /dev/ram0
2. there is an "ro" parameter (=read only?) on the kernel line
3. the initrd line is missing (perhaps as part of barry's experiment with initram-fs initrd, in earlier 2.16expr - which did not need this line)?

So, I went through the exercise of a frugal install to internal hard drive, actually partition hda1. It all went smoothly, and the correct entry in 'menu.lst' for GRUB was created. However, the script did not exit when it should, and went on to create another GRUB entry for a full hd install -- which is what jamesbond has reported.
Very easy to fix, and I tested this, it seems okay: just insert an 'exit' into line 1350 -- from Dougal's comment on line 1349, he intended an exit at that point anyway.

could an example menu entry for an HD install be included. in the help section possibly or just add it to the grub menu.lst?
mine is installed to an extended partition and will not finish booting. it gives an error right after the kernel loads could be because of the errors in the 2.16 installer.

on a good note however my fugal and XP are booting fine


Does this help: http://www.puppylinux.com/hard-puppy.htm

Blank-line-under-country-dialog fixed 

The title says it all. The bug was that the ENTER key had to be pressed twice.

Now to tackle a more ellusive bug. Some people reported that their USB keyboard did not work at the stage when the country-dialog was displayed,but did later. Very odd. I haven't been able to reproduce it yet, will test on some more computers.

At first boot I choosed country option:


After that this error message is displayed:

cannot open file sl.map
Pausing for 60 seconds...

After created a new pup_save.2fs file the same error message is displayed at each boot.

If I choose Xorg then the keyboard layout is properly configured in "InputDevice" section of my xorg.conf file to:

Option "XkbLayout" "si"

I use frugal install on FAT32 with Grub4dos.

My menu.lst file:

title Puppy-p2.17a-idehd-pfix-ram-bp217a
rootnoverify (hd0,4)
kernel /bp217a/vmlinuz root=/dev/ram0 PMEDIA=idehd psubdir=bp217a pfix=ram
initrd /bp217a/initrd.gz

It is interesting that there is no error message about missing sl.map file when I upgraded to Puppy 2.17a from my old Puppy 2.16 pup_save.2fs file.

The only problem when using the old pup_save.2fs file is that at every boot the timezone is set to GMT+8.

The timezone for Slovenia is GMT+1.

This is not a problem when using a pup_save.2fs file created by Puppy 2.17a.

Looking in /usr/share/kbd/keymaps, it looks like your case should be 'slovene.map'. I've fixed the lookup table in /etc/rc.d/rc.country. Thanks for the feedback.

Yes, I changed "sl" to "slovene" in the lookup table in /etc/rc.d/rc.country and that sloved the problem. Thanks for quick reply.

Country/locale/keyboard wizards updated 

I have been improving and updating a few wizard scripts. This has included improving the user interface and updating some scripts that still used the original 'gtkdialog'. Some improved scripts include 'input-wizard', 'wizardwizard' and 'timezone-set', in /usr/sbin.
A new script is created, /usr/sbin/countrywizard.

Great. In 217alpha the time was 1 hour slow (ie GMT). timezone-set said I was in zone 0 then when I clicked zone 0 the time change to BST ie the same as 216 (and correct).

Is this http://www.murga-linux.com/puppy/viewtopic.php?t=19761 change to ehci-hub.c relevant, possible and likely.

Loading an encrypted pup_save bug

Quoting from this URL: http://kerneltrap.org/?q=node/2015
Again, the boat is rocked, again, I can't reuse my encrypted files. Everytime I install the next version of Linux it's the same story, absolute crypto hell.

...came across this comment when googling :-)

I tested "light" encryption (xor algorithm), which worked.

I tested "heavy" encryption, which uses aes algorithm, but as testers have reported, it won't accept the password. I modified the 'init' script to enable me to drop out to a shell at that point in the script, and I found that the 'losetup' program returns this error:

ioctl: LOOP_SET_STATUS: no such file or directory

A google only returned one hit, no solution.

After bootup, losetup does work with the aes-encrypted file, and 'lsmod' showed these extra modules have been loaded by the kernel:
blkcipher cbc

So, I've put those into the initial ramdisk and have loaded them explicitly in the 'init' script. I have not tested yet, but it is probably fixed.


Did you mean to say [b]ebc[/b]? I don't have cbc loaded. Lsmod showes blkcipher in use by ebc on mine.

Never mind. I had blkcipher, ecb, michael_mic, and arc4 loaded because of WPA. Rebooted with a new pup_save file then just had blkcipher and cbc. Added them to the initrd. That did fix it!

Thanks Barry. You da man!

I was going to respond with the cool dude with the sunglasses image, but this blog doesn't have one of those!

I thought John Doe had already tracked it back to the cbc module in a comment on the forum thread. Or am I the only one reading that stuff?

Well it was the cbc & blkcipher, or if you've been using WPA you could use blkcipher + all of those modules I listed above. Which is why I didn't see any extra modules load. Anyway, I looked at the blog before going to the forum yesterday morning. Not sure which came first, time stamps in the forum don't seem to be consistant. Must have been pretty close.

I would like to acknowledge john doe, who tracked it down at the same time as I did. John found this forum discussion: http://lkml.org/lkml/2006/11/29/302
Which narrowed it down to the 'cbc' module. Strangely, when I googled I did not find that discussion, ah, I think I see why: the string in that forum is:
50ioctl: LOOP_SET_STATUS: No such file or directory
and I used the string without the "50" prefix, and a quick test with google shows that without it google does not find the site.

Anyway, I arrived at the need for 'cbc' and 'blkcipher' simply by observation, as they got autoloaded by the kernel when testing cryptoloop after Puppy had booted.

John Doe 
Actually PaulBx1 found it, I just read it and thought about a discussion he and I had regarding the "kernel politics of cryptoloop" (based on an article we read a while ago during the testing of it). Then I just took a wild guess based on that one guys problem with config.

You guys get all the credit for that one :-)

USB keyboard still works fine 

Three 2.17alpha-testers reported that the USB keyboard did not work at the initial 'choose country' dialog but did later. I tested on two more computers, and it still works for me. That's 4 computers I've tried, very different beasties, CPUs are 1GHz, 2.6GHZ, 2GHz, and 1.5GHz.

Then, on the last one I tested, the older one with 1GHz Celeron CPU, I tested choosing other entries than my usual "AUSTRALIA-west", for example, "other" -- and it worked fine. I did not have to press ENTER key a second time, as some testers have reported.

So guys, what to do? What is it about your computers? Perhaps you should compare specs, see if there is a common factor. Perhaps some common peripheral device? ...I'm taking wild stabs here, I really cannot progress until you come back with more info. I can't test on any more PCs with USB ports today, will be able to do so tomorrow.

What about USB1 versus USB2? All my PCs have USB2

Good day!

I don't have keyboard problem with my PC if booting direct from CD. It happens only when I installed the puppy to my flash drive. When I inserted the flash drive and start the computer, I can't continue because the arrow down key can't be moved. But when I plugged in the PS/2 keyboard to select the region, it continues and works fine. I changed the PS/2 back with the USB and is now okay.

I don't know why it happened because when I use the 2.16.1 version, it works fine.

But other than that, this new Puppy is Great. I can say that the Gparted improves very well. My IBM Thinkpad T23 works well also with this new version.

Thank you sir Barry and to the Puppy Team as well. God Bless You All!

Matt B. 

I had a problem with one computer, but today I tried it on another one and it worked fine. Both computers are Dell Optiplex GX50's, so I don't know why there should be any difference.

And you know, even with the one where I couldn't move the country selector, I could still type boot options at the first screen, like "puppy pfix=ram".

Apparently it's not a problem very often, anyway.

Thanks for Puppy!


Some people reported they hit enter key, then got a blank line, then had to hit enter key again.I have just been looking at the code:
[pre]while :; do
EXECDLG="dialog --aspect 10 --no-cancel --menu \"Select your country:\\n(UP/DOWN arrows then ENTER key)\" 0 0 0 $xNAMELIST 2> /tmp/countryindex"

eval $EXECDLG >/dev/console

[ $? -eq 0 ] && break
clear #clear screen[/pre]
...I just cannot see how they could get that. You hit enter key, dialog will exit, then there's an immediate 'clear'which clears the screen.

Glipper is back 

Due to popular demand, the clipboard manager Glipper is back.

I created a little GUI dialog in the 'Desktop' menu to switch it on or off -- which is remembered in future boots.

Thanks, I use Glipper frequently, dont use Composer at all.

USB keyboard mystery 

A few 2.17alpha-testers reported that their USB keyboard did not work at the 'choose your country' dialog, but if they were able to use a PS/2 keybord to get past that step, then the USB keyboard did work.
I just tried a USB keyboard, it works fine. Hmmm...

WilsonB (wilsonbATpobox.com) 
Ya, I also had this problem with USB keyboard detection on a Dell GX520 booting up with distro.

Had to use a older system to boot off CD and create USB Memstick install.

USB wireless modules rt73 and rt2570 mixup bugfix 

Kirk posted that the rt73 module loaded, but it should have been the rt2570. Okay, these modules have overlapping chip IDs, and Puppy looks at the rt73 first. Am I to take it that in all cases of rt73-rt2570 ID overlap, the rt2570 is the preferred one? That's how I have implemented the fix for this.


Did you talk to Dougal about this? He had worked out some solution.

Yes, Dougal did post some code. The same solution, if I recall rightly.

Post-2.17alpha bugs fixed 

BUG: /etc/wvdial.conf has 'Modem = ttyS0' -- the '/dev/' missing.

This one totally messes up dialing. Today I managed to get my hands on a Thinkpad laptop with Lucent modem, and Puppy auto-detected the modem and created the /etc/wvdial.conf file, except for the missing '/dev/'. I edited the file, ran PupDial, and it worked right off.
Anyway, I found what was causing this bug and fixed it.

BUG reported by forum member gilsont:
The mwavem script in the 2.17 alpha has a syntax error when calculating the country code - there is a $ sign missing in front of the variable name in the country code sed statement which generates the syntax error.

It's script /etc/init.d/mwaved. Okay, fixed.

BUG: Wizard Wizard has link to run the old Printer Wizard, need to change to the new CUPS printer wizard.

The old Printer Wizard is for the PDQ system, but the PDQ package is not there. I have changed the link in the Wizard Wizard ('setup' icon on desktop) to run the CUPS Printer Wizard (which is actually script /usr/sbin/cups_shell.

REQUEST: There were some requests for extra mime-type recognition for ROX-Filer. There were some I did a day or so ago. Today I set '.ncd' to open in notecase. Also implemented requests by cb88: "mime type for .wma and change others from madplay to gxine or include a small music player killing madplay is a pain and confusing for beginners and please set default run action for .bmp to mtpaint as it is unset by default" -- I changed the mpeg and mp3 mime-types from madplay to gxine.

UPDATE: submitted by kirk: updated run-pureftpd script, package now pureftpd-1.0.22-2.

Wolf pup 
Barry, also add the "text_x-tcl" mime type

[code]exec tclsh "$1"[/code]

Puppy 2.17alpha available 

This is shaping up to be a wonderful new version. As usual, the alpha and beta releases are for our Puppy-testers and not for general release.
It is most important that you follow the instructions when booting -- be absolutely sure not to use any pre-existing 'pup_save' file. You can achieve this by booting with the boot parameters 'puppy pfix=ram'. If you do create a pup_save file, be absolutely certain that there are no 'pup_217.sfs' and 'zdrv_217.sfs' files at the same location as the pup_save file from testing of the 2.17exp1 release.

Pre-release notes for 2.17: http://www.puppylinux.com/download/release-2.17.htm
... add to that, booting from USB CD/DVD drive!

Download live-cd iso file: http://distro.ibiblio.org/pub/linux/dis ... inux/test/

Download the latest 'devx' file: http://distro.ibiblio.org/pub/linux/dis ... modules-2/

Download the patched kernel source: http://puptrix.org/sources/kernel-

This release is looking good on my PCs. Depending on bug reports, or lack thereof, it may get upgraded to 'beta'. There are some things to do, like Dougal's tabbed interface for Pmount, the problem kirk found with dhcpd and some wireless drivers, and I want to dump the oldest version of gtkdialog.

Here is a thread on the Puppy Forum for providing feedback:

Fascinating and gratifying to see the progress!

As usual I couldn't help ignoring your cautions and tried my save.2fs, all carefully backed up elsewhere, etc. The icons of course were different, but no trouble at all except for Opera. (I have recently been using NOP 2.16.1, which compactly fits my application needs.)

But in 2.17 alpha I find it impossible to install (or at least run) Opera. I presume it will be possible in the future to use Opera? I understand the attraction of the Seamonkey suite in efficient integration of functions.

2.17a is much improved, and I appreciate how much faster, slicker pmount is, for example. No, I'm not using it as my primary system, yet! - just had to have a look.


I experimented the Universal Installer and installed the Puppy 2.17alpha in my Flash drive. I started my computer to boot my flash drive, it stopped to language selection. I can't move cursor down key to select a Philippine Location or Language. Did I miss something? I will wait for the final version of Puppy 2.17. I am interested in puppy linux.

I hope that the Puppy Team will create an SFS file for education. That includes gcompris, tuxtype, tuxmath or anything that is useful for my pupils in elementary. Thanks you and May God Bless You All!

Eric R. Villarin
Computer Teacher
Cebu Institute of Technology
Cebu Philippines

Eric, that is very strange. Puppy should have recognised a ps/2 or usb keyboard. What type of keyboard do you have? Anything unusual about it?

Henry, I know of no reason why Opera did not work. You should be able to click the 'install' button and choose Opera from the list, and it should work. If some other Opera has been installed, not the one on ibiblio, then I can't say anything about it.

ramengo (ramengo<at>hotmail.com) 
Please also update e2fsck (E2fsprogs) to 1.40.

Matt B. 
I had the same issue with the keyboard - I booted the cd on a Dell Optiplex with a usb keyboard. Couldn't move the selection to choose the region until I plugged in a ps2 keyboard. After getting past that screen the usb keyboard worked fine.

Opera is fine - sorry about the red herring.


I am using usb type of keyboard and successfully installed and boot the flash drive using the procedures given by Matt.

Wolf pup 
May Flash Player 9 be updated?

If Puppy has CUPS you may want to consider doing a proper package of GTKLP - GTK front end for Cups printer settings and queues. A few months ago I turned the package from debian stable into an installable tarball. 60 people downloaded it, but there hasn't been any feedback. I don't think it can add printers and it is quite slow though.

Barry Kauler 
Disciple, yes, I was wondering if we need something like that. The CUPS web interface seems okay, but I wonder if GTKLP or something similar would offer any advantages.

I haven't really used it, but GTKLP looks much more convenient than the web interface, and is definitely faster than loading seamonkey - I just looked at it again and its actually a lot faster loading than I thought. It is small enough too.

Grisbi replaces HomeBank (already!) 

Initial testing indicates HomeBank is very weak. Forum thread:

So, I have replaced it with Grisbi ( http://www.grisbi.org/ ), which is very powerful. Grisbi can import Gnucash files. The only problem I can see with Grisbi is that it needs Latex to print. We could provide a Latex PET package easily enough. I did suggest to one of the developers ages ago that they should support Postscript/Ghostscript printing, and the developer replied that it would not be too hard to do ....but then nothing happened. We need to lobby them. We now have CUPS as a standard part of Puppy, which Grisbi could use. Anyone want to be a Grisbi-for-Puppy lobbyist?

have you considered money manager by theZeal?


Why do you must use LaTeX to print the grisbi output?
What format is the grisbi output?

Unfortunately, Money Manager needs wxWidgets, which would make it enormous.

Nice choice, as this is the first bank program I see, which can import the .ofx format.
I tried already on Windows, but get crashes.
I notified this problem in the NNTP support group.
I notified as well your request for postscript printing.

OK, didn't se a way to edit my previous comment.
I tried Money Manager in Windows, but it doesn't support the .ofx format, only .csv and .qif.
I complained and they would look into the issue if I produced a sample of a .ofx file, which I did.
Since then, no news any more.
So I am kinda cooled off for this product.

Hi Barry,

there is a bug in Grisbi (only under Linux). When you try to change the font size or font, Grisbi immediately crashes...

Apart from that I really like this program and use it regularly under Windows.


wpa_supplicant, Network Wizard upgrade 

Tempestuous has provided these two.

wpa_supplicant is upgraded to v0.5.8, with a rt73 patch.

The script /usr/sbin/wag-profiles.sh in the Network Wizard has been improved. The PET package is now net_setup-2.17.


I wonder if we are having trouble with one of the drivers. There have been a few complaints of dhcp timeouts, e.g.:
Maybe the network wizard upgrade deals with these problems?

Yeah, I have a wired network connection to modem-router and Puppy loads the correct driver, so all I have to do is click the 'dhcp' button and it works fine.

So, for wireless, if you guys are experiencing problems, perhaps something odd about /etc/rc.d/rc.network, if you can debug it that'll be great!

2.17alpha will be available soon, perhaps the more recent drivers will help.

Yes, dhcpcd has a problem when it times out, at least with wireless. The default time out is 60sec unless specified with the -t switch. Ether way, if it times out the wireless driver crashes. Then you have to unload the module and reload it. But if you kill dhcpcd before it times out, then the driver is ok. This been my experience with ip2200, rt2570, and bcmxxx. Don't know if it applies to all.

Correction, not the ip2200 but the rtl8180. Played around with dhcpcd today, It doesn't crash the driver on those cards, it downs the interface , like you did a "ifconfig <interface> down". So after dhcpcd times out, an "ifconfig <interface> up" makes it alive again.

RutilT upgraded, PupDial improved, serial modem bugfix 

RutilT has been upgraded to version 0.15.

I have made a number of improvements to the user interface of PupDial.

V2.17exp1 has a bug with detection of serial modems at bootup. They were getting detected but the result wasn't being recorded by Puppy. Fixed.

I think 2.17alpha is a couple of days away. There was some speculation about changing all the packages to a new "package base" using Slackaware 12 or compiled from T2 v7.x, however that is postponed indefinitely. We are moving up to the kernel (which happens to be the same version used in Slackware 12), with fairly conservative configure options.

Soon after releasing 2.17, I plan to release an experimental version with a kernel that has some adventurous features: pcmciautils, tickless, software-suspend, and more extended DVB support. It may be that the modules in the 'standard' 2.17 will work with this experimental kernel.

The 2.17 iso file is only 82MB, as I'm using LZMA. Performance is quite snappy, helped I think by the AUFS now totally replacing UNIONFS (v2.16 was still using UNIONFS for normal live-CD and frugal installs). The latest Squashfs-LZMA works with normal GZIP'd squashfs files as well, so all the existing '.sfs' files will still work. If it turns out that Puppy is running noticeably slower on old hardware, like those 200 - 400MHz CPUs, then I can very easily build a iso with GZIP'd .sfs files (pup_217.sfs and zdrv_217.sfs -- though it would only be the first one that affects operating speed).

You could add a script that automatically extracts and gzips the pup_217.sfs for older pcs w/ the warning that it will take a while but will lead to an increase in speed.


COMPRESSION - a one act, one line play

LZMA: "I am the ghost of Puppy v2.10."

-the end-


Ted Dog 
The LZMA compression seems of the newer mix seems faster than before. Also GeexBox linux has a patch which LZMA compresses the kernel. They bind the kernel with a lot of modules in common use (like what you put in inirt) and LZMA compress the be-jezzs out of it. It works very well.

Ted Dog 
Oh, just a idea, if you have internet via satelle, you might be using a DVB already, just for internet, BUT, the same 'bird' might also have free to view DVB channels, audio music most likely but very good audio music. (7th post try)

Ted Dog, yes, it is a DVB unit. I haven't explored any possibilities like that with it.

Sorry about the posting difficulties. The best approach is to refresh the page, write a comment, copy it to clipboard just in case, then post.

I must get back to the blog script authors, find out if they have made any progress with the next version.

"...however that is postponed indefinitely."

Does this mean no new gcc and glibc any time soon?

Pmount, ipw2200/2100 modules, bug fixes 

I fixed a bug in pmount that caused some partitions, for example hda1 and hda10, to have their partitions merged into one drive in the display window.

There was a problem with the ipw2200 wireless driver loading when it should have been the ipw2100. This is due to how Intel have named the PCI ID numbers. I don't know if this is a unique problem or if Intel has done it elsewhere, or if any other companies do it. One thing, over the years I have come to expect the Intel engineers to do things in a peculiar way -- for example, they are the only ones I know of who have created a kernel module that is named with a capital letter in it!
Anyway, I have put in a special-case handling into /etc/rc.d/rc.modules that will detect this situation and load the ipw2100 if appropriate.

Thanks to Beem, HairyWill and Jonyo for help in this thread:

I discovered only by accident that i should load ipw2100 instead of ipw2200 (probed) for my gateway and ibm centrino laptop since. thanks for fixing it.

Pfind, Pbackup updated 

Zigbert's superb utilities have been updated.

Pfind (Filesystem menu) is now v2.2
Pbackup (Utility menu) is now v2.4.4

BootManager now manages modules 

The BootManager was introduced in Puppy 2.16 to manage loading of SFS files. My intention was that the BootManager would be a one-stop-shop for configuring all aspects of bootup, and I have now taken the next step and added management of modules.

The problem keeps coming up in the Forum. The wrong module has loaded, or the required module has not loaded. There have been a few cases where the appropriate network module loaded but the person was unable to get it to work, and found instead that the MS Windows driver loaded by Ndiswrapper did the trick. Or, there have been some cases where Puppy loaded a certain module but it did not work and a different one does -- for example, a recent case was the ipw2200 wireless driver loaded but the one that works on that particular chip is the ipw2100.

In the abovementioned cases, the not-wanted module has to be prevented from loading at bootup, and this involved editing a 'skiplist' in one of the boot scripts, or even unloading it then load the correct one.
I have now made it easy. Run the BootManager (from the System menu) and you will see a button to manage the 'blacklist'. You then get a 2-pane window and you can move any loaded module across to the 'blacklist' pane.

For network and sound, you can usually find the module you want. The Network Wizard even has a manual selection capability, which will load and test your chosen module, then save the selection, so it will load at bootup.
However, what if there is some module, for whatever purpose, that is not offered in the Network Wizard or in any other Wizard, but you know that one is needed for your hardware? Once again, the BootManager makes it easy. You click on a button to add a new module, and once again you get a 2-pane window, with the left pane listing every module available to be used by Puppy, and you choose whatever you want by moving it to the right pane.

talking about boot, it would be great with a upgrade-question:

Do you want to upgrade from 2.16 to 2.17. Press 'no' to run 2.17 without loading datas from 2.16. (same as boot parameter 'pfix=ram')

Just for those of us who doesn't always have our minds clear, and sometimes forget 'pfix=ram'.

HomeBank personal accounting 

This is a nice personal finance application that will be in the next Puppy. It is a GTK2 application and replaces the aging Xfinans (which uses the Xaw95 GUI). I was unable to use the latest release as it requires GTK 2.10, so I used the one before, v3.2.1. Also, it has SVG images, so I converted them all to PNG and recompiled the executable to use those -- saved space in the process.

HomeBank homepage: http://homebank.free.fr/

Great new apps: ExpenseTracker, Notecase, Xfdiff 

ExpenseTracker is a tiny little application that uses Sqlite and has a GTK2 GUI. Handy if you want something to log expenses but don't want a full book-keeping program and want it to be super-easy to use.

Notecase is a notes organiser, an outliner, and it's marvelous. What I've been wanting for ages, but all other outliners fell short -- rich text format, search, images, internal and external hyperlinks -- the works. It also uses GTK2. For anyone who's keen to try it before it appears in the next Puppy, I've uploaded it to ibiblio:
http://distro.ibiblio.org/pub/linux/dis ... ackages-2/

Finally, Xfdiff, a file compare utility. This one is a GTK2 frontend for 'diff' and 'patch'. To me it looks better than Tkdiff or the one we had before that.

Xfdiff uses libtubo, a very small library to make piping between processes very easy. Looks so good, I've put the necessary stuff into the 'devx' module so that apps can compile against it.

All of the above will be a standard part of the next Puppy -- v2.17alpha is coming soon!

Notecase has also been announced on the forum:

Notecase homepage:
The developer is Miroslav Rajcic.

"gtkmoz" HTML viewer added, Glipper removed 

Alienjeff reminded me about 'gtkmoz', that was used as the internal HTML viewer in an earlier Puppy. This is the 'GtkTestEmbed' application that comes with the SeaMonkey suite, and it was in those releases of Puppy that had Mozilla 1.8. It's very basic, just has Forward, Back, Stop, Reload buttons and a URL entry box. But, the renderingis excellent as it utilises all of Mozilla/SeaMonkey. It starts very fast, however I dropped it from Puppy as on the first boot, with no 'pup_save' file, on older PCs with limited RAM (and no swap partition), a lot of libraries need to load to start 'gtkmoz' and that can make startup very very slow -- a couple of people reported the desktop loading, but the system was very sluggish -- they didn't know that 'gtkmoz' was trying to load.

However, it has occurred to me that the problem is only on that first boot, so what if the welcome page is not HTML? What if we make it a bitmap image and load it with say 'qiv'? Or, why not make it into an image that is loaded onto the desktop? -- that last one appealed to me, so that's what I've done.

I tweaked the 'gtkmoz' code to get a better default window size and fonts, and now it has replaced Dillo. It's not necessarily the long-term solution, as it lacks a few things, like text-search. Copy-to-clipboard with ctrl-c works. It's really tiny, would be very easy to hack on. The source is in the SeaMonkey package in embedding/browser/gtk/tests/.

I removed /etc/background, as this doesn't seem to be used anymore. Accordingly I modified MU's Puppybackground and Jwmconfig.

I removed Glipper, as I found it interferes with the clipboard in Composer. I was editing a web page in Composer, copied an image to the clipboard, then pasted it elsewhere in the page, but got text instead. I killed Glipper and cutting/copying/pasting images worked again.

Thanks for considering gtkmoz, Barry. In my day-to-day use, when I don't need a full-featured browser but do need something more feature rich than elinks, it's gtkmoz to the rescue. I haven't bothered with Dillo in well over a year.

My v2.11 doesn't seem to have gtkmoz, so I grabbed it from v1.08r1. Anyone wanting to give it a go, you can grab it here (~19k).

I have modified the user interface and window somewhat, but that gtkmoz will give you the idea. Under normal circumstances it starts pretty well in the blink of an eye.

Note also, it creates /root/.TestGtkEmbed, and you can go in there and set preferences, for exampl grab font settings out of the SeaMonkey /root/.mozilla ... prefs.js.

I think it was the starting point for some other tiny browsers ...I'm trying to recall, there was one ....darn, the name escapes me now, but anyway, it has a few extra features like text-search bolted on. The one I'm thinking of was done ages ago and I can't get it to compile anymore, but bits of its code could be used for 'gtkmoz'.
...anyone interested, I can do a bit of a hunt back in my notes and find it -- I do recall seeing it is still online somewhere, a Japanese guy -- the same guy that made that fish game that we have in Puppy -- gtkfish.

Gtkfish was written by Taiga Yonekura
email: taiga@col.hi-ho.ne.jp (may be old)

ah, found it. no, it wasn't gtkfish, it was gtkcat, that we also have in puppy. url:
...the browser is called Light.

Barry and Puppy Gang!
2.17 alpha is already a real hit here. Glad to see such improvement in such a short time.

Now with gtkmoz replacing dillo, you might look at some settings file(s)

See rxvt.menu , change dillo to gtkmoz ,etc

73 es Good Luck!

PupDial improved 

PupDial recreates /etc/wvdial.conf at exit, and many user-customisations were lost. I have improved this so that in addition now the following user entries are retained:
Dial Prefix
Login Prompt
Password Prompt
Stupid Mode
Default Reply
Auto Reconnect

Also, if Puppy does not auto-detect the modem at bootup, PupDial now has a probe button that runs 'wvdialconfig' (a utility provided with the wvdial pckage) to discover the modem and create a basic /etc/wvdial.conf file. Actually, I have a wrapper around it, /usr/sbin/modemprobe.

The reason for having this probe-button is one person testing pup 2.17exp1 has reported that his serial modem did not get detected at bootup, yet is definitely present after bootup (perhaps the 'puppyserialdetect' utility is not quite there yet).

Could you add a 'Speaker silent' checkbox please.

Could you add a 'Speaker silent' checkbox please.

You said - "PupDial recreates /etc/wvdial.conf at exit,"..

Does it also write config files for GK Dial too..?

There are many puppy users on 56k dialup who use GK Dial as the main dialing prog for internet access - so config files for GK Dial would be useful..!!

Any possibility of doing config files for GK Dial in PupDial as well..??


New help info for the Wireless Wizard 

gdemonta (forum name) has created a guide to using the Wireless Wizard:
Forum announcement: http://www.murga-linux.com/puppy/viewtopic.php?t=19519
The actual guide: http://puppylinux.org/wikka/WiFi

Bugfixes, planning ahead 

Pmount was not showing swap partitions correctly. Fixed.

Tempestuous compiled the latest wireless_tools package, needed for the kernel. I have placed wireless_tools-29.pre22 into Puppy.

I have disabled 'setserial' for soft-modems. See /etc/rc.d/rc.modem (line 47).

Thinking ahead, I would like to focus on consolidation of what has been done so far, for v2.17, rather than introducing more features. I'll upgrade some packages, such as the latest from zigbert, but the main focus is now on bugfixing.

My thinking is that the next release after 2.17 will be 2.20, which will be a major package upgrade. Probably will move up to gcc/libc 4.x, also gtk 2.10.x. As we are getting more Slackware-compatible, in terms of directory structure, support in PetGet, the PET-to-tgz project, the CUPS/espgs/gutenprint pkgs taken out of Slackware 11 (etc., etc.) it would seem a good idea to move to close binary compatibility, same kernel version, same, gcc/libc, same package versions, same or similar dependencies for packages. To this end, I'm thinking of upgrading all the PET packages as much as possible straight from Slackware 12 binary pkgs, rather than recompile with T2.

I might hold off some significant changes until after 2.17, target for 2.20. A kernel recompile for example -- right now I only have one reason for doing a recompile, Ted Dog's dvb support, but more reasons will come along later. Also, Jesse and Dougal are working on various hardware issues that might mature later (?) and be ready for 2.20.

very good, the slackware compatibility.
It was the real first "Distro" I think.
Then a german company (System und Software Entwicklung) created on base of slackware an own Distro called "SuSE".
So it went to a different direction, and slackware often was overseen because of SuSEs popularity.
SuSE-Linux now is Novell-Linux.
Slackware becomes popular again due to increasing interest in small, fast (Live-)-Distros, there are many derivates.

Binary-compatibility would not mean to create "just" a new slackware-derivate, but to combine advantages of two worlds.
The old, robust, and proven Slackware package-choice, and the new boot-concepts and a bit wild, chaotic tools created by the Puppy-community. I mean this in a positive sense.
Slackware stands for "rock-solid, proven", while Puppy has become a playground for new, innovative programs, that are often release in early stages. The community is curious and open to test new programs early, and gives a lot of feedback that helps to stabilize and improve them :-)


Well, if you are considering making the layout to conform with Slackware and Slackware packages, wouldn't this be worthy of Puppy 3?

This would remove some confusing in the future over which version of Puppy the transition happened, and which packages are compatible with which versions of Puppy.

I agree, a good game plan moving forward.
But I now worry about Puppy 2.17, it will be a "black sheep" release: largely incompatible with the version before it, and quite incompatible with the version which comes after.
Even if the kernel config is carried forward to v2.20, Slackware 12 will no doubt have a newer version of gcc, so the 2.20 kernel and modules will be incompatible with 2.17's.

I have a drastic proposal: either take the plunge now and move to synchronise with Slackware 12 for Puppy 2.17, or maybe more sensibly, stick with the kernel for 2.17 and make this release the best-of this kernel series.
There are certainly enough improved setup scripts and wizard improvements to justify a new release without a change of kernel, especially considering that new kernel would have no ongoing life cycle.

As for the shortcomings of some current modules, pakt is developing a Puppy derivative based on 2.16 for which I have recently contributed an improved zdrv file. This zdrv file is effectively a "service pack" with all poorly performing modules replaced. I can contribute this zdrv file for 2.17, plus modules.dep files. It's ready-to-go, no further work necessary.
In fact, I think I even included the DVB modules which Ted Dog wanted.

I agree with tempestuous about keeping the old kernel for 217, although I wonder if that means more work for Barry. :-( Then 217 can be the wrap-up for this series, a good solid end-point, and 2.20 (or 3.00, which makes more sense to me) can be taken off the typical short development cycle and some real rethinking and experimenting done with it before release.

I can think of another reason for a 3.00 kernel recompile - support for loop-aes and dmcrypt encryption packages:

Also anything needed for support of gpg and enigmail. Why? Best available encryption technology for Puppy, and ease of use for it (certainly more and more needed in these days of Carnivore et. al.)

Pardon my lobbying. :-)

Leaching on Slackware is tempting (Ghekko will probably be happy..), but I have a couple points that might be worth considering:

- Slack is known as conservative, but it's also a "big" distro. The "big" distros tend to compile packages with everything turned on, which might be a problem with Puppy. (i.e. if an app can use Dbus, you'll have Dbus as a dependency etc.)

- At least as far as the kernel is concerned, Puppy tends to be more cutting-edge, so everything related to that will still have to be handled separately -- might also cause havoc if people assume compatibility with Slack and install their packages...

(I'm sure I had one more, but can't remember right now...)

I think Tempestuous has a point -- it'll also enable 2.17 to be released soon and leave more time for 2.20 (I don't think it warrants a major version number change: no structural change, like Puppy1-->Puppy2)

It's all speculation for now.

Going back to the previous kernel is quite a lot of work. I can do it pretty much straight away in Unleashed, as still have the complete kernel structure in place, but do not have all the new dialup stuff in it. Would have to go back to a couple of earlier packages. Curently don't have a mechanism for getting the modules in the initrd to be from whatever selected kernel, but could do that.

I'm reluctant to go back. There's no rush to adopt Slackware packages either, even if it was decided on. Our current gcc/cpp/libc versions have proved reliable, so we don't have to rush into change for the sake of change. Perhaps v3 could be developed at a leisurely pace,with the current intended 2.17 still on-track, and the same package-base being used for 2.18, 2.19, etc.

Actually, what prompted my speculation on this is I went to the Gnumeric site and found that GTK 2.10 is required to upgrade. This raises the question, if we stayed with our current compiler and C library versions and package-base and just upgraded GTK, would that break existing GTK apps? -- I think Nathan has done this, so can comment. Perhaps the most prudent thing would be just to follow the same path as Nathan in this regard.

PET tools 'new2dir' bug fix 

new2dir is a utility in the PET-tools suite (see http://www.puppylinux.com/development/createpet.htm ) that can be used to create a directory of installed files when you execute 'make install'.

It had a bug. Some install scripts modify or create files in the source package, and new2dir logged these as installed files. I have now screened these out, and I think the bug is now fixed.

New PDF viewer 

Puppy has had the Gsview PDF and Postscript viewer for a very long time, however it is partly broken -- text find does not work. The print dialog window is also obscure.

What has brought the matter to a head is I am using ESP Ghostscript for CUPS printing, and Gsview requires Ghostscript to be compiled ith the libgs* shared library. We are now using Slackware CUPS, ESPGS and Gutenprint packages, and ESPGS was not compiled with the shared library. I did a recompile, but then CUPS stopped working. So I ended up with some duplication, the original 'gs' for CUPS and the 'libgs.so' for Gsview. What this all means is a size bulge.

Dougal advised checking out 'ePDFView', which I did. It's good, works nicely. Reasonable size also, so it has now replaced Gsview.

However, ePDFView cannot view Postscript files, so I threw in 'gv'. This is very small but looks awful -- it's compiled against the libXaw95 library. It's useless with PDFs, but that's okay. The scrollbars are non-functional, perhaps that's because I used libXaw95 rather than libXaw3d. I've put this in so that there is at least something to view PS files.

I have set all the file associations so ePDFView will always get launched for PDF files, gv (Ghostview) for Postscript files.

ePDFView home page: http://trac.emma-soft.com/epdfview/

Barry, it might be worth contacting the developer -- he mentioned wanting to add ps support, but seems to have been busy writing games.
Maybe hearing that you're using it in Puppy will prompt him to do so...

I won't miss gsview. A barely functional pdv viewer must have search, and be able to select and copy text. gsview couldn't, so I haven't used it for a long time.

How about piping the postscript file through ps2pdf to produce a pdf which is then viewed in ePDFView

Barry Kauler 
jcoder24, yes! this works:
[pre]# ps2pdf colorcir.ps - | epdfview -[/pre]

gv also has a nice -watch feature, which updates the image if the file that it is derived from changes. I use this in a rather clumbsy music composition development environment - change a text file and listen to it being played while watching the generated sheet music change courtesy of gv's -watch feature. I plan to release it soon, but will wait for 2.17 since that will make it easier.

Barry Kauler 
Jeffrey, no, the piping idea works well, so gv won't be in v2.17. But it will be a PET package.

Will Gsview be available as a PET?

Yes, Gsview will be a PET.

Some thoughts on the mini-browsers 

Puppy uses Dillo as the internal HTML viewer, also as a (very) basic web browser.

Alternatives that I have checked out recently:
1. Minimo (gtk2, a cutdown Mozilla)
2. osb-browser (gtk2, uses gtk-webcore)
3. gpe-mini-browser (gtk2, uses gtk-webcore)

Investigated ometime ago:
4. Konqueror-embedded (qt)
5. hv3 (tcl/tk, uses tkhtml3)
6. phv (tcl/tk, uses tkhtml2)

I have made osb-browser and gpe-mini-browser into PET packages. 4, 5, and 6 have been PET packages for sometime.

1 is huge. 2, 3, 4 are big. 5 is quite small. 6 is a project I worked on ages ago, it's really tiny. The thought has occurred to me, if all we want is a nice-looking internal HTML viewer, and use the full SeaMonkey/Firefox/Opera for web browsing, then hv3 or phv would do except they lack the GTK2 consistent look-and-feel that I would like to aim for.

However, there is a product that is designed to apply GTK2 look-alike themes to tcl/tk apps. Perhaps this could be applied to hv3 or phv? It's called 'Tile':

Or, someone could take up Dillo project. Dump the Fltk port and the plugins mechanism. Port it to GTK2. Simply by doing that, without any more features like Javascript or CSS support, it would be an excellent internal HTML viewer for Puppy. Of course, bolt on those extra things and it becomes a beaut web browser too :-)

Tile has been incorporated into Tk version 5 alpha5 (Puppy currently has alpha4):
-- it's the 'ttk' functions.

Hmm, the decision to incorporate Tile into Tk 8.5 seems to have been made sometime ago, so perhaps we already ave the functions in Puppy:

So, calling all Tcl/Tk programmers, the possibility of GTK-lookalike themed apps written in Tk!


If Mozilla is to be a staple in Puppy for the foreseeable future, why not simply utilize gtkmoz as the internal HTML viewer as was done in Puppy v1.08r1? This could free up precious development time for more important projects in the distro.

I frequently use gtkmoz as a web browser when bells and whistles aren't necessary. Besides loading and running fast, CSS pages render beautifully.

Maybe write own HTML-parsers?
Reply in the forum


Daniel of hv3 is there again in the forum:


alienjeff, I stopped using gtkmoz due to the resources it uses. When boot Puppy for first time running in RAM, if there isn't much RAM then gtkmoz might not run.

Yes, I recall now, when I ran it on a couple of older pcs, also some others reported this, the gtkmoz took a long time to load -- as the system tried to shoe-horn to much stuff into too-little RAM.

I compiled Tile and ported some of Puppy's Tcl/Tk apps to work with it.
It is nice, makes a great improvement, though it hasn't got anything to do with gtk: what it does is just create nicer, themeable widgets, using "Tile themes", which you'll have to adjust to your gtk theme.

However, there is a problem: it seems like they haven't created all the widgets yet…
For example, there's no menu widget, so you end up with a nice looking GUI except for the menubar, that looks like before -- hence ruining everything…
(you will notice that it's the same in the demo that comes with Tile: the menu and some items, like the menu coming down from the menubutton, still have the old look…)


Thanks for the reply and explanation. Remembering gtkmoz from v1.08r1, I moved it to use with both my "v2.11 machines", completely unaware of the first-boot-to-RAM , uh [i]ramifications[i]. My interest was purely the reduction of wheel reinventing. ;-)

Thanks again,


CUPS now working: compromise solution 

I decided to go back and start from a working CUPS package, that is pakt's cups-0.3.pup. This is made up from Slackware 11 packages I think, plus some customisation by pakt and others.
I then cut it right down, removed the hpijs drivers to a separate PET package, removed all the Gutenprint PPD files -- in the latter case, I created a startup script that runs 'cups-genppd.5.0', a Gutenprint utility that generates the PPD files. The utility is about 500K, whereas the generated PPD files are about 8M compressed. The script deletes them after a printer is chosen.

Gsview uses the libgs* library file that I compiled in afpl_ghostscript v8.54, so I cobbled together a cutdown combo-package of Gsview and AFPL Ghostscript 8.54.

So, we have two Ghostscripts in Puppy, both severely cutdown, ESP 8.15 and AFPL 8.54. Interestingly though, the live-CD turned out to be 83M, same as the 'exp1' release (which has just one GS pkg).

Oh yes, thanks for the post about a PPD file that works with my Brother HL2040 laser printer -- yes indeed, works beautifully!!!!! That PPD file will be included in Puppy. Really good buy this Brother printer, it was on sale at Office Works for only 99 Au dollars and 20 Au dollars cash-back. They are quite cheap to run, about 4 cents per page if you also factor in the cost of drum replacement after 12,000 pages.

Anyway, as I need my printer to work, and I want it to work in Puppy immediately, no extra pakages to install, it means that the above-described CUPS system is now in the official Puppy!
When the merged Ghostscipt system gets more mature it will probably be reconsidered.

A note about Gsview. I tested the text-find feature (which has been reported non-functional) by running Gsview from a terminal, and it reported 'pstotext' missing. That must be a utility program.

Here is pstotext:

That's 4 cents per page for toner and drum, approx. Paper cost is on top of that. Printing text pages covering 5%.

wolf pup 
can the hpijs drivers be moved to zdrv?

Delighted to hear of your success in this first integration of CUPS into Puppy!

I'm looking forward to 2.17 too because I bought a HL2040 a few weeks ago and was disappointed to see only blank pages being printed under Puppy 2.16. It is important to have major hardware components (modems, wireless, printing, USB drives, ec) working without the need to install extra packages. Although CUPS is big by Puppy's standards I think that the functionality it provides is very important.

Puppy v2.17-experiment1 uploaded 

This is for testing certain new features. It must not be used as an upgrade -- that is, if you have an existing "pup_save" file, be sure to boot with "puppy pfix=ram" boot parameter. Do not upgrade an existing "pup_save" file!

The features that can be tested are:
1. MMC/SD card support
2. Faster Pmount (also should recognise an MMC/SD card)
3. Rox has mounting of .2fs, .3fs, .sfs files just by clicking on them
4. Analog modem autodetection, ncluding soft-modems
5. PupDial dialer for dialup Internet access
6. CUPS (broken)

The live-cd can be found here, as well as 'devx_217.sfs':
http://distro.ibiblio.org/pub/linux/dis ... inux/test/
...though, as Dougal pointed out, it may be a challenge for dialup users to download (83MB).

Regarding PupDial, you can run it via the 'connect' icon on the desktop, and it will tell you if a modem was detected. If it is, doesn't mean it will work though! ...that's where you come in, see if you can find out what tweaks are required.

Regarding CUPS, as noted in earlier post it's broken. Note that with latest CUPS and Gutenprint, the Gutenprint PPD files are not included, as they get dynamically generated as needed -- this saves about 9MB. Don't forget to exit from X first, run 'passwd' to set the password for root, and do 'modprobe usblp'. The CUPS print manager is in the "System" menu.
I got stuck with many bugs, so any one who wants to play with this will have to be a "CUPS expert".

If you want to compile the CUPS, Ghostscript, Gutenprint packages yourself, see the link in earlier post for the new merged Ghostscript. Or, perhaps grab binaries out of Slackware 12rc2 -- ah, but that still has the old ESPGS Ghostscript.

Anyway, you can see how small it is -- the live-cd is just 83MB, CUPS support only added about 2MB. But, this is using LZMA for Squashfs, so it would be an overhead of about 2.5MB otherwise.

I've gone back to Aufs, as Unionfs2 was causing applications to crash. The Unionfs developers have responded to my bug report by updatng the patch for the kernel, however it is an invasive patch that requires a complete kernel recompile, and I would have to go through the entire all-day process again.

This 'experiment1' is not indicative of what will be in te final 2.17, nor what it will look like.

There's also the new Basic-language highlighting for Geany. It may not be perfect and needs feedback to the Geany developer.

Wolf pup 
Barry, lucent winmodem was detected, but when trying to connect, keyboard lights start flashing like voodoo and everything locks up, ctrl+backspace dont work or ctrl+alt+del to reboot. Pmount doesn't detect activated swap partion (mut does), Pmount still same speed as before.

Ted Dog 
Darn my DVB configs missed the cut. :-(

vanchutr (vanchutr<at>gmail.com) 
It's very hard to set up a printer in new CUPS
(In pup216 i set up succesfully my printer with CUPS (pakt installation v 03)

Wolf Pup, the new Pmount is noticeably much faster. If it isn't... well, I hope you aren't using an existing 'pup_save' file?

Ted Dog, sorry, I overlooked what you wanted. I think that I will have to do one more kernel compile before the final release, so perhaps if you post exactly what variables in the .config file need to be turned on, this time I won't miss it. I've been so concerned with other aspects of the new kernel, didn't give dvb much attention.

vanchattr, as stated, CUPS is broken. Meaning it doesn't work. It is only included for a CUPS expert to perhaps investigate it.

For anyone else wanting to test this 'exp1' Puppy, please read the release notes very carefully.

Please respond with test feedback to this forum thread:

Please read and understand the instructions at the beginning of this news blog!
Unless someone has a particular reason to test a new feature of this release, best to stay away from it.

Barry, someone raised the Liberation fonts in a thread and I thought maybe you should read my reply about the problem with them:

Ted Dog 
dvb configs
great puppy-myth back in progress.

This one runs OK for me. Sorry I'm not in DUN mode at present, but if you need internal modems for testing, Barry, tell me how many to send over, with preferences. As advertised Pmount is substantially faster. Small item on XOrg - showing two entries for 800x600x24.Posted some promising news (I think?!) on John's Forum (Hardware - SCSI Adapter installation) about scsi. Might be relevant to all the other stuff going on with kernel, designations, etc??

Barry Kauler 
Dougal, note, if you are interested in hacking on the xorgwizard, grab the latest from 2.17exp1, it has a couple of changes to the last version you posted.

It's a little hard for me to obtain the new Pup (haven't got 2.16 yet). Maybe I'll ask Pakt for it...

I know of the multiple "modprobe evedev" problem, I fixed it a few weeks ago. My current version also uses gtkdialog3 and has a few more improvements (like more languages and adding the xkbvariant for languages like Canadian-French).

Timothy Gilson (timothy.gilson<at>zoom.co.uk) 

I'm testing the 2.17 version as I have a Thinkpad 600 which has problems detecting the internal modem with other distros.

Early testing does not detect the modem at boot. I'll do a few more checks and tests. I'll try ACPI=force. Anyone else had success with the internal modem on the Thinkpad 600?

I'll append the results here.

If we can get this modem running 'out of the box' then we'll have many more converts to Puppy by owners of TP600s.

Puppy v2.17-test1 coming soon 

I won't even call it an 'alpha', as I've got too much to do still. I mostly want to upload this test-version so that Internet-dialup users can test the new modem detection system. Note, it can't perform magic and make your software-modem work, just a small number of supported software-modems, but you might get lucky! If you do find this new pup detects your modem, I will need testing of the auto-configuration. There's a new application, PupDial, run from the 'connect' icon on the desktop, and it will immdiately tell you if your modem was auto-detected.

Regarding CUPS, well, not so good. I've got the latest Ghostscript from CVS, CUPS and Gutenprint, but get various error messages when run the web-based control panel. I need to work on something else for now, but the broken CUPS will be in the 2.17-test1 upload, if anyone feels like playing with it. Note, you would have to do 'modprobe usblp' first, and exit from X and run 'passwd' to set root password -- as I haven't been able to solve the problem of the control panel asking for username/password (it will accept the username 'root' and its password, but I don't remember the original password).

I'll probably upload it on Sunday.

Changing the subject totally, those who lurk on the Puppy Forum and/or read Distrowatch Weekly News, will know of some recent controversy. Getnikar summed it up nicely (in this thread http://www.murga-linux.com/puppy/viewtopic.php?t=19393):
"Puppy is far bigger than a bit of a hissy fit between a couple of the community members"

Regarding John Murga, my experience is that he has his head firmly on his shoulders, a solid, reliable bloke. John has paid for and maintained the forum, which gives a strong indication of the kind of person he is. He is also extremely busy with his own business. I imagine right now he's pretty cheesed off with all the crap from various individuals.

I must mention the irony in 2.17-test being targeted at dialup users, who will have a hard time downloading it...

Dolores Dialup 
...not to mention Catch-22

I hope run-actions (in Rox) for .abw and .gnumeric will be in 2.17. They have been missed since the very beginning of Abiword and Gnumeric in Puppy.


Zigbert, what are the extensions? There must also be Abiword template files? Do Gnumeric native files have that long extension '.gnumeric' -- any shorter option? template file?

Abiword (.abw), Abiword template (.awt)
Gnumeric has the longest extension I know (.gnumeric). As far as I know - No temlpates.

Maybe also set run actions for the most common supported filetypes?

Word (.doc)
OpenOffice writer (.sxw)
Open document format (.odt)
Koffice Kword (.kwd)

Excel (.xls)
OpenOffice calc (.sxc)
Open document format (.ods)


puppyserialdetect now working 
Detection of true-hardware serial modems at bootup is broken in Puppy 2.16.x. We have now fixed it, see thread:

Barry, hi

to my great delight I found out that a USB dialup modem I have, works fine with 2.16. It is a SMARTLINK. Can you please specify when this was introduced originally? Is it only for 2.16? Is there a way to upgrade other/older Puppies?

yes, older Puppies have it, I don't recall how far back.

What make/model modem is it?

I'm afraid it's not very well known...It's from a Greek company called CRYPTO (...produces decent devices; started off as a Hellenic DoD contractor making military crypto equipment, hence the name...). It's name is CRYPTO LINK USB 56K and it has LINK II and LINK III variants. The I and II are based on the same chipset, (Thomson) ST7554 or ST7554P. Current Link III uses a different chipset from Agere. I will try to persuade them to test Link III with wouldn't take more than 5'...)

Ghostscript, Gsview updated 
I've compiled the new ESP - AFPL - GPL merged Ghostscript. I got it from SVN and have named its version "8.60pre". I had to compile it in a special way, using 'make so' and 'make soinstall', to build 'gs' with 'libgs*.so', as Gsview needs to compile against the libgs.

libgs is much bigger, about 6.8MB, whereas it is about 3.8MB in Ghostscript 8.54 (in the current puppies).

The previous post has a link with info about the extra CUPS-aware features of this new Ghostscript. So, will I just upload Pup 2.17alpha soon, and anyone who's interested in CUPS can investigate how to bolt CUPS onto it?

While I was at it, I also upgraded Gutenprint from v5.0.0 to 5.0.1, but it was compiled without CUPS-aware features as it requires CUPS to be installed at configuration, before compiling.

I don't know anything about CUPS, and it shows. I'm testing the new CUPS-enhanced-Ghostscript, it works fine with Gsview to view Postscript and PDF files. Then I downloaded and compiled CUPS 1.2.11, ran 'cupsd -f' then pointed my web browser at 'http://localhost:630' -- yay, there was the admin panel! But when I chose to add a printer, it popped up a box asking for a username and password ...er, how do I get past that?

(a reminder when you post to this blog, it has a bug as mentioned on the right-side-bar, the security graphic times out super fast. I do hope to fix it sometime, but for now please take the precaution of copying your post to the clipboard before posting, and if failure reload the page with a new security-graphic and post again. Sorry about that!)

i think the url you use must correspond exactly to what is in the config file ... so might work if http://localhost:630 doesn't

localhost:630 does work, it brings up the CUPS admin window. I can click on the 'add printer' button and enter a name for the printer, but when it gets o choosing the interface (usb or parallel or network), that's when it comes up with the password window.

Wolf pup 
Try this, go to /etc/cups/cupsd.conf

Change this,

[code]# Restrict access to the admin pages...
<Location /admin>
Order allow,deny
Allow localhost


[code]# Restrict access to the admin pages...
<Location /admin>
Order allow,deny
Allow @LOCAL

If you add CUPS, you might want to have a look at epdfview.
It's a light gtk pdf viewer that works better that Gsview (find text works!) and supports printing with CUPS.
It cannot replace Gsview, as it doesn't support postscript (I emailed the developer ages ago and he mentioned intending to add it, but I don't think he's done so...), but it could be good as an alternative.

Try this. . .

When the password windows comes up, type in the word "root" as your username and your password (if you have one).

If this does not work, change your system password in the Terminal, go through the same process and then enter your new password.

Hope this helps. Have a great week.

It would be very nice if Gsview could search inside the ps (or pdf) file.
Currently, I think, this feature does not work.

Dougal, I like Gsview much better than epdfview, even though the "find" functionality is broken. For some reason, Gsview beats all the other viewers in terms of the image quality. At least all the viewers known to me, including acroread and epdfview. The same text looks crisp and clear in Gsview and fuzzy in epdfview.
I don't understand why this happens, but it is a fact.
I would vote for Gsview with my both hands.

Andrey, maybe it is that way because epdfview uses poppler?
Anyway, I was suggesting it as an addition -- it can't be a replacement as it doesn't support postscript.
Maybe someone who knows C can fix the text search in Gsview...

Here is a thread where we discussed pdf viewers:


I find Gsview lame - no search and no cutting of text. Makes it pretty darn worthless, I don't care if it displays a little better. I use the old acroread dotpup even if it is pretty large and slow.

Paul, I don't know if "lame" would be how I'd put it -- maybe "useless" is better. One thing that also bugs me with Dillo is not being able to copy text.

I must admit that how crisp the display is is quite irrelevant to me, as I don't wear my glasses, hence everything is a little bleary...

Brother laser printer, merged ESP-GPL ghostscript 

I would like to thank Ian, Craig, Lucian, Michael, Steven and others for donations. It has enabled me to pay for various things, including some hardware, in particular a Brother HL2040 laser printer and a Power Shield UPS.

I was intrigued that Brother have Linux drivers for thier entire range of printers, plus Office Works here in Australia have the HL2040 on sale right now.

Regarding the UPS, I have reliability problems with the power supply in my rural area, but also I want to investigate Linux software for interfacing to a UPS.

Regarding printing, there has been a development that I have been hoping for for a long time. Up until now, Linux systems have two sets of Ghostscript installed, a special one called ESP Ghostscript for CUPS, and a generic one for the desktop (AFPL or GPL licenced). Finally they have merged:

I stayed away from CUPS in the official Puppy due to its size, but this new development will bring the size way down. I've downloaded the experimental binary packages and will check them out. I'm hoping to have this in the 2.17alpha, so it's going to be delayed awhile. Pakt has done most of the work so far promoting CUPS for Puppy, and has a package available. Pakt also will likely have input to developing this new version ...and maybe, just maybe, CUPS will finally become standard in Puppy.

Where printers are concerned - should look at including 'multi-function centre' (MFC) types from the various manufacturers as well ..

I have a Canon PIXMA MP110 unit [ bubble jet printer/copier/scanner ] which I can only use the 'printer' part of it at the moment - have not been able to get the "scanner/copier" functions to work in Puppy yet..

There must be a fair number of Puppy users who also own such 'MFC' printers who cannot get FULL functionality out of these types of printer units under Puppy..


Congratulations on your new Brother HL2040 printer. I recently bought a Brother HL2030 printer which works great with the CUPS dotpup and a downloaded 'Brother-HL-1240-hl1250.ppd' driver.

I first had it working through a USB port but have now connected it to a cheap D-Link DIR-120 Broadband Router (only using its inbuilt USB printer port ;-)) as a printer server on my home network (same .ppd file used in both cases. Took about 5 mins to set up).

Thats exiting news about the Ghostscript development. I'll be happy to contribute any way I can.


What good news that you've bought a HL2040. I bought one too a couple of weeks ago but gave up trying different drivers on the base Puppy 2.14. It communicated with the printer OK but every page printed was blank (2060 driver). Did you get the same thing? Any hints (apart from installing cups)?

Jeffrey, yes, the GutenprintBrother HL2060 drver just prints blank pages!

Pakt's CUPS package has the same driver, for me it didn't even print a page -- the printer made noises like it was aout to, but nothing happened.

I haven't tried the official drivers from Brother yet.

If cups is still iffy on size, does it make sense to turn it into another .sfs package, along with associated drivers?

Barry: Download http://www.profv.de/brother/Brother-HL-2040-hl1250.ppd , put it /root and run my CUPS dotpup. Just tried it - worked fine for my HL2030 :-)

PaulBx1: Or what I suggested to Barry in an email - put the bulk of CUPS in zdrv, the install wizard in Puppy and have the script copy over the necessary run files during setup - similar to what modprobe does.


Geany updated 

I have updated Geany text editor to the nightly snapshot of June 26. The "About" window shows this as v0.12, however it is not yet the final v0.12.

The reason I wanted this very latest Geany is I had contacted the lead developer Enrico Troeger with a request to include color highlighting for FreeBASIC code. Enrico is very responsive to requests and he immediately implemented it. It was straight-forward for him to do, as Geany uses the Scintilla highlighting package, which has FreeBASIC support.

It covers the major Basic keywords, so should do a reasonable job with MU's PuppyBasic and GTKBasic also.

Enrico has requested feedback and will fix anything wrong or missing. This Geany will be in the 2.17 pre-alpha coming real soon.

Wolf pup 
May RutilT be updated to v0.14?

Please also update GParted !

GParted ...you're kidding, GParted was updated for Puppy 2.16. What is new?

ramengo (ramengo<at>hotmail.com) 
I'm a bit disoriented...
I had found that GParted/e2fsck were not up to date on Puppy 2.16:

Am I correct ?

Why not find out for yourself?
GParted "Help" menu shows version. Also all pkg versions are shown in /root/packages/packags.txt.

The attachment I add on the URL above (http://bugzilla.gnome.org/attachment.cgi?id=89818&action=view), show e2fsck 1.38 (30-Jun-2005).
One of the GParted guy advice me to upgrade to 1.39.

Various scripts improved, dialup persists 

Needless to say, I'm working on many scripts, improving, testing, fixing bugs. This includes 'probedisk', 'probepart', 'pmount', 'pupdial' and 'init'.

I'm pleased to report that upgrading to 'ppp' version 2.4.4 has done the trick. Right now I'm posting after being online for one hour and twenty minutes. I'm using the ESS soft-modem that ezeze5000 sent me for testing.

I'm connected to iinet here in Australia, and there was just one hiccup during negotiation, when wvdial failed to negotiate properly with the ISP, hungup and tried again automatically and on the second go succeeded. Curious.

Note, the latest test puppy is using unionfs 2.0, not aufs. This new unionfs has enhanced branch control that I want to experiment with.

Sigh, one bug gone, but here's another....

The good news is my dialup connection has hung in there for about two hours now.

But, Seamonkey has crashed twice. I'm just visiting the usual websites, for which Seamonkey has always been rock-solid. Looking in /var/log/messages:

BUG: unable to handle kernel NULL pointer dereference at virtual address 00000010

Pasting that line into a google search brings up a few hits, including:


...so, is my experiment with unionfs v2.0 going to be short-lived?

Ted Dog 
happens to me to offen in v2.16 with seamonkey I replaced it with firefox and the issue disappeared

Never had seamonkey crash. Except for with Flash 9 before it was fixed.
Use it a a lot.

Ted Dog, is SeaMonkey still operable in your Puppy system? I was wondering if you could reproduce a crash and find out the error message (if any) in /var/log/messages. I'm curious whether it's the same bug. I don't want to blame the new unionfs 2.0 and/or new kernel if they are actually innocent.

Barry, you might want to check the following link out - has some scripts that may be useful for use in Puppy..:


that is if you have not already done so..!

BTW.. received the v2.16 Unleashed CD you posted - looks good so far - however I'm still using v2.15CE (mod'ed to my way) as my main Puppy - have only a 'pup_save.2fs' saved for v2.16 testing - boot from CD & save to hard drive..



Testing, testing... 

I've compiled the kernel, turned out to be about one full days work. A very difficult decision was the new SATA and PATA choices, which has changed significantly from 2.6.18. I discovered that my previous compile of the kernel had lost all the SATA support, as the choices were in a different category (under SCSI low-level drivers, whereas now SATA/PATA has its own section. I enabled all the SATA drivers (builtin) but none of the PATA drivers (although somehow one did manage to get enabled, have no idea how). So, still have the old 'hd' IDE system. Have tested on two PCs so far, seems okay. One of them has a SATA drive, detected okay.

I have mounted sysfs on /sys in the initial ramdisk, as wanted the 'removable' flag to be able to distinguish between USB Flash (removable) and USB hard drive ("non-removable"). /proc doesn't seem to have this information.

Anyway, having /sys in the initrd, I started to make more use of it, but found something amiss ...well, is it too strong to call it "flakey"?
/sys/block is a convenient place to get a list of all the block devices, namely all the drives, but I found that /sys is very iffy about recognising the 'hd*' devices. Last night I was sitting in front of my PC surprised that my DVD drive 'hdb' did not show up in /sys/block, but did in /proc/ide. I had to do a probe of hdb, 'disktype /dev/hdb' and then it appeared in /sys.
However, although I get this problem sometimes, it comes and goes, most of the time 'hdb' is in /sys. My 'hda' hard drive is always in /sys.

Anyway, the lesson is use /proc/ide to discover all hd* drives, not /sys.

I'm online by dialup using the latest test build, but I'm getting disconnected after about half and hour. On two different ISPs. /var/log/messages reports:

daemon.info pppd[7913]: Hangup (SIGHUP)
daemon.notice pppd[7913]: Modem hangup
daemon.info pppd[7913]: Connect time 34.9 minutes.

The phone line? My modem? The new kernel?
Yep, there it goes again, I have had to reconnect:

daemon.info pppd[9515]: Hangup (SIGHUP)
daemon.notice pppd[9515]: Modem hangup
daemon.info pppd[9515]: Connect time 39.1 minutes.

...Puppy-dialup-users are not going to tolerate that!

Looks like it's the kernel. About a week ago when I was testing software modems, I got online with the ESS modem, but I did get disconnected twice. I shrugged it off at the time, as a disconnection can happen for many reasons. That was using the kernel. It was also a different PC than the one I'm using now.

Right now I've been online using the same (external hardware) modem and PC as per the first post in this thread -- online for over an hour and a half -- but I'm using Puppy 2.16.1 and the kernel.

This narrows it down almost certainly to the 2.6.21 kernel. This is a show-stopper.

I've downloaded ppp version 2.4.4, which was released mid-2006, hope that has a fix.

Nathan F 
Not sure about the modem, but I ran into the same sata problem with the 2.6.20 kernel. The thing is, I didn't have any sata hardware myself so it took a while to find the problem.

I wouldn't think upgrading ppp would fix your problem, but let's keep our fingers crossed.

I tried the new JWM v2.0 in Puppy 2.16. It looks really nice and it works perfectly. It deserve to be in next Puppy.

Report about settings changes:

New mirror of ibiblio puppylinux, updated daily 

Thanks to Kapetanakis Giannis for this:
I've added a new mirror of Puppy Linux in Greece.
Location: Greece / Crete / Heraklion


University of Crete / Computer Center

Little "bug" in Xorg Wizard fixed 

I fixed a little "bug" in /usr/sbin/xorgwizard script. Everytime it was run it appended 'modprobe evdev' onto /etc/rc.d/rc.local, whereas it is only required to be done once.

WakePup2 updated 

Pakt developed this. It is a floppy disk image for booting Puppy. This is for situations mostly in older computers when you have Puppy on CD or on the hard drive but can't boot him. Or, you have Puppy installed on a USB pen drive but your PCs BIOS doesn't allow booting from USB (or it does, but it still won't boot). Booting from a WakePup2 floppy, it will search the PCs CD, hard (FAT only, not NTFS or Linux) and USB drives for an installed Puppy, and offer to boot it.

A nice tool, and WakePup2 is built-in to your Puppy. The "Setup" menu has an entry for copying the WakePup2 img file to a floppy.

Johndoe has added some bells and whistles, and I have put this into Puppy. Forum thread:

Pakt's earlier announcement thread for WakePup2 is here:

Kernel recompile scheduled for this weekend 

I have posted the .config file for the kernel. I plan to upgrade to the latest 2.6.21.x this weekend and recompile it and all the extra modules, and that will be it, final, the kernel to be used for Puppy 2.17 and beyond.

It can take me a long time to recompile a kernel. Apart from the usual thing of going through 'menuconfig' etc., I am finding with this kernel that quite small changes cause earlier modules to have missing symbols. Weird, even when I run 'depmod -ae -F <path>/System.map' and it reports no problem with symbols, I still get missing symbols and/or complaints about version mis-matches with symbols when modules are loaded.

So, I have to go through all the extra modules (Smartlink, Lucent, rt61, etc., etc. drivers) and compile all of those manually. Then I have to manually rebuild all the modules and support files in Puppy Unleashed -- three different places: the initrd, the complete modules set for zdrv, and the base-set used in pup_217.sfs. All up, it's a half-days work. Note, if I was moving to a new kernel series, say 2.6.22, then it would be a whole lot more work, days, as likely many of the extra modules wouldn't compile.

Anyway, the '.config' file is here, and Dougal has contributed suggestions. You are welcome to also:

I am proposing to upload Puppy 2.17alpha about mid-week, roughly the 27th June 2007.

Did you get the request for support for Macintosh partitions from somebody that was running Puppy on a Mac? Somebody else suggested BSD as well for a universal OS..

Barry Kauler 
Puppy already has support for Macintosh partitions. There are modules for it.

Disciple, John Doe tested HFS and it worked fine -- you don't even need to load the module, as the kernel does it itself, so it's just a metter of trying to mount the partition.

ROX 1-click file mounting for .2fs, .3fs, .iso, .sfs 

Sunburnt has been developing this. I've integrated this into the new Rox 2.6.1 and it will be in the next release of Puppy.
Forum thread: http://www.murga-linux.com/puppy/viewtopic.php?t=19090

willhunt is developing a similar tool called 'Vdisktool', that also is a mounter for .2fs, .3fs, .iso, .sfs, but also enables creation and mounting of a "virtual disk".
Thread: http://www.murga-linux.com/puppy/viewtopic.php?t=19111

ROX-Filer updated 

Thanks to Nathan, who "puppified" ROX-Filer with a few patches to the source, I have now upgraded to version 2.6.1. Previously Puppy had v2.5. Pretty much the same, a few bug fixes. Here's a very short summary of changes for v2.6:
The main changes are: support for .desktop files that require a terminal
emulator; emblems for extended attributes are now optional; there's a
new "Fit" backdrop scaling mode (overscale); the unmount dialog
now includes an Eject button, and all mount commands can take arguments;
and there's a new display option to control whether filtering affects
directories or just files.

Do you have a external serial analog modem? 

Let us know if Jesse's latest 'puppyserialdetect' detects your modem:

Fixed color-coding for 'ls' 

Puppy 2.16 has the full 'ls' utility, whereas earlier Puppies have ls as a Busybox applet. The Busybox ls was compiled with "color coding" turned on, however the full ls requires a commandline option. Pup 2.16 has and 'alias' command in /etc/profile that is supposed to achieve this, however it doesn't work in terminal windows, only when have exited from X.

GuestToo explained that 'sh', which is the shell run in terminal windows, does not read /etc/profile. This 'sh' is a symlink to 'bash', and the latter does read ~/.bashrc when it starts, however Puppy currently has teminal shell set to 'sh'. G2 gave the solution, to add an 'ENV' variable to /etc/profile. Here is the relevant portion from /etc/profile as I have set it up:
#v2.16 have gone to full ls, now need this...
#auto: only creates ansi color codes if o/p to a tty, not in a script...
alias ls='ls --color=auto'
#v2.17 no color in terminal window. G2: sh (link to bash) does not read any
#config file, unless do this...
export ENV="/root/.bashrc"

It seems a bit circular, but /root/.bashrc only has this one line in it:
. /etc/profile

...anyway, color now works.

Is probably enough to uncomment the lines in /etc/profile

export SHELL

I have not noticed any problem with characters in text-mode apps running in rxvt,
as it is claimed in the same file.

Hope it helps

I don't remember why I commented that out. The brief explanation given does not explain it all I think. G2, do you have any thought on this?

when TERM=linux, mp displays the vertical line chars for the scroll bar as 3s ... for example:

TERM=linux mp /etc/profile

Midnight Commander also required that TERM=xterm ... i seem to remember that TERM=rxvt would not work properly

these problems might not be a problem now

SHELL=/bin/bash does behave slightly differently to SHELL=/bin/sh ... and Busybox's ash can behave a little differently too

if everything is set exactly right, it should not matter which SHELL is set, but you need to be careful that all the variables are set properly

as far as i know, when a script is run, it should not execute .bashrc or the script pointed to by ENV ... .bashrc is executed when a new shell is opened, that is, when an rxvt or mrxvt or aterm window is opened

if you want SHELL=/bin/sh, you would need to set ENV if you want to be able to setup aliases ... if you set SHELL=/bin/bash, you can put aliases in .bashrc

changing SHELL can affect things, for example, if someone has setup his own shell prompts

I don't understand why we need to source the profile in bashrc -- we are obviously running as a sub-process of init, so all the exported variables are there...

Can't all this be replaced with having the alias in bashrc (where it belongs) and just the ENV line in the profile?

'Pmount' updated and improved 

Pmount is the default drive mounter/unmounter GUI application launched via the "drives" icon on the desktop in Puppy 2.16. Earlier versions of Puppy had MUT as the default. They are both in Puppy -- we like to offer choices when the size of the apps is small and it doesn't add to Puppy's bulk to do that.

Pmount, script /usr/sbin/pmount, uses 'probepart', which now properly recognises "superfloppy" formatted drives (no partitions) (though I have only tested this on a USB Flash drive so far and it will need testing on some other types, like a ZIP disk that is formatted as superfloppy). Anyway, this required an update to Pmount, and in the process I also made Pmount much faster. Also I fixed a bug to prevent multiple instances of Pmount from running, as that causes weird results.

One forum feedback about Pmount is that it is slow relative to MUT. Well, not at startup, the criticism was the slowness in rescanning the system hardware after a button is clicked to mount or unmount a partition -- that is now considerably improved.

Heh heh, I'm quite pleased with myself. I'm sitting here clicking the mount/unmount buttons in Pmount just to see its new-found speed. My new probepart script is a vital factor in this speed improvement. Anyway, it's unwise to get too cocky until after all the Puppy-testers have had a go with it!

Apart from Dougal, everyone else seems to prefer MUT. Once Jesse has breathed on it, it should be fantastic! .........making that awful Pmount unnecessary!

I like pmount better myself. And sometimes one works when another doesn't.

I prefer MUT to PMOUNT because of two advantages.
First it uses less space on the screen and also gives a better overview on what is mounted at the moment.
Second MUT shows also the initrdswap, which one can mount or unmount very easily by simply clicking a field. I am really missing this option in PMOUNT.

Load and unload swap partitions, yes, that has been requested for Pmount before. Ok, I'll see what can be done.

I like MUT, but Pmount says how much free space there is.

Okay, I've added loading and unloading of swap partitions, fixed a bug that in full hd install (partition free space did not show), added support for drives with up to 13 partitions, improved and clarified the user-interface. It's looking good!

It is still very tall if you have lots of drives and partitions. MUT gets around that by using very small text, so squashing everything vertically.

alienjeff (alienjeff<at>charter.net) 
Ever use a Swiss Army knife or Leatherman? They're great tools to have around in a pinch, saving countless steps to the workshop to ferret out a screwdriver, pliers or knife from the toolbox. Sometimes one just needs the real deal and a trip to the toolbox is in order.

However handy, the more types of tools that get crammed into a Swiss Army knife or Leatherman seems to reduce the effectiveness of the individual features and overall ease of use.

Please lets not make MUT into something it clearly wasn't meant to be.


Does the new Pmount use gtkdialog3?
I had an idea for it, which requires gtkdialog3 and was wondering if it might save me having to port it...

My only concern about pmount (at least in Puppy 2.14) is the lack of solid appearance as it vanishes and reappears in the next default location for a new window. The amount of free disk is a considerable advantage over mut, which I otherwise prefer because it stays put and doesn't throw extra dialog boxes onto the screen.

alienjeff (alienjeff<at>charter.net) 
Jeffrey: open a console and type: df -h

gtkdialog3, yes.

Jump around? No, that got sort of fixed in pup 2.16, there's just a flicker as it updates, but it stays put. Puts up "please wait..." but on top of itself, not all over the place.

I need to bring out 2.17alpha soon. I have been frustrated with the kernel, have had to recompile it many times as the .config file from did not upgrade properly, some modules missing. Then when I recompile, I have to go through and compile all the extra modules as some get broken even for small changes in the .config ...sigh.
I'll probably grab the latest 2.6.21.x and go through the whole process again, then upload the alpha.

Barry, maybe you should post your new DOTconfig, so we could have a look what on or off and possibly mention/ask for missing items, before you do the next recompilation...

Okay, here it is:

My favorite thing about MUT is the use of text in preference to pictures to convey what a button is for. Never did care for the "internationalization" fad which put (usually meaningless) pictures on everything. Even if the language is not English, I still prefer words. But if pmount has gotten a lot faster I may have to reconsider. Stopping it jumping around is certainly a good thing; that drove me nuts.

I was hoping one of these revisions, we could get a new version of gnumeric, since the one we use is pretty long in tooth, and a lot of bug fixes and features have been done. Probably means yet another compile though <sigh>.

Replacement scripts for 'libhardware' package 
Antonio Gallo's 'libhardware' package has been in Puppy for a long time, but as Puppy progressed with his own hardware detection, most of libhardware was removed, leaving only five utility applications: probedisk, probepart, test-cfdisk, test-eide and test-scsi.

For sometime, Jesse, plinej, Dougal and myself have been playing with scripts and C code to replace these utilities. The latest incarnations of probedisk and probepart are looking good. Dougal wrote a script for test-scsi and today I whipped up one for test-eide. The only remaining one, test-cfdisk, is not used anywhere that I know of.

So, libhwardware is now officially retired. The new scripts are in the base Puppy system, in /sbin directory.

I have upgraded FreeBASIC to version 0.17b. This is a PET package, but also is included in the 'devx' package along with all the examples (in /usr/share/doc/freebasic).

New 'probepart' script 

'probedisk' and 'probepart' are utility programs written by Antonio Gallo and are part of his 'libhardware' package. This has been in Puppy for a long time. These programs do have problems, and plinej and Dougal have been working on scripts to provide the same functionality. Discussion about the issues, and posted scripts are to be found in this forum thread:

A little while before Puppy 2.16 was released, there were apparently some unresolved issues with plinej's scripts so they never made it into that release. Yesterday I decided to checkout the last update from plinej (April 26) as well as 'probepart3' (May 3) from Dougal. Dougal's script is here:
http://www.murga-linux.com/puppy/viewto ... ;start=255

As Dougal's scripts look like enhancements of plinej's, I tried probepart3, but was alarmed when it spat out many lines of meaningless stuff. Something very wrong, probably just a small oversight in the last version.

Anyway, I decided not to fix it. I looked through the scripts and decided that a fresh approach is needed. So I have written my own 'probepart' from scratch. It's about 45 lines, half the size of the others. My script also supports MMC/SD cards (but you need Puppy 2.17 for that!). Try it out, let me know of any problems ...it does have at least one "compromise" to keep it small ...and of course I may have missed something vital.

'probepart-bk1' is posted at this forum thread:
http://www.murga-linux.com/puppy/viewto ... 745#122745
...please report success/fail to that thread.

Does anybody have a SCSI or SATA CD/DVD drive? I need to get something sorted out in my head. I have just been studying Dougal's 'probedisk' script and note the reference to /dev/sr*, ditto in Jesses MUT. However, devices.txt states this:
"The prefix /dev/sr (instead of /dev/scd) has been deprecated"

The deprecated /dev/sr goes back quite a long way, it's not recent. So why is /dev/sr* still coming up? Note, they have the same major/minor numbers, so are interchangeable.

If you have one of these drives, could you run:
# dmesg | grep -E '^sr|^scd'
and let me know what you get?

# cat /proc/partitions

...kindly report to the forum thread.

Oh yeah, also if you have a USB CD/DVD drive.

Please go to the forum thread, I've posted 'probepart-bk2'. If you have a USB, SCSI or SATA CD/DVD drive, please run this latest script, no need to report as requested in last post. Just report what the script return. Thanks.

SD card works on my laptop 

Today I purchased a Kingston 2GB SD card, for 39 Australian Dollars. My laptop is an Acer Aspire 3681WXMi. Testing the latest pup, these modules got automatically loaded at bootup:

I then manually loaded:

mmc_core is a dependency of both tifm_sd and mmc_block, so gets automatically loaded. Module 'sdhci' is not required. The device appears in /proc/partitions only after mmc_block is loaded, so it is essential.

The SD drive is /dev/mmcblk0 and the partition is /dev/mmcblk0p1. Looking in /proc/partitions I see that these devices have a major number of 253, so have to be created like this:
# mknod /dev/mmcblk0 b 253 0
# mknod /dev/mmcblk0p1 b 253 1

...the problem is, under what circumstances is the major number '254', as is documented in so many places on the Internet? Can I just take it to be 253 always for Puppy, or should I get Puppy to look in /proc/partitions at bootup and dynamically create /dev/mmcblk* at every bootup?

Another problem is telling Puppy what modules have to be loaded. 'modinfo' shows that 'sdhci' will auto-load if the appropriate PCI interfaces are present. Puppy can load 'tifm_sd' if 'tifm_7xx1' got loaded. In all cases 'mmc_block' has to be loaded. So yeah, I think it can be worked out -- but I'm new to this MMC/SD stuff so any suggestions welcome.

Okay, now I've got SD ...I now have to buy a camera to go with it :-)

Good progress
Thank you Barry

This topic is being discussed in this forum thread:

Why not make it dynamic for changing standards so a patch wont be necessary in the future? Dynamic > static.

Modules 'sdhci' and 'tifm_7xx1' have the PCI IDs in them, so Puppy is able to autoload them at bootup (see /etc/rc.d/rc.modules). To auto-load the rest, I have added these lnes to /etc/modprobe.conf:
[pre]install sdhci /sbin/modprobe mmc_block major=253 ; /sbin/modprobe --ignore-install sdhci
install tifm_7xx1 /sbin/modprobe --ignore-install tifm_7xx1 ; /sbin/modprobe mmc_block major=253 ; /sbin/modprobe tifm_sd[/pre]
So for example, in the case of 'sdhci', 'mmc_block' will get loaded first, then 'sdhci'. In the case of 'tifm_7xx1', the order of loading is 'tifm_7xx1', 'mmc_block', tifm_sd'.

The 'major=253' tells the 'mmc_block' module to use that major number. I presume this will avoid the '254' problem.

Note, 'tifm_core' and 'mmc_core' are modules that will get automatically loaded by the kernel, as they are dependencies of other modules that are loaded.

mike sumner 
This is great news Barry! Will sony memory sticks be supported? I have found that both ubuntu and pclos have working card readers, but sony mem sticks dont work on them.

puppy was already detecting my sd card I guess since it was using a usb adapter that came with my cisnet pc


Mwave modem in Thinkpad laptops 

Tempestuous has already prepared a DotPup package with the extra stuff needed for this. The driver is 'mwave.ko' and is already in Puppy.

I have created a firmware package for the 'zdrv' file, so that when 'mwave.ko' is loade the first time, so is all the firmware.

The firmware package contains /etc/init.d/mwaved, that is run at bootup and sets everything up correctly. This script is part of the 'mwavem-1.0.2' source package, but I have modified it to automatically configure the country.

Note, the firmware package contains a config file, /etc/mwavem.conf, that can be user-edited.

I don't know if the above actually works, as it requires a IBM Thinkpad 600, 600E or 770, which has the 3780i modem chipset that works with this driver.

One piece of the jigsaw puzzle is missing -- I don't know how to autodetect the presence of the modem. Owners of one of the above Thinpads could help me out here .... any way to identify that this is a Thinkpad 600, 600E or 770 running? ... or the modem chip?

I've started a forum thread for this topic, please reply there:

ZSS9393 of Old-Computer 
I have a Thinkpad 600E. I've tried PuppyOS on it, but couldn't get the modem to work, so I gave up. Now I have Kubuntu on it, and still can't get the modem to work. They made drivers, but I can't find the binarys of it, only the sources. I have the URL of it:
Modem Drivers
Just FYI.
Those drivers are supposed to be the fastest Linux drivers for this modem.
BTW, can you make an installer script for those drivers? I'm a Linux noob, so it's pretty hard for me to compile drivers. If you can, can you please post them on my website, Old-Computer.org, and I'll add a link to Puppy on my site.
note that when I tried Puppy on my old Dell, it owned.

Thanks! -ZSS9393 administrator of Old-Computer

Everything should be setup right in Puppy 2.17alpha, so when I upload it, please download and test it!

PS, I'm not sure when I'll be able to upload 2.17alpha, perhaps about 30th June, 1st July.

Setting country-code for analog modems 

I had hoped for a unified approach to this, but have had to do it piecemeal. Different modems accept different sets of country-codes, some allow setting via a Hayes command (which also differs), some by a parameter when the module is loaded, some do not allow any country-setting.

I've got automatic country-code setting for some modems, particularly the software-modems. I haven't done anything for the external serial modems.
Note though, probably in the case of serial modems they are already configured for the country that they are being used in.

PupDial modem dialer 

It works! Right now I'm online, testing my new Internet modem dialer application, named PupDial.

ezeze5000 sent me about half a dozen old soft-modem cards late last year, and I have reported on testing some of these in recent blog posts. I've got drivers for three of them, but only one actually works, the ESS card. Tempestuous helped out there, advising how to work around the dialtone check. That's the card I'm using right now -- so for everyone out there, if you've got a ESS modem with ES2989 chip, it's a goer.

In fact, it's more than just a goer -- it's brilliant. I booted the latest pup, the modem got automatically detected, modem initialisation string got automatically detected. I just started PupDial and filled in the phone number, username and password fields and clicked the "connect" button, and hey presto I'm online!

Of course PupDial remembers the account details, so next time I only have to click the "connect" button.

When I get the 2.17 pre-alpha out, we can start compiling a list of cards that work. If any cards aren't quite automatically setup right, I now have a mechanism in place for tweaking individual cards -- that is, building the tweak permanently into Puppy.

Barry, Rox-2.6.1 just got released -- might as well ugrade to it...

For Rox, we have to do a few little patches to the source, to "puppify" it. Nathan did it for the version currently in Puppy, so he is most familiar with where to go to make the changes. So I'll just drop the hint to Nathan here, and we will see what happens ;-) Oh yes, GuestToo also did patches for v2.6 I think, but slightly different -- as I recall, in the right-click menu, Nathan modified the "Send to..." to "Open with...", G2 didn't.

Note for Aussies. My relative has broadband2 with iinet, and I'm at her place right now. Iinet has a australia-wide local-call dialup number as a fallback if the broadband doesn't work, and I used that -- it's what I'm using right now. WvDial v1.41 handles the isp-negotiation without any trouble and I'm connected at 48000bps.

Nathan F 
I'll try to get to it soon, but I'm on the road and don't have a whole lot of time for this stuff right now. I'd like to upgrade too because there are some bugs in 2.5 that can cause really annoying crashed under certain circumstances.

A difficulty with gtkdialog3 

I'm not sure if I have made the right choice of GUI-creator-tool: I'm using 'gtkdialog3' to create a GUI for a modem dialer frontend for 'wvdial'. The difficulty is that I know how to display a static "results" box, say you press a button then you see the results -- but I want to e able to display the output of 'wvdial' in a results box inside the gtkdialog3 window, and have it refresh periodically, not just from a button press.

Do any of you guys who have played with gtkdialog3 know if this can be done? I can bring up an external rxvt window to display output from wvdial in realtime but I don't want to do that.

Nathan F 
I know each widget can have multiple actions associated with it, which are executed one after another. An action can also be to refresh another widget's variable (check how Jason Pline does it in PBcdripper when a button press refreshes the chosen output format). So assuming you can break things down a bit into stages, you just change the value of the variable for that widget and then refresh it with the next action. Probably best to do it with an entry box but I think it can work with a few other widgets as well. Basically one action performs a command, and based on that action a variable gets reset. Then the next action refreshes the variable, followed by a new action that performs the next command required, followed up by another refresh, and so on, all associated with pressing the "execute" button.

I'm not at all familiar with xvdial, but my best guess is that it would not be very easy, or indeed very possible, to break the instructions down into stages like this. So perhaps the method I just mentioned might not be the best anyway.

I was already thinking of contacting the author of gtkdialog with a couple feature requests. I'd like a tailbox widget and a terminal widget, perhaps based on vte? But the tailbox might not be that hard to implement. Then stdout or stderr could be redirected to a file, and monitored in the same window the commands were executed from.

Another possibility is a progress bar. The gtkdialog progress bar works by having as it's input a command of some sort that echo's numbers from 0 to 100. When it reaches 100 it's done. What I did in my cdripper is have the program divide up 100 by the number of songs being processed. Say I have three songs, at the end of song three the script being used as input for the progress bar does an "echo 33", then an "echo 66" after the second song, and then closes when the third completes. I imagine some script could be devised which monitors the progress of the connection, and echo's an appropriate percentage after each stage.

All of these things, though, are not exactly easy to implement, or perfect once they have been written. I'd have to say this sort of thing is pushing the limits of what gtkdialog can do.

I met the same issue with Pbackup, and ended up with a Xdialog logbox.

Well, I've written PupDial (see latest blog post), and also used Xdialog for the tail-log of wvdial's output.
Nathan, yes, if the author of gtkdialog can be persuaded to put in a realtime file 'tail' function, that would be so nice!

another dialer program ... don't know if it would be useful, it might be too big ... http://xisp.hellug.gr/

Modem progress report: a very bumpy road 

I've started testing the softmodems that ezeze5000 sent me. Yesterday I tested the PCTEL modem, but couldn't get it to dial out. The author of the driver warned that he only tested on one chip, 134d:7897, but there are other chip-ids belonging to the same 'pct7898' family, that may or may not work. Mine is a 134d:7890.

Today I tested a modem with an ESS ES2898S chip, and did succeed to connect to the Internet. Puppy autodetected it and automatically created /etc/wvdial.conf, so all I had to do was execute 'wvdial'. Problem though, it refused to dialout, kept reporting "no dial tone" ...but then, all of a sudden it did dialout and connected.
These modems are from the USA, and this particular one has no country setting, so I presume it is hardwired for US telco standards. That may be why it only kind of works here.

Then I plugged in a plain-vanilla serial hardware modem, one that I've been using for ages, to test Puppy's new autodetection. Then I made an unfortunate discovery -- 'puppyserialdetect' no longer detects serial modems! This is version 1.1d, developed by Jesse, from the original v1.0 that I scrounged out of somewhere else. So, I dug out 'puppyserialdetect' v1.0 and yes, it detected the modem.
My Modem Wizard also detects the modem, but it uses another little app., 'modem-stats', to send a test Hayes command to the serial port.

Jesse, where are you! It's broken!

I encountered the "no dial tone" message with wvdial when using the hardware modem built into my Canadian-model Sony laptop.
It seems that these modems don't recognise Australian dial tone.

The solution was to modify /etc/wvdial.conf so that it doesn't wait for dial tone.
Change the "Dial Command" value to "ATX3DT", or create it if it doesn't exist:

Dial Command = ATX3DT

Jeff Trull (linmodemstudent<at>gmail.com) 
Hi! Just found this while I was Googling for something else. I've contributed a lot of patches to the PCTel driver and am currently the maintainer of the ESS one. I've personally tested 13d4:7890 so I can tell you that it should in theory work. As for the ESS country code, there is both an AT command (AT*NC=) and a kernel parameter (country_code) you can use, but you have to look up the numeric code for your country in the supplied country_code_list file.

Please let me know if I can supply more information. I'd be happy to help debug.

Best regards,
Jeff Trull

Jeff, it will be great if you can "come onboard" with this. If you read down through my blog, you will find some feedback about these two drivers. There are a number of issues.

I've got an ESS card and it works.

I've got a PCTEL modem, with one of the other IDs in the 789* family, but cannot get it to work -- perhaps I should post that card to you?

There is a problem with ESS and PCTEL having modules with the same name 'linmodem.ko'. It's a real headache and I had to work out an awkward work-around. They should be called 'esscom_linmodem.ko' and 'pctel_linmodem.ko'.

Normally, the PCI IDs are contained in the module, so for example 'modinfo esscom'. But not so for pctel.ko -- or rather, it does, but I only compiled it for the 789* chips, but modinfo reports that all the other IDs as well, for which it will not work. So, in /etc/rc.d/MODULESCONFIG I have had to hack in a nasty workaround for this.

Probably the best thing is to grab Puppy live-cd iso file and try it out. This distro is going to become the absolute best for dialup users, and just 83MB! The best place to provide feedback is our forum.

Oh, I have just realised that the 7890 chip you referred to is the one I've got. So, it should work...

Jeff Trull (jetrull<at>sbcglobal.net) 
Hi Barry!

The ESS and PCTel drivers have the same name for the linmodem module because they *are* the same module :) The code is broken up the way it is under the theory that most modem functions are the same; we can put the common code into a single module and then have hardware-specific (and often non-GPL) code in separate ones. I participated in creating the PCTel 2.6 driver and still do bug fixes for the principal maintainer, so that's why they're so similar. You ought to be able to use either one of the supplied linmodem modules. The code should in theory be the same but Robert (PCTel) may not have accepted all of my patches.

I'll take a look at why the PCTel drivers are reporting non-PCTel support. I imagine it has to do with some legacy code - the driver under 2.4 kernels supported a few other modem types. Maybe the old stuff isn't completely #ifdef'ed out.

Best Regards,
PS: I should grab an iso from you guys and try out Puppy sometime. I'm a little swamped now, but I do have plenty of old modems to try out.

Jeff Trull (jetrull<at>sbcglobal.net) 
Hi Barry,

Got a patch for you for the excess PCI information on PCTel. Looks like it was legacy 2.4 stuff as expected. Anyway, try this:

diff -Naur pctel-0.9.7-9-rht-7/src/ptserial_pci-2.6.c pctel-0.9.7-9-rht-7.new/src/ptserial_pci-2.6.c
--- pctel-0.9.7-9-rht-7/src/ptserial_pci-2.6.c 2007-03-10 09:02:42.000000000 -0800
+++ pctel-0.9.7-9-rht-7.new/src/ptserial_pci-2.6.c 2007-07-27 11:30:58.000000000 -0700
@@ -236,6 +236,7 @@
return ret;

+#ifndef HAL_PCT789
static int
amr_pctel_setup(struct pci_dev *dev, struct pci_board *board,
struct uart_port *port, int idx)
@@ -301,6 +302,7 @@

return setup_port(dev, port, bar, offset, board->reg_shift);

* Master list of serial port init/setup/exit quirks.
@@ -311,6 +313,7 @@
* Specific entries must come before more generic entries.
static struct pci_serial_quirk pci_serial_quirks[] = {
+#ifdef HAL_PCT789
.device = PCI_DEVICE_ID_PCTEL_PCT7890,
@@ -374,6 +377,7 @@
.subdevice = PCI_ANY_ID,
.setup = pci_pctel_setup,
.device = PCI_DEVICE_ID_I810_MR,
@@ -423,6 +427,7 @@
.subdevice = PCI_ANY_ID,
.setup = amr_pctel_setup,

* Default "match everything" terminator entry
@@ -672,6 +677,7 @@
{ (vend), (dev), PCI_ANY_ID, PCI_ANY_ID, 0, 0 }

static struct pci_device_id serial_pci_tbl[] __devinitdata = {
+#ifdef HAL_PCT789
@@ -681,6 +687,7 @@
@@ -688,6 +695,7 @@
{ 0, }

Jeff, would you mind posting that to me as an attachment, as a personal message on the forum? Reason is, this blog has the bad habit of modifying code pasted into a comment. John's forum may do that to, unless it is marked as code.

Jeff, there must be some difference between the linmodem.ko's, as swapping them didn't work -- that's how I found out about the problem.

Note, an attachment can also be emailed to me at bkaulerATgoosee.com

Wvdial version 1.41 now compiles! 

What's so great about this? Puppy has used version 1.42 due to its small size, only about 80KB for the'wvdial' executable. I recently compiled the latest, v1.56 and it weighed in at about 1550KB, due to the wvstreams library. So, I compiled the wvstreams library statically into the 'wvdial' executable and got 554KB -- still too big for a modem dialer!

The old 1.42 works fine, but we have never been able to compile the source. GuestToo found a precompiled binary from somewhere and that's what we have been using. It requires the libstdc++.so.5 library and I really wanted to be able to recompile against libstdc++.so.6 and other latest libraries.
I finally decided to try and do something about it. I got onto the wvdial/wvstreams developer guys here:
http://groups.google.com/group/wvstream ... 87ae98f916
...and after some attempts, Avery Pennarun helped out and created a patch file for wvdial 1.41. It now compiles! I have applied the patch and uploaded the source to:

Avery patched v1.41 as he didn't have the source for 1.42. V1.41 was released 1999-01-06, v1.42 in 2001-05-04, and the changelog states this:

1.42 (Sometime ago)
- There were some changes - not sure what they were anymore, but there were
some changes between 1.41 and 1.42

V1.42 was the last release that has the wvstreams component inside the wvdial source package, after that it was a separate library.
Note, the puptrix.org site also has the original unpatched 1.42 source.

Anyway, I presume that there were no important bug fixes between 1.41 and 1.42 (?) and will use the patched 1.41 for the next Puppy.

Which reminds me of something else... G2, could you post your patched source for Turma, that eliminates the rude shutdown dialog? We are using that in Puppy but don't have the source at puptrix.org.

ok, see: http://murga-linux.com/puppy/viewtopic.php?t=18826

i modified all of the rude messages and uploaded the source again

Okay, I uploaded it to puptrix.org.

Can't we try and apply the patch to 1.42? A little handling and we could make it fit...

Yeah, I managed to apply the patch to 1.42. There were some errors but I figured them out manually. But, I still get compile errors. There are quite big changes from 1.41, even one extra C++ file.

I've got down to probably one compile error. I posted the patched source and posted a plea for help at the wvstreams forum:

ALSA snd-hda-intel driver totally broken 

This is very sad.

First bug. I was testing the Smartlink package with the 'snd-hda-intel' ALSA module to access the modem built-in to my laptop. I was using Puppy 2.16.1. I could send Hayes commands, but it refused to dialout, slmodemd returning this error:
error: period size 48 is not supported by playback (64)
I googled and found this:
http://linmodems.technion.ac.il/bigarch ... 01288.html
They indicate it is fixed for ALSA 1.0.14, but it ain't.
The thread notes that ALSA versions prior to 1.0.13 are ok.

Second bug. Running my new Puppy with kernel and ALSA 1.0.14, no sound at all. Absolutely everything seems correct, just no sound. I was getting an error message from 'amixer':
amixer: Unable to find simple control 'Master',0
so I googled and found this:
...Arch Linux people reporting no sound with 'snd-hda-intel' module and the kernel. Again, it is suggested in the thread that this will be fixed for 1.0.14. Well it hasn't been.

This is a widely used ALSA module. For it to be broken is very sad. These bugs have been reported one to two months ago.

Note, just to make sure it wasn't me stuffing up the ALSA compile/install, I booted my new pup from flash drive on another PC, which uses the 'snd-intel8x0' module, and sound works fine.

I've reported these bug, joining heaps of other snd-hda-intel bug reports here:

PupScan improved 

'PupScan' is found in the 'System' menu. This is a GUI application I whipped up a couple of Puppy-versions ago, that displays informations about modules and PCI interfaces. In particular, it can tell you which module goes with which interface.

I have significantly enhanced it with USB device information. The earlier PupScan does display PCI-to-USB interface information and what modules they use, such as 'uhci-hcd'.
Now, information about any plugged in devices is also displayed, giving information like manufacturer, description, vendor and product IDs, and also the appropriate kernel module. For example, my USB mouse uses the 'usbhid' module, and my pen-drive uses the 'usb-storage' module.

Ah ha, I'm running the new kernel, and I see a MMC/SD module has loaded. But, I haven't got hold of an SD card yet. Will do that today -- once again I'm working into the wee small hours -- it's 2.50am right now.

I hear some of the SD cards are 50+ times faster than a harddrive when connected via PCI. That could be one fast puppy!

I was just looking at prices from my local discount PC parts shop. Kingston 2GB SD card for AU 39 Dollars (about 30 US). I notice they also have mini-SD cards, a bit more costly, but I presume my laptop 5-in-1 reader just takes the standard SD card.

Barry, many (all?) mini-SD cards come with an adapter to fit SD card slots. My SanDisk mini-SD card came with one. Check with your source if an adapter is included.

Barry, ohci1394 is a generic module and so has no pci numbers associated with it -- so it doesn't get loaded in Puppy...
This can be solved by:
elspci -l | grep -q '0C0010' && modprobe ohci1394

BTW, regarding SDs, say your card is detected as device "ddc0", the partitions on it will be named "ddc0p1" "ddc0p2" etc. Strange.

Dougal, I don't think you need to explicitly load most generic modules, as they are dependencies of others.

sh-3.00# modinfo video1394
filename: /lib/modules/
author: Sebastien Rougeaux <sebastien.rougeaux@anu.edu.au>
description: driver for digital video on OHCI board
license: GPL
vermagic: mod_unload 486
depends: ieee1394,ohci1394
alias: ieee1394:ven*mo*sp0000A02Dver00000100*
alias: ieee1394:ven*mo*sp0000A02Dver00000101*
alias: ieee1394:ven*mo*sp0000A02Dver00000102*

But in this case, what causes 'video1394' to load? Whatever loads it, the dependencies will automatically load.


If you're doing Firewire (IEEE1394) could we have scsi, too?!

We need support For XD Picture Cards

The best way to use user 'spot'? 

In Puppy we run as 'root', however we do run some servers as user 'spot'.

For example, didiwiki. This is a wiki with its own inbuilt http server. We launch it like this (see /usr/sbin/didiwiki-gui):
su -c /usr/local/bin/didiwiki - spot &
defaultbrowser http://localhost:8000/

I'm playing with the Abyss web server, as Keith Silva reported a bug using 'nullhttpd' with the Quisp database. He fixed it by using Abyss.
Yeah, Abyss sure is nice!
Anyway, I installed like this:
Downloaded abwsx1.tgz (Abyss tarball) to /root/spot.
# su spot
$ cd ~
$ tar -zxf abwsx1.tgz
$ cd abyssws
$ ./abyssws

What the above does is expand with all Abyss files spot:spot ownership. I then run the web server while logged in as user 'spot'.

Works fine. But, what are the relative security advantages/disadvantages of the two approaches? In the didiwiki approach the application is outside /root/spot, whereas for Abyss I have put everything inside /root/spot and set all ownerships to spot:pot. Anyone got any thoughts on this?

most web servers must be started as root ... this allows the server to have access to the lower numbers ports, like ports 80, 81, 21 etc etc ... the program then forks processes to the background, running as an unprivileged user like user "nobody"

the idea is, that if a hacker manages to get into the system through a hole in the server, the hacker will have the same privileges as the server process, that is, user "nobody" ... so they can't do much harm

Xampp refuses to start unless it is started by root

my Monkey package automatically starts as root and automatically forks a server process as "nobody"

the Hiawatha web server is interesting ... the latest version of Austrumi has Hiawatha installed

[q]Hiawatha is a secure webserver for Unix. It has been written with 'being secure' as its main goal. Hiawatha has many security features that no other webserver has. This and the fact that Hiawatha's source code is free of security-bugs, makes Hiawatha the most secure webserver available. I hereby challenge every visitor of this website to find a security-bug in the Hiawatha webserver[/q]

Hiawatha does not run as nobody, it forks processes that run as user id #33 (with no user name)

the executable is 85k, 41k compressed


newLisp is also interesting ... it is a scripting language with Lisp syntax ... the executable is 97k ... it includes a built in wiki ... also it can act like a telnet server (you can connect to it and execute Lisp instructions on the remote terminal)

their web page runs on the newlisp program ... their web page is the same wiki that is built into the newLisp executable, so you can see what the wiki is like just by looking at the newLisp web pages

in most distros, all a hacker needs to do once he has gained access to the system is to su root ... all he needs to know is the password ... in Puppy, because tinylogin does not have the uid bit set, user nobody can never become root, so a hacker that gains access to the system through a security hole in a server can never become root, and has very limited powers

for example:

# su nobody
$ whoami
$ su root
su: no valid shadow password
$ whoami

the newLisp web page: http://newlisp.org/

by the way, newLisp has a TCL front end, for making gui's ... screenshot: http://itinypic.com/6at94qe.png


the correct link to the newLisp screenshot: http://tinypic.com/6at94qe.png

Speaking of HTTP servers, ghttpd can be problems. Be nice to replace it with Monkey or maybe Hiawatha. I'll have to download Hiawatha and try it out. GuestToo's Monkey package works well though.

If you need a wiki and want to not have a web server, look at this:


Very cool. You can have a local web page, accessed as a file and get wiki functionality. Takes a little getting used to but very cool.

G2, that's interesting. I started Abyss as user 'spot'.
Do you see any advantage to having 'abyss' executable plus 'htdocs' directory and in fact the entire web directory hierarchy and files all owned by spot, that is 'spot:spot'?

i have done exactly that, for some of my packages, because it simplifies setting up permissions

for example, some versions of Tor would not work in some versions of Puppy, because Tor running as nobody could not read /etc/TZ properly ... rather than modifying the permissions on TZ, i simply started copying TZ to my /root/.tor dir and making all files in the dir belong to nobody every time my tor wrapper script would run ... the correct way to do it would probably be to set various permissions and set up a group so that user "nobody" would be able to access the files it needs to access ... chown'ing them is simpler, but probably not as secure

i think the advantage in chown'ing the files is that it is a simple an easy way to permit the application to access the files ... the disadvantage is that it is probably not quite as secure

probably the application's executables don't need to be owned by spot or nobody ... there are applications that can install in an unprivileged home dir, they often do this so the application can be installed and run by people who do not have root access, for example, on a machine at work or belonging to a university or other organization ... in which case, virtually all of the application's files including the executables will be owned by the user

web servers usually run as an unprivileged user for security reasons, but usually need to start as root so the program can use the lower ports, so these programs usually can be set up to start as root then run as user nobody ... programs that do not need to accept connections from the outside are less likely to be a security risk, and it is less important that they run as an unprivileged user

Keith Silva (silva.keith<at>gmail.com) 
You probably know this, but to run Abyss in root, you need to start it with the -r switch in the command line as follows:

$ ./abyssws -r

Thanks, Keith Silva

Keith Silva (keith.silva<at>gmail.com) 
Sorry, my correct email address is as shown with this message.

GuessToo & BarryK,

I tried what GuessToo had written about going from nobody or spot to root and found something, if you type 'exit' it will take you back to user 'root' ?

sh-3.00# su nobody
sh-3.00$ whoami
sh-3.00$ su root
su: no valid shadow password
sh-3.00$ whoami
sh-3.00$ exit
sh-3.00# whoami

MMC/SD support, ALSA v1.0.14 

I have recompiled the kernel with support for MMC/SD cards. The new modules are tifm_7xx1, tifm_core, mmc_block, mmc_core, sdhci, tifm and wbsd.

ALSA v1.0.14 final has just been released. I have compiled the kernel drivers, libraries and utilities.

It's 2.00 am here, time to quit. Tomorrow, or rather today, I'll get hold of a MMC or SD card and test on my laptop.

Although you say that you're posing at 2am the blog timestamp shows 2pm. I's a pity that time on the Internet is so nearly useless. 2pm is pretty meaningless unless a timezone is added or we're all agreed on using CUT (GMT). It would help if the blog stated what the timezone is perhaps in the right-hand column if not on each timestamp.
It's currently 5 June 10:30am in NZ, 4 June 2230 CUT...

I see that my post occurred at "6:29pm" which could be VET VEnezuela Time, or perhaps somewhere in the US but is it daylight savings adjusted? The whole things entirely misleading in my opinion...
By the way, a really useful site (when you know what timezones you're dealing with) is
www.timeanddate.com Try the Meeting Planner page...

Barry, a correction to what I wrote a few days ago: I think the sdhci module should be loaded when you find "050100" in the elspci output (you can check it in the sdhci line in modules.pcimap, in the second to last field).

Wireless drivers compiled 

I waded through compiling wireless drivers for the kernel, basically an all-day job.

There are some failures however:

adm8211 -- tried latest 20060521, plus previous version used in puppy.
rtl8180-sa2400 -- the patched one previously used in puppy does, not compile, and latest from cvs has that awful bug of totally erasing all its own source files when make is executed.

I'll keep hunting, see if I can find any sources patched to compile on the 2.6.21 kernel.

Thanks to the T2-project, their v7.0rc has patches and I was able to compile adm8211, rt2400 and rt2500 drivers. Yippee!

Does this help at all for the rt2x00 drivers?


I didn't notice any magic fix except to use an unpatched kernel, but I am way out of my depth here...

RE rtl8180-sa2400
It's unclear on this project's homepage whether the more recent 8185/8187/8187B chipsets are supported.
But there are proprietary Realtek wifi drivers here -

and the first report of success with the 8187 version was made on the forum today -

gen_modem_init_string improved, request for info 

'gen_modem_init_string' is a script I wrote to generate a suitable initialisation string for an analog modem. I have expanded it to include setting the country, also added a workaround for a bug in 'modem-stats' (a program called by my script) that causes it to hang sometimes.

I don't have auto-detection for 536EP and 537EP modem chips. The Intel engineers never bothered to put PCI vendor:chip IDs into the module (usually 'modinfo <module>' will return such information). So, does anyone know where there is such a list? Basically, I need a list of vendor:chip IDs so that Puppy can load the 536 or 537 module automatically at bootup.

Awhile back, a web page -- forum or wiki? -- was created with links to download sites for wireless drivers. Now I can't find that page. Anyone know the URL?

If anyone wants to post URL for downloading a analog modem or wireless driver (that will compile for 2.6.21 kernel), then please do.
I have reported modem drivers already compiled in earlier blog posts.


is ths what is needed?



Wolf Pup 
here's a giant list of id's http://pciids.sourceforge.net

Here's wireless drivers http://en.wikipedia.org/wiki/Comparison

Can you interrogate the chipsets? Sometimes the embedded initialisation string can be extracted. Try one of the utilities in the devil's OS?
Intel - definitely to be avoided, though!

cb88 (cusbrar2<at>yahoo.com) 
I queried my modem in win xp and got this appended to the modem log
AT+GMM - +GMM: PCI SoftV92 Modem
AT+FCLASS=? - 0,1,8,80
AT+GCI? - +GCI: B5
AT+GCI=? - +GCI: (00,01,02,03,04,05,06,07,09,0A,0B,0C,0D,0E,0F,10,11,12,13,14,15,16,19,1A,1B,1C,1D,1E,1F,20,21,22,23,24,25,26,27,28,29,2A,2B,2C,2D,2E,2F,30,31,32,33,34,35,36,37,38,39,3A,3B,3C,3D,3E,40,41,43,44,45,46,47,48,49,4B,4C,4D,4E,4F,50,51,52,53,54,55,56,57,58,59,5A,5B,5C,5E,5F,60,61,62,63,64,65,66,67,68,69,6A,6B,6C,6D,6E,6F,70,71,72,73,74,75,76,77,78,79,7A,7B,7C,7D,7E,7F,80,81,82,83,84,85,86,87,88,89,8A,8B,8C,8D,8E,8F,90,92,93,94,96,97,98,99,9A,9B,9C,9D,9E,9F,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,AA,AB,AC,AD,AE,AF,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,BA,BB,BC,BD,BE,BF,C1,C2,C3,C4,C5,C7,C8,C9,CA,CB,CC,CD,CE,CF,D0,D1,D2,D3,D4,D5,D6,D7,D8,D9,DA,DB,DC,DD,DE,DF,E0,E1,E2,E3,E4,E5,E6,E7,E8,EA,EB,EC,ED,EE,EF,F0,F1,F2,F3,F4,F5,F7,F8,F9,FA,FB,FC,FE)
ATI1 - 255
ATI3 - SoftK56V_B2.1_V7.66.00
ATI4 - PCI SoftV92 Modem
ATI5 - 181
ATI6 - SoftK56
CModem Version 12
Rksample Version 342
ATI7 - 255
<modem query

This is from the ini file that is loaded during modem initialization according to the log from oem11.inf>
MasterNT5.inf -- SCRCSR5K.inf >> PSCRCSR5K.inf
; Version: 7.66.00
; Capabilities: All PreSigned PnP ID's for Chuchill-11, Churchill-15, and Wellington
; Controller: HSFHWBS2
; Daa Type: STANDARD
; Codec: 20437
; Hardware type: D420
<from oem11.inf

muggins, thanks, those pages have the vendor:chip IDs for the 536 and 537 chips -- that's what I need.

Wolf Pup, thanks, that wikipeadia wireless driver page is excellent!

List of download links for wifi drivers - http://puppylinux.org/wikka/UnderDevelopment

... but this list needs some updates in response to various reports on the forum:

1. For the Atmel at76c503a driver(s), the latest 0.14beta1 version (as contained in the current zdrv file) is not working.
The older version 0.13 should be used. This is the direct link -
This older code compiles several separate modules, and the firmware is contained within the modules, so no separate firmware is required.

2. The Prism54 softmac/USB "islsm" source is now best obtained from git, as explained on the Prism54 forum -

3. For the 5 Ralink drivers, all should be sourced from the "Enhanced legacy drivers" section at -

because the official drivers from http://www.ralinktech.com/ralink/Home/S
have been shown to be unreliable.

And the rt61 and rt73 drivers need to be from CVS source, since the beta code has also been proven unreliable.

4. The Zydas zd1211rw driver contained in the standard kernel source is not working.
The "Community" zd1211 and zd1211b drivers have been shown to be best. Obtain the source via SVN as described here -

tempestuous, thanks for that.
Regarding,zd1211rw driver in the kernel, as I have upgraded to, won't the problems reported on the forum have been fixed?

I don't know how much the zd1211rw driver has improved since kernel 2.6.18.
rarsa owns a Zydas-based device, and he was the main person who reported the successes and failures of the different Zydas drivers.
Maybe rarsa could test the zd1211rw driver while Puppy 2.17 is in alpha/beta stage.

New scripts for modem and localisation setup 

There are two new scripts in /etc/r.d, 'rc.modem' and 'rc.country', both of which are called from rc.local0 during bootup.

'rc.country' takes care of keyboard layout selection, timezone, locale and modem location id-code. I removed the keyboard-layout dialog from 'xwin' script as I thought it needed to be done earlier in the bootup sequence, also everything is now done in one place. A new dialog is introduced at bootup to choose country.
It writes to a file /etc/countryinfo that has variables with lots of localisation information in one place.

'rc.modem' handles analog modem setup in one place. Well, not quite, as each modem driver may have associated firmware, executables and setup scripts in the 'zdrv' file. In particular, the 'zdrv' file may have a script in /etc/init.d, that configures the modem (such as set /dev/modem symlink).
Modem-related code in rc.network was moved to rc.modem.

The sequence is that rc.local0 calls scripts in this order:
rc.modem serial
rc.modem final

The first call to rc.modem detects any hardware modem. The second call detects any software modem (if no hardware modem found), and creates a config file /etc/wvdial.conf totally automatically -- this config file is compatible with the 'wvdial' dialer program, but I will also use it to create the config file for the 'Gkdial' dialer progam.

'rc.modem' calls /usr/sbin/gen_modem_init_string, that I wrote to automatically determine an optimum modem Hayes initialisation string.

Next I plan to:
1. Improve 'gen_modem_init_string' to read the modem country-id from /etc/countryinfo and incorporate into the modem initialisation string.
2. Export /etc/wvdial.conf to a config file usable by Gkdial.
3. Put more timezone files into /usr/share/zoneinfo, so you aren't restricted to the 'GMT+/-n'. This also means I will have to modify the 'Set timezone' program in 'Desktop' menu (/usr/sbin/timezone-set), though it may not be needed anymore.
4. /usr/sbin/chooselocale also needs to be upgraded, though it may not e needed anymore.

Barry Kauler 
Does anybody know anything about /etc/TZ? My new rc.country sets the /etc/localtime symlink but does not set /etc/TZ. Reason is, I know how to set it if the timezone is in simple GMT+n or GMT-n format, but not the more location-specific time files like 'Calcutta' or 'Perth'.
In the case of GMT+n or GMT-n, the /etc/TZ has just 'PUP+n' or 'PUP-n', where the 'PUP' string is irrelevant and the 'n' offset is what matters.
Note that here in Western Australia, at GMT+8 (8 hours ahead of GMT), the actual timezone file is 'GMT-8' and value in TZ is 'PUP-8', that is, opposite sign.

What programs still use /etc/TZ? I think uClibc does, but maybe we can dump it?

Bernard Mercier 
Speaking of localisation 'everything is now done in one pace' I like that approach.

Wolf Pup 
These sites have timezone specific files ftp://elsie.nci.nih.gov/pub/ and http://www.twinsun.com/tz/tz-link.htm

When attempting to post I get...
Fatal error: Cannot break/continue 1 level in /public/html/bkauler/news/comment_add_cgi.php on line 35

That post worked so let's try again...
Does this mean that you are moving away from the Windows-inspired use of local time? (While that may have worked fine on stand-alone PCs it isn't so great for international communications such as email.)
It is curious that UNIX timezone offsets are the opposite to what one would expect, eg NZST-12 (POSIX standard) even though NZ is +12 (ISO standard).
Note that GMT-8 is technically incorrect because it specifies the current timezone to be 8 hours ahead of UTC and to be called "GMT". Given that GMT is generally understood to be Greenwich Mean Time, this is a bad name for a timezone outside the UK. I'd recommend either sticking with localtime or going for a standard geographically flexible standard.
I read that "Old style Unix time zone codes almost certainly use positive numbers for the USA because Bell Labs was in the USA." That may well be true.
The last of the references below (also given by previous poster) may help you in the search for the country/city format that you're interested in. For example, on Fedora Core 5 if I type "TZ=Australia/Perth date" it displays the date in WST time. But FC5 has no /etc/TZ file, it is simply using the TZ variable (which our machines happen not to use because we inconveniently work in UTC here).

I may have had one "]" too many in my URL section causing the error message...

Wolf Pup, Jeffrey, thanks, the URLs look like they have the info I need.

Note, always copy your text to the clipboard before posting to this blog! Heh heh, it's a timeout bug, but I could always claim that it's an anti-spam measure!

Georges (georges<at>iec.co.il) 

Hi there
I have an Windows XP Time server RFC868 (http://www.bitsoftware.co.uk)
and I want to synchronize many puppy linux clients to that machine, so
when I receive logs from those machines , I can synchronize timing with only one server !!
I've tryed to set the variable TZ in /etc to local TimeZone (GMT+2) and synchronize with the command : rdate -s IP# ; but nothing seems to work ! How can I synchronize all linux with my XP server ?

Pup-MVS puplet 

This is a very unusual "puplet" (Puppy derivative) created by John Dowd (wmcreator in the forum):

Ted Dog 
Just let those dinosaurs die in peace;-)
To bad we didn't have this in 1999, the Y2K work could have been done at home, to many long boring hours wasted in the mainframe terminal room!! So any HP3000 puplets just for grins Ted

ted dog 
Will mirror on puptrix.org [dl is running a about 6hours]
-------------- tiny remaster script ----------
#simple script to remast
rm /etc/.XLOADED
mksquashfs / /mnt/hda4/pup_216.sfs -e /proc /initrd /tmp /archive /mnt /sys /pup_216.sfs

#add pristine folders (out of current pup_xxx.sfs)...
mksquashfs /initrd/pup_ro2/proc /mnt/hda4/pup_216.sfs -keep-as-directory
mksquashfs /initrd/pup_ro2/tmp /mnt/hda4/pup_216.sfs -keep-as-directory
mksquashfs /initrd/pup_ro2/mnt /mnt/hda4/pup_216.sfs -keep-as-directory
To turn off save dialog easily change a single line [in v2.16 line 633] /etc/rc.d/rc.shutdown
from ->
if [ $PUPMODE -eq 5 ];then #ifpupmode5
if [ ! $PUPMODE -eq 5 ];then #ifpupmode5

I like to run CD style as John Dowd talks about on the above link as well, so I make these changes to standard puppy with lite adding of MUs xine enhancements and my DVB added stuff.

Ted Dog 

alienjeff (alienjeff<at>charter.net) 
[i]It takes a long time to load (10 minutes or so on my 2GHz/2GB RAM laptop)[/i]

That's. Just. Wrong.

There's a current thread on Murga's forum involving a number of folks happily trimming their down start-up times. Please don't tell me that the antithesis of their efforts is about to erupt.

[i]you'd need 1GB or more of RAM to use it[/i]

That really puts the WOW (waste of wham - with a special thanks to Elmer Fudd) in Puppy, eh? Is this a direct challenge to Vista's [i]suggested[/i] RAM requirements?

Dowd: you're in trouble. I'm reporting you to the Society for the Prevention of Cruelty to Animals.


P.S. I bet you like the fat girls ...


Too bad the regular ethernet drivers from Puppy aren't in this because I can't go on the internet. :-(

I wonder if there is a way you can add them?



More USB modems now supported 

The 'slusb' driver in the Smartlink package supports a Smartlink USB modem, however I have now added support for many more.

In Dec. 2006, forum member 'bobbyok' posted how he got the 'Zoom 2985L 56K Data-Fax' and 'Actiontec ex560lku USB/Serial 56K External Modem' USB modems working. The drivers are already in Puppy (in the zdrv module) and it was just a matter of autodetecting and loading them at bootup, then creating the correct symlink for /dev/modem. The drivers, cdc-acm.ko and pl2303.ko, support many more USB modems then just those two models.

Puppy is now supporting lots of analog modems and autoloading the correct driver. One problem though is sendng the correct Hayes initialisation string. Another problem is configuring for a particular country.

I want the initialisation string to be automatically determined also, and I'll work on that next.

This is great news for those still on modems. For those of us on ethernet/broadband, is it possible to get ethernet auto-detecting and auto-DHCPing at bootup? It's one of the key things missing from the liveCD that is present in almost all other live CDs.

Sure, the network wizard works properly, but its an added step and confusing for a new user. Since link can be auto-detected, and DHCP can be run on all ports with link, it would seem to be reasonable to default to DHCP (as windows and other *nixes do).

Just a suggestion...


Barry, could you please make sure that the following section is enabled in the new kernel (it's the internal card-reader interface, which has a generic module "sdhci"):
# MMC/SD Card support

You will also have to add some appropriate device nodes:
mknod /dev/mmc b 254 0
mknod /dev/mmc0 b 254 1

Note that as far as I could see (maybe users can further verify this), the output of elspci for such devices contains (in the second field) "080501", so it might even be possible to load the module in the init script to enable booting off a memory card...

Is there some way of optionally adding ATM0 to the initilisation string to turn off Modem sounds?

Dougal, yes, okay, I've written it down in my notebook so I don't forget when compile the kernel nex time.

Firefox, but, I like to hear my modem! when it dials out, the noise is confirmation that it's working.

ESS analog modem driver compiled 

I previously reported being unable to compile the ESS driver. However I found an updated source (v0.3) that does compile with the kernel.
So, I have now setup autodetection for the ESS (ES2898 chip) modem.

More modem support 

I've added automatic detection of Lucent analog PCI modems, also some Pctel PCI modems. Puppy should automatically load the correct module and set the symlink /dev/modem appropriately.

I was not able to compile the ESS module.

I compiled the Intel 536 and 537 modules, but do not have auto-detection.

ESS winmodem: seem to remember one kind forum poster helping me to get one of those running some good while back? Whichever variety it was, it was recorded on John's Forum at the time. Have a box-load of the winmodems if anyone wants one.
Still struggling to find why 2.16.1 installation/GRUB misbehaves for me. Hope to have some answers later today.

Conexant/Rockwell PCI Winmodems - if I remember I sent you a CD a while back with the drivers for these winmodems - you could probably use them as a basis for this model to include the drivers to v2.17.

The 'free' version only goes to 14.4k - so if any user then wants to 'purchase' the KEY from Linuxant ( US$20 ) to up the speed to 56k they can - purchasing the KEY is a once of thing - it works for later versions of the drivers from thereon out..

Your decision..


I am looking through piles of stuff to see what was sent to me awhile back. I've got a box of about half a dozen winmodems, sent to me from the USA ...oh dear, I can't recall who sent them ...if you read this, remind me who you are! it is very much ppreciated having modems to experiment with, but I have taken ages to get around to doing it.

While poking around, an AU ten dollar note fell down -- there was a letter -- thanks Rod, you sent that as a donation awhile back. My problem is I don't have enough room, stuff is piled up all over the place.
While I'm saying thanks, I would also like to add Chris, who sent me AU fifty dollar note just before my mini-holiday in Tom Price -- specifically for my holiday -- thanks Chris, that was almost one full tank of fuel! (I filled up many times in the approx total journey of 3,500 km)

Regarding my Acer laptop. It has a modem that works with the ALSA snd-hda-intel driver, however it won't dial out. Apparently this driver has a problem -- I have ALSA v1.0.14rc3 (supplied with the kernel) and the snd-hda-intel driver only partly works with my audio/modem chip. However, ALSA 1.0.13 is reported to work. This is something that the snd-hda-intel developer hs to sort out, hopefully in the not-to-distant future.

I have compiled the ESS driver. If you want me to compile more, you have to provide download URLs, and the source must be able to compile on a 2.6.21 kernel -- the web site must explicitly state that the driver source can do that!

Ah, now I recall who sent me the PCI modems! It was forum member ezeze5000 (real name Eric), who contacted me late in 2006 and told me that he had a few modems lying around and would I like them for testing. I replied in the affirmative.

Thanks very much Eric, I have finally got around to testing them, and it's really great as they are a range, including appropriate PCTEL and ESS models for which I have drivers. I'm excited to have the hardware test these drivers!

Starting work on 2.17 

Hmm, it's 1.30am, I had better go beddy-byes. A quick note though...

I have moved up to the kernel.

I am attempting to get automatic detection and loading of modules for software analog modems (linmodems). I've kind of done the Smartlink driver package first, which supports a very wide range of software modems. I want to eliminate need for the Modem Wizard.

Automatic loading of all USB modules. Previously this was incomplete. Now, if there is a module for any USB devices, it will get loaded. For example, Smartlink has a USB modem, and the appropriate module is 'slusb.ko'.

Wolf Pup 
The 2.6.21 Kernel, the tickless kernel, it should save some battery life on laptops.

vanchutr (vanchutr<at>yahoo.com) 
The 2.17 uses the latest linux kernel?
Will you fix some bugs in pup216?
Could we update 2.16 to 2.17?
Please keep puppy fat and fast? Will you?

Please be sure to fix the GRUB loader installer in 2.16.1. It hasn't been present in any previous versions. Thanks.

Algernon (philoscience<at>gmail.com) 
Please be very, very careful about upgrading the kernel to 2.6.20 and above.

I have been experiencing severe SATA hard disk problems since upgrading to that kernel - it appears that the methods of handling the disk I/O have been changed a great deal, and IMHO need serious further debugging before being allowed to roam among the general public.

If you don't believe me, ask my injured 500GB drive.

Here are some references about what is going on:

"The kernel 2.6.20":

"Hard disk I/O randomly freezes..."

In particular buried in the above ubuntu bug report is the following line:

"Moderators - please consider upgrading the importance of this bug. For people without software RAID the problem is an annoyance. For people with software RAID the problem is critical."

I didn't have a RAID, but it was far worse than an annoyance to me.

"sata_sil problems with recent kernels"

(article referenced in above google group entries):

Puppy 2.16 helped me greatly in my determining what was causing my hard disk problem. Please don't repeat the mistakes made above, because doing so could make lots of people very unhappy.

----- bernard

Algernon, yes, quoting from your first reference:
[blockquote]Somewhere on the road from 2.6.19 and 2.6.20, a major change happened: «First, the big change is the migration away from the crusty old parallel ATA drivers to shiny new ones that use the same libata infrastructure as the SATA drivers. A side effect of this is that /dev/hda becomes /dev/sda. This isn't a problem if you're using 'mount by label' (which has been the default in Fedora since forever). If you aren't, well, it's going to be fun.»

Manually compiling a 2.6.20 kernel took by surprise some people, when «the harddrive had switched dev file from hda to sda and the DVD drive had taken the place of hda.»[/blockquote]

We have been discussing this here:

Please note that I have avoided the problem, as the configuration for the kernel gives a choice whether to stay with the old ATA system or the new one. I stayed with the old system, so hopefully we won't have the problems.

Note also, I have compiled the kernel without the 'tickless' mode, as I'm suspicious of that too. I'm staying with the old proven 100Hz timing.

PS, I don't even use udev, and I was dragged kicking and screaming into using /sys and still don't really see the point of it. So, our Puppy kernel is very conservative. I kind of wish there was a fork project for a "conservative 2.6" kernel -- a more pragmatic management also, that recognises stuff like interoperability with Windows kernel drivers, and supports historical modules.

Barry, thank you very much for your reassurance and awareness of the hard disk i/o issues! I'm still a Puppy fan!

Actually, I was a fan before that - I used your EVE vector editor to do some geneology diagrams for my family.

I hope you get well rewarded for all of this good work!

----- bernard

Tweaking the humongous-initrd 

Raffy posted this forum message to invite participation:

If you want to build your own humongous initrd, it is very easy. Just download 'puppy-unleashed-core-2.16.1.tar.gz' and expand it inside a ext2/ext3/reiserfs hd partition:
# tar -zxf puppy-unleashed-core-2.16.1.tar.gz

You will then have a directory 'puppy-unleashed', inside you will find 'boot' directory, and inside that 'initrd-tree' directory.

Mount the 2.16.1 live-CD, or use Isomaster to open up the 'puppy-2.16.1-seamonkey-fulldrivers.iso' and copy 'pup_216.sfs' and 'zdrv_216.sfs' into puppy-unleashed/boot/initrd-tree.

Open a terminal window in puppy-unleashed/boot and execute:
# ./makeext2initrd

That's it, you will have created a humngous initrd.gz!

Note, initrd-tree/init is a script but it is not used and gets removed by the makeext2initrd script -- that one is for an initramfs. The bootup script that is used is sbin/init and that's where all the tweaking will occur.

If you download the PET packages into 'packages' directory and follow instructions in the README, you can build a humongous initrd, that is a 'zdrv_216.sfs' with a cutdown set of drivers, or a 'pup_216.sfs' with a cutdown set of drivers built-in (no zdrv file). This could be used to reduce the size of the humongous initrd.

Thanks, Barry, this is a fun way to get started with "unleashed" - building one's unique Puppy. :-)

Puppy 2.16.1, minor-bugfix release 

I have uploaded this to ibiblio, also updated 'puppy-unleashed-core' package and the core PET package.

Puppy 2.16.1 is a minor bugfix upgrade of 2.16.

If you already have 2.16, no problem, the bugs probably will not affect you.

To find out what the bugs are, read my Developer News blog:
http://www.puppylinux.com/news/ (where you are now!)

and scroll down to the posts titled:
"Multisession CD/DVD, unable to delete desktop icons"
"Bugfix for USB installations"

...so, these bugs affect you if you either install Puppy to a USB drive or run a multisession-CD (saving sessions back to the CD/DVD).

Note for 2.16 users, GuestToo has prepared a Service Pack with one of these bugfixes, the other coming soon (I'm writing this on 24 May 07):

Wolf Pup 
does this revision fix Glipper disappearing?

Some funny things are happening, Barry.
In 2.16, in XVESA, from live CD, sometimes the icons don't appear, sometimes the desktop doesn't appear. If the the icons are missing, the request to drop back to command line doesn't do that but does restart the desktop with icons. In the other instance of no desktop, one of the keycombos CTL-Alt-Del, etc will provide the CLI and xwin works. I can reproduce the effect by delaying the keyboard locale selection, but sometimes it just happens.
In 2.16.1, Seamonster refuses to start at all, but Dillo works.

Does the bugfix correct the fault with psubdir and its revised usage?

Yes, 'psubdir' is fixed, or supposed to be fixed rather.

Glipper disappearing bug, no, not fixed.

Barry, what do you think about memtest?
(Memtest related thread...)
Wouldn't it be better to get rid of "internal" memtest and embed instead
a bootable memtest image in Puppy's ISO? Difference would be ab. 80k (for Memtest86+ 1.7)

JohnRoberts, yes, I the thought has occurred to me, just haven't got around to it yet.

All sorts of problems with 2.16.1 turning up. The most serious is that GRUB refuses to complete its install. It doesn't seem to initiate properly at the completion of Type2 install, and, with the GRUB from Menu, the final stage which announces 'successful' is never achieved. Rebooting does produce a GRUB prompt, however, which is useless to 99% of users. Couldn't find the file to edit it, either. Previously reported issues related to VESA resolution and Seamonster persist but are unpredictable. These are all NEW features on the HW I'm testing with at the moment.

Other network cards with Ndiswrapper? 

The Ndiswrapper homepage has this:
Many vendors do not release specifications of the hardware or provide a Linux driver for their wireless network cards. This project implements Windows kernel API and NDIS (Network Driver Interface Specification) API within Linux kernel. A Windows driver for wireless network card is then linked to this implementation so that the driver runs natively, as though it is in Windows, without binary emulation.

With ndiswrapper, most miniPCI (builtin), PCI, PCMCIA (Cardbus only) or USB wireless network cards work in Linux with x86 or x86-64. Although ndiswrapper is intended for wireless network cards, other devices are known to work: e.g., ethernet cards, USB to serial port device, home phone network device etc.

...something to think about!

I got into a discussion with a moderator tech on a general computer forum about ndiswrapper. I had mentioned that it wasnt intended for softmodems. He replied that he had gotten it to work with softmodem on his laptop running Ubuntu. Said when he started he didnt know it wasnt supposed to work, but after lot of time thinking and several unusual manipulations he got it to work. Unfortunately he didnt write anything down so said he would have to start from scratch to repeat his efforts. This fellow is fairly sophisticated techie and I tend to believe him. I suggested this would be a very nice contribution to linux community to share his findings, but he didnt seem too interested.

So I did a google and found somebody posting elsewhere claiming to be a developer of ndiswrapper. Anyway he said he took a look at a particular software modem somebody asked about and said yes, ndiswrapper could be made to support software dialup modems, that it would take about 50 changes, some trivial, some not so trivial. However he suggested for nobody to hold their breath that such will be done soon as his main goal was support for all wireless card first.

It would be great if somebody would take on officially making ndiswrapper work with other networking cards and with soft modems in particular. Alas those with technical expertise seem not to be using or interested especially in software dialup modems.

One good thing is that the ALSA developers are interested in supporting softmodems, and the Smartlink driver people are providing the extra capability to make it work.
My Acer laptop has a softmodem that may work. I tested once before, got it to respond but not dial out, but I'm looking at the subject again and see if I can get further. There may be other softmoedms that work better with the ALSA/Smartlink combo. I'm trying to get this to work autmatically at bootup!

"Hard Puppy" page updated 

My overview page on installing Puppy to hard drive has just been updated:

Enough ammunition for an incremental release?!

Enough ammunition for an incremental release?!

Your comment about this site seems not entirely accurate, Barry!!!
My first item clearly indicated that I had not surmounted the speed barrier - but it was there all the time!

I've read the new page. I'm very fussy when dual booting that grub does not install itself to the MBR. In fact I prefer to use grub.exe (Win9x) or grldr (NTFS) from the grub4DOS project as it does not need ANY installation. I think this is safer for me and newbies.

The new page does not indicate how grub is installed. Any info would be appreciated because I don't want to run it and then find I have installed it to the MBR!

My Hard Puppy page is not a HOWTO on installing GRUB. The Universal Installer offers you a choice where to install GRUB.

it should have a way to update all the packages/pet?
also, a way to upgrade hard puppy?


mark south 
Does the universal installer now create the correct grub stanza for a liveHD (frugal) install automatically?

Replacement for Windows core fonts 

Oh, this is very very interesting:

Puppy is currently using DejaVu TrueType and some Type2 fonts. DejaVu is based on the Bitstream TTF fonts. The problem is Windows compatibility -- you create say a Word document in Windows, then open it in Abiword or OpenOffice, the layout may not be quite the same. This is due to the Linux fonts having slightly different "metrics", meaning that vertical and horizontal spacing may diifer. This can have a significant affect, like a word going into the next line when it did not do so in Windows.

Red Hat has created core fonts with the same metrics as the Windows core fonts, and now totally free. Red Hat is a big enough company to stand up against Microsoft's legal muscle -- which they have done, at least in the USA (though Microsoft has another tactic that they used against Lindows, which is to take legal action in multiple countries, indefinitely, until Lindows succumbed -- Lindows kept winning but it wore them down).

Anyway, these new fonts are called the "Liberation fonts"! I'm definitely checking these out for possible inclusion in the next Puppy.

Nathan F 
Yes, I saw that and downloaded them right away. I would have to say though, that DejaVu is a much more attractive font in general. If you do add the liberation fonts then I would keep DejaVu and perhaps ditch the Bitstream fonts, of course making Liberation standard in Abiword and other applications which need to retain formatting with Microsoft counterparts. That is where I see their use, and in that sense they are likely to be a success even if there are more attractive fonts out there.

Just played around with PL 216 and installed my favorite fonts (finally!), Gentium and Andika. So far, it works fine with OOo apps. I will report later on their performance with other apps. Both fonts are covered by Open Fonts License from SIL (www.sil.org).

Gentium is serif font and for me, looks much better than Times New Roman. Also, it comparatively thinner than Times New Roman, therefore, less ink needed to print. I have proven this when I printed a 500-page report using an Epson Stylus printer, first with a Times New Roman and then with Gentium. With Gentium, I was able to print an additional copy as compared to using Times New Roman before running out of ink. Another great thing with this font is that it is Unicode 3.0 compliant.

Andika is its sans serif cousin. It is undergoing a design review before finalization next year. I normally use Design Review A since it is much simpler and cleaner (there are about 7 design reviews, A-G).

I hope you try it. All the best.

Barry, can you provide a link please? I'd like to check them out as well...

B Whiteley 
John - try the link in the original post! Links to the fonts are given in the Forum topic.


Multisession CD/DVD, unable to delete desktop icons 

If you are using the live-CD/DVD as multisession, that is, saving sessions back to the CD/DVD, there is a bug -- you cannot delete desktop icons -- they reappear on next boot.
Probably most people will not encounter this bug as they will just leave the desktop icons there, but if you do want to fix it, go to this forum thread:

Bugfix for USB installations 

If you install Puppy to a Flash drive, when Puppy is running he runs in RAM and saves files to the Flash drive periodically. This is supposed to be every 30 minutes (though there is a manual Save-icon on the desktop), but it is actually occurring every 5 minutes. This is annoying more than anything else.

I found the cause of this, so if you want to fix it, go to this forum thread:
http://www.murga-linux.com/puppy/viewto ... 850#117850

There's a file there that you can download (savepuppyd). It is uploaded to the forum as 'savepuppyd.gz', where the '.gz' means it is compressed. Running the Rox file-manager you can simply click on it to uncompress, or right-click --> "Window" --> "Terminal here" to open a terminal window, then type:
gunzip savepuppyd.gz
Then drag it to /usr/sbin, then reboot.

It's a simple fix right now, but it will of course be fixed in the next release of Puppy.

Further note on upper-case files for frugal hard drive install 

This is my recent post to the forum:
Ah, now I know what the problem is!
The iso is deliberately created without Joliet extensions (long filename support for Windows on CDs). Sometime ago this was found to cause problems for the multisession CD/DVD.

Therefore, looking at the CD from Windows, you just see it as MSDOS 8.3 file format, which comes up as all upper-case.

Nothing I can do about that, but I have now modified the 'init' script to detect INITRD.GZ, PUP_216.SFS and ZDRV_216.SFS and change them to lower-case. This will be in the next version of Puppy.

But, what about GRUB? The first time you attempt to boot, if you specify 'vmlinuz' and 'initrd.gz', is it case-sensitive at that point, before Linux has loaded? I presume not?

The problem does not occur if the Universal Installer is used, as the CD/DVD does have Rock Ridge extensions (long filename support for Linux). Or if you do a manual install from Linux.

The easiest way to do a "frugal" install of Puppy to hard drive is to use the Universal Installer, found in the Setup menu.
If you are still stuck in using a legacy operating system like Windows, and want to manually place the files, just rename them all lower-case.

Notes on frugal install of v2.16 

A couple of issues have been discussed on the forum.

A frugal install to hard drive is where you just copy the files 'vmlinuz', 'initrd.gz', 'pup_216.sfs' and 'zdrv_216.sfs' to a hd partition, then edit GRUB or LILO appropriately, and Puppy can then boot on the hd.

A problem occurs on a NTFS or VFAT partition where you have used Windows to place these files. Windows does not care about upper or lower case in filenames, and changes these files to all upper-case. Then Puppy won't boot.
I have now modified the 'init' (first boot script) in Pupy to detect this and rename them as lower-case, but for now you can easily manually fix it -- just boot a Puppy live-cd, run Pmount to mount the hd partition and manually rename the files to lower-case, then unmount the partition.

Another issue is where the Puppy files are placed in the hd partition. The Universal Installer will place them at '/', and traditionally this is where they are normally installed. This would be the least-troublesome, that is, the most-tested option.
However, you can also put them in a directory '/boot' (make sure that is lower-case too!) and Puppy should find them.
The current version of Puppy will also accept a boot parameter 'psubdir', for example:

Note the lack of leading '/'. You can put thePuppy files into /boot/puppy216. BUT, I discovered a bug in the 'init' script that causes 'psubdir' to not work, so for now please just use '/' or '/boot' to install Puppy files. Do not use the 'psubdir' parameter.

A forum thread that has been discussing these issues:

This menu.lst file works for me using grub4dos-0.4.3 frugal install:

title Puppy-p2.16
rootnoverify (hd0,4)
kernel /bp216/vmlinuz root=/dev/ram0 PMEDIA=idehd psubdir=bp216
initrd /bp216/initrd.gz

It's also possible to boot from USB Flash drive using Wkpup2 image file on hard disk instead of Wkpup2 floppy diskette:

title Puppy-p2.16-from-Usb
map --mem (hd0,0)/Fd1Wkp2x.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
map --floppies=1

Would it be possible to include 'psubdir' directory to search path for all Puppy files, like pup_216.sfs, pup_save.2fs, pupswap.swp and zdrv_216.sfs?

This would be very convenient for testing purposes for have many versions of Puppy each in its own directory and with its own pup_save.2fs and start them from grub menu like:

title Puppy-p2.14
rootnoverify (hd0,4)
kernel /bp214/vmlinuz root=/dev/ram0 PMEDIA=idehd psubdir=bp214
initrd /bp214/initrd.gz

title Puppy-p2.16
rootnoverify (hd0,4)
kernel /bp216/vmlinuz root=/dev/ram0 PMEDIA=idehd psubdir=bp216
initrd /bp216/initrd.gz


Leon, in your case you will probably find it works just as well without the 'psubdir=bp216' parameter.
Yes, I have now fixed the code so that pup_216.sfs and zdrv_216.sfs can also be in psubdir.

Why would it work for Leon without psubdir when he clearly has the files not in / or /boot?

Bit more detail of what is going on?

The paths are enabling GRUB to find and load the files, but the 'psubdir' parameter is not working in Puppy, which probably doesn't matter if he has the 'pup_216.sfs' and 'zdrv_216.sfs' located at '/'.

>BarryK wrote:
"Leon, in your case you will probably find it works just as well without the 'psubdir=bp216' parameter."

No, it doesn't work without the 'psubdir=bp216' parameter and
pup_216.sfs, pup_save.2fs, pupswap.swp and zdrv_216.sfs has to be in / directory.

>BarryK wrote:
"Yes, I have now fixed the code so that pup_216.sfs and zdrv_216.sfs can also be in psubdir."

Thank you.
Any chance to put pup_save.2fs file in psubdir path too?

Posting comments to this blog can be tricky 

This 'Simple PHP Blog' script has a known issue with too-quick timeout.

This happens when you want to post a comment. The GD-graphic security image times-out too quickly and when you post your comment it disappears.
The workaround for now is to do select-all then ctrl-c in your browser, so if it fails you can paste the comment back and try again!

I also have a problem when logged in as administator. I get logged out too quickly. I have just now applied a patch that may improve this.... we will see.

Note, the authors of 'Simple PHP Blog' ae working on a new version, but very slowly.

So, select-all, ctrl-c, then I post this...

Kernel source is now a SFS module 

Forum member kirk has taken the kernel source tarball for Puppy 2.16 and turned it into an SFS module. This is convenient as you can load the kernel source on occasions that you need it, not otherwise.

Kirk has uploaded it to here:

And I have copied it to here:

My site has a SFS-README file. Basically, just download to /mnt/home, run the SFS Boot Manager (in the System menu) then reboot.

John Doe 
Could I bug you sometime to post the patches themselves.

I'd like to test a remaster with the 2.6.19 kernel.

John Doe 
btw, really cool sfs module. :-)

The kernel patches are at puptrix.org/sources


In your SFS readme, you don't mention how to use SFS files with a multisession Puppy. Before, it worked to use ISOmaster to add the SFS file to the iso, then burn a multisession DVD with the modified ISO. Does it still work that way?


Flash, I don't know. But, you can just burn a single .sfs file to the dvd at '/' then see it if works.

John Doe 
Thanks Barry.

I downloaded them. I'm going to read up and try to get a kernel with IR going.

p.s. congrats on 'getting married'


Ted Dog 
2.6.19 is a bear, lot of stuff broken in kernel config. script. I moved on to 2.6.20 ( and posted the kernel configure file also on puptrix ) It is plain unpatched [which works in a puppy installed on to harddrive] It has the DVB/video stuff working for me, and it seems faster with newer kernel thread task switch code found in the 2.6.20 plus versions.

Fatal error: Cannot break/continue 1 level in /public/html/bkauler/news/comment_add_cgi.php on line 35

Developer News moved to puppylinux.com 
Okay, it seems to be working. This blog was at http://www.puppylinux.com/news/, hosted by netfirms.com. For financial reasons I am consolidating my pages at my host ibiblio.org, which is where you are now.

"Simple PHP Blog" has its own internal plain-text database and it was easy to tar and gzip it and upload it here. Problem is, I need 'root' login to be able to get the file ownerships correct. Currently it works for new posts, but for the old posts it is read-only, you can't make a comment.
--actually, I might leave it like that, as spammers try to post comments to old posts, hoping I won't notice. They do this manually, as this blog has a GD-graphic auto-spam protection.

Test comment.

I just tried to repost something to Puppy version 2.16 released that I posted to the old blog but was not copied over. At least one other post went missing.

I just tried to repost something to Puppy version 2.16 released that I posted to the old blog but was not copied over. At least one other post went missing.

The double posting was my fault I think.

I'm very sorry about this but here's the error 'Fatal error: Cannot break/continue 1 level in /public/html/bkauler/news/comment_add_cgi.php on line 35' Maybe it only affects posting to the ported blogs.

zygo, That's right, all the ported blogs are now read-only. I think that I should put a notice at the top of the page that all blogs prior to May 18 are read-only, as it is confusing as you found when you tried and just got an error message.

Test post ported blog 

Test entry ported blog
second line

Barry Kauler 
test comment
second line comment

Download mirrors, Unleashed CD 

Apart from the ibiblio download site, if you live in Europe you might find the NLUUG mirror quicker:

I've put the Unleashed CD together, stuffed as much as I can in it (699MB). This is a v2.16 'standard' bootable CD with the 'devx_216.sfs' and 'openofice-2.2.0.sfs' modules, kernel source, plus the complete Unleashed package 'puppy-unleashed-2.16.tar.gz' -- which has all of the packages that you find in 'pet_packages-2' at ibiblio plus tools for creating a custom Puppy as described here:
Get the CD from here:

Two SFS modules recommended for use with v2.16 are 'devx-216.sfs' and 'openoffice-2.2.0.sfs' and these are downloadable from:
or http://ftp.nluug.nl/ftp/pub/os/Linux/di ... modules-2/
Download these to /mnt/home (location where your "pup_save" personal storage file is, after the first shutdown). The SFS Boot Manager is to be found in the "System" menu -- make sure you uncheck the checkbox (you'll know what I mean when you run the Boot Manager).

Bill St. Clair (billstclair<at>gmail.com) 
I've put up mirrors of Puppy 2.16, the devx and Open Office extensions, and the unleashed core at http://s3.amazonaws.com/puppy/index.html .

S3 is very fast!

(c) Copyright Barry Kauler 2008. All rights reserved. http://puppylinux.com