logoPuppy developer news:

4.00alpha5 to 4.00alpha7

left-arrow Older news

arrow-rightLater news

Puppy Dingo alpha7 uploaded

March 7th, 2008

Get it from here:

I intend this to be the last alpha, next will be the beta. There are a few things that got missed out for this release. For example, I intend to work on the PET package manager, hopefully this will be done for the beta. I think someone mentioned that Pidgin doesn't work properly, so perhaps this needs to be upgraded for the beta also. I am also interested in offering Pmount with 'standard' or 'mut2' underlying engines -- probably for the beta also.

This release is using the kernel, same as Puppy3.

Forum thread to discuss alpha7:

Support packages for PSI etc.

March 7th, 2008

I have put 'gtklist04mu-20080306' package created by MU into Dingo. This is a support package needed by the Puppy Software Installer (PSI) and other packages created by MU.

Dingo already has 'getdir' which is needed by PSI.

I am also including the 'puppybasic-2.5b' package in Dingo alpha7.

I need to upload alpha7 very soon, while I still have broadband2 access, so I am hurriedly doing a few things. The above are dependencies for many of MUs applications. I have not put in PSI, but I did have a lightening fast look at it -- note, it uses dillo explicitly in two scripts, which Dingo doesn't have -- for Puppy3 and Puppy4, 'defaulthtmlviewer' should be used for viewing HTML help files.

Pprocess upgraded to version 0.5

March 7th, 2008

Zigbert has upgraded Pprocess.

Pburn upgraded to version 1.2.1

March 7th, 2008

Zigbert never stops! Just after I announced Cdrdao is now in Dingo to support Pburn, Zigbert has upgraded Pburn so that Cdrdao is no longer needed!

See forum thread:

Zigbert has created a new package, 'pfilesearch', that extracts some common code that can be used by Pburn, Pfind and other packages. So, Dingo now has 'pfilesearch-1.0'.

Servage customer support is disgusting

March 7th, 2008

I think that they out-source their customer support. Whatever, it really is pathetic. I have reduced my site to just about nothing and it is still getting breached. Here is the ticket I raised with them yesterday:

Dear Customer Support,
There is an on-going serious security breach of my website.
I reported this in my previous ticket of Jan 12, 2008. Since then, my site has continued to be invaded.

I have removed my WordPress blog and now my site only has static web pages, with 644 permissions and 755 directories. There are no scripts at all. I also changed my password. There is nothing left on my site that can cause a security breach, but yesterday my web pages were again hacked into.


An example of one of my web pages that was hacked yesterday:
-- many links have been appended onto the end of the file.

I request urgent assistance to fix this.

And here is the response from Servage:

Hello Barry

We are sorry to hear about your hacking issue. Kindly remove all the file contents in your account, change all the passwords, reupload all the contents. Make sure that you are not using any insecure script in your account and also try to avoid the 777 file permissions as they make the files world writable and hence vulnerable.

Thank you! :)

Kind regards,
Scott, Support
Servage Hosting

'Scott' is telling me to do what I have just told him that I have already done!

Bugfixes for multisession CD/DVD

March 6th, 2008

There was a forum thread recently discussing Dingo multisession CD/DVD.

One bug reported was that the boot parameter 'puppy pfix=ram' does not work. Yes, the saved folders still load, whereas they should not and Puppy should instead startup with PUPMODE=5 and running in RAM only with no loaded prior session. I found the problem in the 'init' script and fixed it.

It was also reported that 'pfix=<n>' where <n> is the number of saved sessions to ignore, does not work. Perhaps that person was reporting experience with an older version of Puppy, because I just tested with Dingo and it works fine. I tested with 'pfix=1' which means to ignore the last saved session. At bootup I saw the message saying that that session is "marked bad" and it did not load. In fact, that session is then permanently marked as bad and will never load. Note, bad sessions are recorded in a file /.badfolders and this can be manually edited and you can restore any session or mark any session bad by editing this file in a text editor.

The main issue that was discused in that forum thread was the lack of support for additional SFS files, for example 'devx_396.sfs' which has all the compiler tools. So, thinking this through...

There are two scripts responsible for multisession saving: /etc/rc.d/rc.shutdown saves the session at shutdown, and /usr/sbin/savesession-dvd saves the session when the 'save' icon on the desktop is clicked. Both of these scripts call 'multisavefunc' function in /etc/rc.d/functions4puppy.

Ok, that 'multisavefunc' excludes any SFS files found at '/'. For multisession, there is no /mnt/home directory (as that is the CD/DVD and it is unmounted). So, if you were to download an SFS file to '/' then it could get saved then reloaded at next bootup and used ...except that I must have had some reason for excuding them. Oh well, I have modified 'multisavefunc' so any SFS filesare no longer excluded and will get saved.

I placed 'devx_396.sfs' at '/' then rebooted. The SFS file did get saved, but did not get copied into RAM from the DVD -- so the 'init' script has screened it out. I modified 'init' so that SFS files at '/' will copy to RAM at next boot.
The multisession CD/DVD is intended for use on PCs with plenty of RAM. The intention is that everything must load into RAM and the CD/DVD drive be freed up for other uses. If you want to use extra SFS files then there must be enough RAM to hold them. In the case of 'devx_xxx.sfs', compilng needs plenty of RAM also, so perhaps a minimum of 512MB is required.

I then modified the 'init' script to recognise any SFS files at '/' in the case of PUPMODE=77 (multisession) and load them as Unionfs layers. The normal place Puppy looks for SFS files is /mnt/home. I also made a slight change to /usr/sbin/bootmanager.

I built a DVD, tested with 'devx_397.sfs' ...yay, it works!

But then, how to get rid of it? It is /devx_397.sfs in one of the saved sessions, so that session could be blacklisted by putting the session-folder-name into /.badfolders. Or, just delete it, so a whiteout file gets saved with the latest session and at next bootup the 'init' script makes sure that any file that is deleted in a later session won't get loaded. Well, not exactly, it will get loaded and then deleted.

Note to 3.02 developers, these scripts should also work for you. After I upload Dingo alpha7 you can grab them if you wish.

Something that we may have to fix, but I have run out of time right now. The BootManager is only supposed to come up once, when it detects a change in the Unionfs layers, but it came up on successive boots ...just a bit of the logic needs tweaking.

Cdrdao in Dingo

March 4th, 2008

I compiled 'Cdrdao' version 1.2.2 for Dingo. It wasn't easy, the 'configure' script kept insisting that it could not support OGG and MP3 but I hacked the script until it changed its mind. The 'configure' script did not report that 'libao' is needed and I only found that out after starting the compile.

I decided to put Cdrdao into Dingo alpha7 so that Zigbert's Pburn has everything needed to make it fully functional. I also updated Pburn to version 1.1.0

'SAVEMARK' file to locate saved session

March 4th, 2008

I announced on March 3rd, the "ComboFormat", in which the USB drive has two partitions, and the "pup_save" file would be saved into the second partition. This does create a problem however, as at first shutdown Puppy will only offer to create a pup_save in the first partition.

So, the Universal Installer creates a marker file, named "SAVEMARK" in the first partition, in the case of 'ComboFormat' installation. This file just has a number in it, the partition number in the same drive that has or will-have the pup_save file.

I modified the 'init' script so that it recognises this file and writes 'PSAVEMARK' variable to /etc/rc.d/PUPSTATE, where this variable has the partition-number of the pup_save file (or where it is going to be created). At first shutdown, /etc/rc.d/rc.shutdown reads this variable and will offer to create a pup_save file (or use entire partition if it is a Linux filesystem) in that partition only.

This SAVEMARK file is intended to fix the particular problem of booting from USB where the pup_save file is on a different partition (but same drive) than the boot partition. There must only be one such SAVEMARK file anywhere in the PC. It also can solve a problem with the Classmate laptop, which has internal USB Flash storage -- when booting from external USB Puppy will find the internal pup_save and use that, as a search is conducted through all USB drives. Previously we never had this situation of a USB drive being the main internal storage. Anyway, a SAVEMARK file in the external boot partition can just have "1" in it which will tell Puppy that the pup_save is located at partition 1 of the boot partition and to disregard any other found pup_save files.

An alternative solution would be a boot parameter in the syslinux.cfg or extlinux.cfg files. I need to think about it, but a boot parameter might be more flexible.

Miscellaneous updates for Dingo

March 3rd, 2008

I intend to upload Dingo alpha7 by the end of the week. To that end, I'm going through and updating various things, also will be making up a shortlist tonight. Some stuff I did today:
  1. Wolf Pup provided a fix for his hpijs package for Dingo.
  2. Plinej has updated Pmetatagger to 1.8.
  3. pptp 1.7.1 added to Dingo.
  4. Gpptp 0.1.0, simple VPN GUI for pptp.
  5. I wanted to test MU's PSI in Dingo, but gtklist04MU needs GTK 1.2.
  6. Plinej has compiled Gpicview 0.1.9, now an official PET.
  7. Compiled the latest NoteCase, 1.8.1.
  8. I am interested in putting mut2 into alpha7, but don't have the source and the binary I have got is static and very big -- I want to compile it with shared libs.
  9. Zigbert has updated Pburn to 1.0.0.
  10. Zigbert has updated Pfind to 3.4.
  11. Zigbert has updated Pprocess to 0.3.

'ComboFormat' added to Universal Installer

March 3rd, 2008

I have a PC that is extremely fussy about what USB stick will boot on it. The BIOS setup has USB-FLOPPY, USB-HDD and USB-ZIP settings but I can only get the last one to work, and even that is very fussy. I can't get 1GB and larger sticks to boot, so I experimented with a combination of small FAT16 partition and a ext2 partition to fill the rest of the drive. This works, with the USB-ZIP setting.

I couldn't think of any better name, so I named this dual-partition setup "ComboFormat" and have added this to the Universal Installer.

Note that this is very much under development. JustGreg is doing a lot of work getting USB drives to boot. The "ComboFormat" solution that I have devised so far is not a universal solution, as it won't boot on my Classmate laptop (another extremely fussy PC for USB booting).

Xfdiff cutdown in Dingo

February 27th, 2008

I need a basic file-compare GUI program for Dingo. I have ‘tkDiff’ as an official PET package, which requires the Tcl and Tk PET packages to be installed (note, I’ve upgraded Tcl/Tk to version 4.5.1). But, I really want something built-in by default to the live-CD.

‘Gtkdiff’ is a GTK1 file-compare program, and that is found in Puppy 2.17.1 and earlier. ‘Xfdiff’ is a GTK2 application but is somewhat broken — it has the option to generate a patch file from two files, but choosing that it just crashes. I informed the author by email about this sometime ago but no response and it hasn’t been fixed.

I compiled ‘Fldiff’, which uses the FLTK GUI widget set, but it has such a primitive looking GUI. It is very basic and the executable is over 300K with FLTK compiled in statically. There was also a peculiar quirk in the behaviour of the file-selection dialog window. The Xfdiff excutable on the otherhand is only 67K and has the nice GTK2 interface.

So what I did was cut down the menu of Xfdiff, removing all the operations related to the ‘patch’ utility — actually  didn’t really have to take it all out, as it is only the menu choice to generate a patch file that crashes. Anyway, I reduced it down to similar functionality as Fldiff, and I have named the package ‘xfdiff-cut-4.5.0′ and put it in Dingo.

tmpfs on /tmp removed

February 26th, 2008

It has been mentioned recently in the forum that if the tmpfs mounted on /tmp gets full, weird things happen.

I don’t recall what version of Puppy this was introduced, but I have removed it for Dingo. It is supposed to give a speed improvement, but whether this is noticeable I don’t know. It took awhile for me to remember where the code is that creates this tmpfs — it’s in the ‘init’ script in the initial ramdisk.

Bugfix for ‘probepart’ script

February 25th, 2008

Forum member ‘JustGreg’ has been doing a lot of work investigating how to get USB pen drives to boot reliably. Here are some forum threads on this topic that he has contributed:


I was reading through JustGreg’s and others posts to get up to speed on the subject, when I suddenly remembered a utility that I had looked at ages ago, and I even remembered its name: ‘makebootfat’. This is a very interesting little program: it can create a kind of universal USB pen drive that can boot from any of the BIOS settings, USB-FLOPPY, USB-HDD or USB-ZIP. It can create a drive with a partition but which also appears to the BIOS as a superfloppy for old BIOSes that can only boot with USB-FLOPPY. I tested it, so far only on a 512MB Flash drive and it worked. Note, it uses some files from Syslinux.

Anyway, I ran into a problem: my ‘probepart’ script did not recognise the filesystem of the partition, and this traces back to Jese’s ‘guess_fstype’ returning “unknown” filesystem. However, ‘fdisk -l’ and ‘disktype’ both detect the filesystem ok (it was FAT16). Perhaps the fact that it looks like both a partition and a superfloppy confuses guess_fstype, as you can see from disktype:

# disktype /dev/sda
--- /dev/sda
Block device, size 490 MiB (513802240 bytes)
DOS/MBR partition map
Partition 1: 490.0 MiB (513785856 bytes, 1003488 sectors from 32, bootable)
Type 0x06 (FAT16)
FAT16 file system (hints score 4 of 5)
Volume size 489.8 MiB (513638400 bytes, 62700 clusters of 8 KiB)
Volume name ""
FAT16 file system (hints score 3 of 5)
Volume size 489.8 MiB (513638400 bytes, 62700 clusters of 8 KiB)
Volume name

Jesse will no doubt figure out what the problem is, but in the meantime I have put a workaround into my probepart script. If guess_fstype fails, the script falls back to trying ‘fdisk -l’, which solves my immediate need to detect FAT12, FAT16 and FAT32 filesystems created by the makebootfat utility.

This fixed probepart is now in Dingo, but Puppy 3.02 developers may want it also. I have uploaded it here:


Squashfs 3.3 for kernel

February 24th, 2008

There is a problem that affects Dingo built with the kernel (same kernel as used in Puppy3). For the 2.6.24 kernel I used Squashfs version 3.3 — this includes a kernel patch for the ’squashfs.ko’ module and the ‘unsquashfs’ and ”mksquashfs’ utilities.

Puppy4 (Dingo) can be built with the older kernel, but it’s squashfs.ko module is version 3.2r2. The problem is, if a .sfs file is created with the 3.3 version of ‘mksquashfs’ then the older kernel can’t open it. This situation has occurred with the “devx” file.

I have solved the problem by repatching and recompiling the kernel with Squashfs 3.3.

What has surprised me is I recompiled the kernel in Dingo, but all the old modules still work and load without complaint, although they were compiled in Puppy3. Normally the kernel is very sensitive that kernel and modules be compiled with the same C compiler and glibc versions.
All I did was replace the old squashfs.ko with the new one, also replaced vmlinuz.

Squashfs 3.3 creates significantly smaller .sfs files. I built the Dingo .iso live-CD file with Squashfs 3.2, which has been the situation up until now, and it was 85.08MB. After replacing the kernel and squashfs.ko, I built the .iso file and it was 84.02MB.

This fix is for Dingo only, not required for Puppy3. Although, I suppose you could, as Squashfs 3.3 kernel module can open .sfs files created with an older ‘mksquashfs’.

I have uploaded the kernel source patched with Squashfs 3.3 to here (courtesy of Ted Dog):


insmod fixed, sort of

February 24th, 2008

Puppy3 and Puppy4 use module-init-tools version 3.3-pre11, but the ‘insmod’ utility crashes. I just checked, the ‘pre11′ was released about a year ago and nothing since then. I compiled 3.3-pre1 and insmod works in that. I haven’t reported this bug. I vaguelly recall looking at the changelog when I selected 3.3-pre11, as earlier insmod’s did not handle gzipped modules. Even though the configure supports ‘–enable-zlib’, that works with ‘modprobe’ abut not ‘insmod’. However, I seem to recall that 3.3-pre11 was supposed to have fixed that.

Jesse and tempestuous picked up this bug. I got the statically-compiled ‘insmod’ out of Puppy 2.17.1 and have created a new package ‘module-init-tools-3.3-pre11-static-insmod_3.2.2′, that you can find here:


Puppy 3.02 developers should use this fixed package.

Jesse picked up that insmod crashes  in the initial ramdisk, so you could put the working insmod into puppy-unleashed/boot/initrd-tree0/bin, but note that it doesn’t support the gzipped modules that are in the initial ramdisk and you have to gunzip and pipe it into insmod. Or, just remove insmod from the initial ramdisk, as ‘modprobe’ does the job. This applies to Puppy3 and Puppy4.

Difference-tarballs for Unleashed

February 22nd, 2008

I created ‘puppy-unleashed-3.02alpha1.tar.gz’ which is my first go at the successor to Puppy 3.01. This tarball is available from ibiblio. Forum member ‘tronkel’ has been working further on this and has recently uploaded 3.02alpha2, see this forum thread:


I enquired as to how he would make available his latest Unleashed, and it was suggested that it would be nice if there is some way that he could just upload the changes only. That would mean he wouldn’t have to do a huge upload, with the problem of hosting it somewhere.

Ok, I had a go at writing a couple of scripts to do the job. The first is ‘diff-create’. Tronkel can use this to create a tarball that only has the differences between his ‘puppy-unleashed’ directory and my original ‘puppy-unleashed-3.02alpha1.tar.gz’. He can then upload this, and someone else can download my original tarball, expand it, then download Tronkel’s “difference-tarball” and then merge it — and I created ‘diff-merge’ to do that.

‘diff-create’ is pretty easy to use. You need to have your development ‘puppy-unleashed’ directory, my original tarball, and the script, all at the same place, that is in the same directory. Then you just execute:

# ./diff-create puppy-unleashed-3.02alpha1.tar.gz

Voila, you get a tarball with just the differences, and with appropriate naming, for example ‘puppy-unleashed-diff-3.02alpha1-3.02alpha3.tar.gz’.

Soneone else can download my ‘puppy-unleashed-3.02alpha1.tar.gz’, expand it (tar -zxf puppy-unleashed-3.02alpha1.tar.gz), which expands into a directory ‘puppy-unleashed’. Then download Tronkels “difference-tarball”, then execute:

# ./diff-merge puppy-unleashed-diff-3.02alpha1-3.02alpha3.tar.gz

Get these scripts from here:


Note to Tronkel: backup ‘puppy-unleashed’ first, in case ‘diff-create’ has a bug! Also, you need a lot of free space in the partition, 5GB suggested.

Quebec console keyboard

February 22nd, 2008

Botanic has created ‘qc.map’, a keyboard layout file for the the console (X not running). I have put this into the ‘kbd’ package and upgraded the version number, it is now ‘kbd-1.12-1′. I also modified /etc/rc.d/rc.country to show the information “(Quebec, Canada)” alongside the ‘qc’ offering. This is done in Dingo, but I have also uploaded the ‘kbd-1.12-1′ package and the ‘rc.country’ file (put the file into ‘0rootfs-skeleton-3.02′ package) for Puppy 3.02 Unleashed builders. Uploaded to:


What happens now is very good for French-Quebec people. The first time Puppy is booted (or booted with pfix=ram), the text-mode keyboard-layout dialog window will offer the “qc” layout, which then gets applied to the console. Then, when the Xorg Wizard runs, it sees that “qc” is already chosen for the console so automatically chooses “qc” also for Xorg. So you don’t have to run the Xorg keyboard layout chooser after Xorg has started.
For anyone interested in this translation from console to Xorg, open /usr/sbin/xorgwizard and search for “/etc/keymap” to find the appropriate area.

Quebec keyboard layout

February 21st, 2008

Forum member ‘Botanic’ sent me some files to add a Canadian Quebec keyboard layout to Xorg. This requires a change to two packages. In Dingo, it is ‘xkbdconfigmanager’ (now version 1.1-1. Note, this is a GUI application created by Dougal) and ‘xorg_base’ (version 7.3-1). In Puppy3 it is ‘xkbdconfigmanager’ (now 1.1-1) and ‘xorg_BASIC’ (now 7.2-1). I have uploaded the modified files required for Puppy3:


For older puppies, I have also uploaded ‘quebec-xkbdconfigmanager.tar.gz’ and ‘quebec-xorg.tar.gz’, which have the specific files that need to be upgraded.

That takes care of when Xorg is running, but what about the console keyboard layout prior to X starting and in a terminal window? When you first run Puppy, you get a text-mode dialog window that offers a list of layouts - is one of those ok for Quebec?
If not, perhaps I can add a suitable console keyboard layout. The ‘kbd’ package used in Puppy has these layouts but it is considerably cut-down. Perhaps the full ‘kbd’ has a more suitable choice? In some other distro, if you go to /usr/share/kbd/keymaps/i386/ you will find the complete set of layouts.

Also, what broad layout is used in Quebec? Is it azerty, qwerty or qwertz?

Of course, in Unleashed, update puppy-unleashed/packages.txt with the new version numbers.

DRI enabled in Dingo

February 20th, 2008

I did the compile with T2 again. Previously, Xorg was compiled with DRI disabled, which causes a problem when we want to add a DRI PET package later. I enabled DRI and this required adding ‘xf86driproto’, ‘libdrm’ and ‘glproto’ packages to the T2 build.

I then updated the ‘xorg_base-7.3′ PET package with the recompiled files and renamed it to ‘xorg_base-7.3-1′. I then created a new package, ‘xorg_xorg_dri-7.3′ which (hopefully) has just enough extra files to add DRI and GL support. Kirk has previously created a package, ‘xorg_xorg_full_dri-7.3′ which adds DRI and GL but it also adds everything else, the full Xorg package, and is about 54MB uncompressed. The xorg_xorg_dri-7.3 package is 19MB uncompressed.

The development components of ‘xf86driproto’, ‘libdrm’ and ‘glproto’ were added to the ‘devx’ file.

I have not yet tested xorg_xorg_dri-7.3. Note that kirk also created ‘xorg_xorg_full_dri_DEV-7.3′ PET package, which can be installed to provide all the extra include/pkgconfig/la/a files needed to compile against the extra libraries provided in xorg_xorg_full_dri-7.3 (and xorg_xorg_dri-7.3). The ‘devx’ file just has the basic files for compiling against the xorg_xorg_base-7.3 package (which suits most applications).

PCMCIA fix for Puppy 3.02alpha1

February 20th, 2008

When I backported the Dingo scripts to 3.02alpha1, I forgot about PCMCIA.

Puppy3 uses the kernel which was configured not to support the new ‘pcmciautils’ system for handling PCMCIA and instead uses the old ‘pcmcia-cs’ package. The problem is that the bootup and shutdown scripts from Dingo did not recognise the old pcmcia-cs system. I have now fixed that.

I modified /etc/rc.d/rc.modules, /etc/rc.d/rc.shutdown and re-introduced /usr/share/pci-usb-pcmcia.ids. The first two are scriptsand these now seemlessly handle pcmcicautils or pcmcia-cs. If pcmcia-cs is used, then the pci-usb-pcmcia.ids database file is also required.

I have uploaded these files to:

So, presuming that you have already downloaded and expanded the ‘puppy-unleashed-3.02lpha1′ tarball, which expands in a directory ‘puppy-unleashed’, replace the rc.modules, rc.shutdown and introduce pci-usb-pcmcia.ids in the puppy-unleashed/packages/0rootfs-skeleton-3.02 package.

Note that puppy-unleashed/packages.txt has both ‘pcmcia-cs’ and ‘pcmciautils’ packages selected, however I don’t think the latter should be, as it isn’t being used.

If you’re just coming into playing with the 3.02alpha1 Unleashed tarball, please note that I have made other fixes. Read back through this blog since the announcement of the 3.02alpha1 release. Various fixed files and packages have been uploaded to ibiblio, in that same directory as the above URL.

Note also, if you have played with the Dingo alpha6 that I built with the kernel, it has the same problem. It also requires those 3 files.
Another problem with this build, as someone noted on the forum, is that the ‘devx_396.sfs’ file does not load. This is because the kernel has an older squashfs module (v3.2r2) whereas the ‘mksqushfs’ tool used to create the sfs file is v3.3. V3.3 achieves greater compression but isn’t backwards compatible.

Mousepad colors

February 19th, 2008

This is very interesting. When I setup my Classmate laptop at the “laptop counter” at the Singapore Budget Terminal, my USB optical mouse did not work at all. This mouse was brand-new, a Logitech mouse, and I was most surprised. This is the desk that I had setup on:
laptop desk

Do you know what was wrong? It’s the yellow color! When I moved to the grey desk surface, the mouse worked fine:
laptop image

My mouse-saga does not end there. When I moved into my accomodation in India, there was a handy little desk that I setup my laptop, but the mouse barely worked –the cursor responded in half-hearted little jerks. Here is the setup:
room pic

The cause was the brown surface! I put the mouse on a piece of white paper and it then worked fine. So, there’s a bit of an education about colors that the mouse laser beam doesn’t like.

That room looks a bit like a jail cell! Where was I? Maybe I’ll post another snapshot that prit1 will recognise.

11 Responses to “Mousepad colors”

  1. disciple Says:

    Sorry - posted a question about where to feedback on the Dingo alphas to a January entry by mistake somehow…

  2. BarryK Says:

    Scroll down this blog to where the latest Dingo alpha is announced. It will also contain links (maybe in the comments) to relevant forum threads.

  3. Sage Says:

    I think this ‘feature’ of optical mice is well-known? I even had a tiny slip of paper which passes for a manual included with one mouse that I bought for a client which suggested the white paper solution you discovered.

  4. disciple Says:

    Thanks, but it seems Windows or something must be magically hiding it from me somehow.
    I found it with Google though

  5. nic2109 Says:

    Hi; I’ve not had trouble with colours but have had optical mouse issues where the surface has been reflective. A piece of paper or a thin book usually does the trick, as long as it doesn’t have a glossy finish. Colour sensitivity is a new one on me - I’m tempted to say “Trust Barry to find a bug in anything……”.


  6. raffy Says:

    Especially using the Japanese way of life for apartment space, that room is spacious.

  7. brucehohl Says:

    Hmmm …. the “room looks a bit like a jail cell” … and “doors in India have sliding bolts, both on inside and outside” … might make one worry about getting locked in!

  8. Subito Piano Says:

    yeah - i read once that optical mice need some sort of patterned surface underneath them to work correctly — hence a stained wood surface will work, but a plain-colored surface requires a mousepad under it — i think just the fabric on top of them provides enough irregularity for the mice to cooperate.

  9. disciple Says:

    In general, my observations line up with what Subito Piano says.
    I also have a MS intellimouse explorer that doesn’t work on the mousepad that came with our computer :)

  10. sml Says:

    There is a big difference between an OPTICAL mouse and a LASER mouse.

    Ditch the optical and get a laser.

  11. prit1 Says:

    Barry .. did you happen to get the picture that you think I will recognize?

Universal Installer backported

I have backported the Puppy Universal Installer from Dingo to Puppy3. The script is ‘puppyinstaller’ and resides at /usr/sbin. Get it from here:


I have used this word “backported” several times to describe scripts from Dingo that I have got to work in Puppy3. This resulted in the release of 3.02lpha1. However the word “backported” may be misleading as mostly what I did was make sure that the scripts work in both Puppy3 and Puppy4. The main stumbling block was the abandonment of the /dev/hd notation in the Dingo puppies, so I made sure that the scripts can work with or without. This includes all the bootup and shutdown scripts.

Note, I’m thinking of recompiling the 2.6.24.x kernel with the old IDE /dev/hd support rather than the new libata PATA support, as some people have reported some IDE interfaces not working — sage comes to mind here, I don’t know if anyone else had this problem — I tested on nine different PCs and the IDE drives were recognised fine. Anyway, I might be a bit conservative and go back to /dev/hd. Dingo is now setup to seemlessly work with either type of kernel.

3 Responses to “Universal Installer backported”

  1. Sage Says:

    Welcome home! I had a similar experience in Mexico many years ago when one senior member of my party wept at both the abject poverty and blind subservience to the Catholic church. The theory was to visit often and spend $$$ on the basis that wealth would trickle downwards (Maggie esposed similar philosophy). It is, of course, a deliberate capitalist lie!

    Any road up, yes, the drive recognition issue continues to puzzle me. What I cannot understand is why the sd/sr system fails for Puppy (I think there’s one other distro that has a problem with the switch over), but all the other developers have no difficulties with it, even on the sometimes challenging SiS chipsets. Speaking in my usual complete ignorance, I get the impression that the answer is out there and that a study of the code of other developers might provide the answer? But, then, most other distros manage to boot up on scsi drives! No idea whether there’s a link or whether that’s just coincidental. Happy to help - at least within my severely limited ability…

  2. Flash Says:

    Barry, I think the reason your optical mouse didn’t work on some desktops is because they were too smooth, not because of their color. That type of mouse depends on “seeing” movement of the surface. If the surface is very smooth there’s no movement for the sensor to see.

  3. brian Says:

    I tried to install puppy4 alpha 3 on my thin client with a compact flash in an IDE adapter. I was able to “do” the install, only to find that the card had Gibberish on it. It took me a while to figure out what was needed to recover it. I am able to run this puppy off my usb stick without problems. I don’t know what caused this. I am able to use puppy 3.01 off the compact flash without difficulty.
    I hope this information helps to make puppy better.


Barry’s mini survival guide for India

This is light-hearted, some essentials needed when traveling to India…

The power plug for my Classmate laptop is an Australian plug, so I bought a universal adaptor in India. This thing only cost about 70 cents (65 cents US) and here is a snapshot:

Looks alright, except that when I plugged in my Aussie plug it just fell out. Ok. At this point a small screwdriver is required, which I didn’t have, so I created one from the metal clip off my pen. This would be illegal in Australia, in fact the universal adaptor itself would fail all safety and usability tests, but I opened it up and twisted the prongs until finally my Aussie plug did not fall out. However I would not use this thing for anything but very low power devices.

So, a small screwdriver would be mighty handy, but put it in your checked-in luggage, not hand luggage or you’ll get arrested!

Unless you want to get some nasty bug, you have to boil the water. This includes water for brushing your teeth. So, what to do? In India these little things are widely available:
water heater

It cost me 125 rupees. One Aussie dollar is worth 33 rupees (and about 90 US cents), so you’re looking at several dollars. The man at the shop kept telling me “no guarantee”, but anyway, it works fine. Apart from boiling up some water for bathroom purposes, this is handy for making tea or coffee.

This little heater fits nicely into a mug, so take a good size mug along on your trip. I found a stainless steel mug in Crazy Charlies in Australia (a discount variety store) for about a dollar.

Traditionally, doors in India have sliding bolts, both on inside and outside, rather than the keyed locks that we are familiar with:

A padlock is normally provided, but I really don’t think you should trust it. Instead, bring your own. The photo shows a small padlock that I brought with me. Actually, this particular door also has a keyed lock, with an enormous key, and it looks real easy to pick.

So there you go, some items to put on your buy-immediately list upon arrival in India and some items that you should take with you!

4 Responses to “Barry’s mini survival guide for India”

  1. nic2109 Says:

    Thanks for the tips - I expect that I’ll forget them until I need them! And then it’ll come back to me.

    I’m not too sure about an electric element in a steel mug - is that a good idea? Living in England near The Potteries (that’s the area around Stoke-on-Trent where Wedgewood and Spode developed industrialised pottery in the 18thC and where both firms still have establishments) I’d go for an earthenware mug any day.

    Glad your senses of humour and persective survived intact. Take care.


  2. raffy Says:

    Looks like you’re home. :)

    I used to think that you will just lose the screw driver in your hand luggage, as it will be taken by the inspectors upon your entry to the pre-departure area. Maybe it’s different in India - it’s good that you were not arrested.

  3. raffy Says:

    Back to work - there is an interesting discussion of Dingo alpha6 here:

  4. prit1 Says:


    Which part of India (Chennai) did you stay? Was it in hotel or as a guest in some house?

    Where all did you visit?

Have pics, but…

My digital camera does not have a standard USB mass storage interface, and the Gphoto2 application doesn’t work with it either. So, I have previously resorted to physically removing the SD card, except that I don’t have a SD reader for this Classmate. Yeah, I could have bought one, but didn’t think of it.

So, will post some news with photos after return to Australia. I’m coming back a bit earlier than planned, as I decided I’ve seen enough, done enough. Just wanna go home now.

Haven’t done much on Puppy, but did fix a couple of scripts, will upload those later.

Okay, by for now!

3 Responses to “Have pics, but…”

  1. prit1 Says:


    Hope your stay and trip was pleasant. Looking forward to hearing your experience in Chennai.


  2. grumpywolfe Says:

    Well it sounds like you had fun.

  3. iottmco Says:


    There is a SD card reader in the classmate PC. Just peel back the blue cover starting from the top LCD side. There are 4 clips. At the back below the hinge you will see the SD slot. :-)

    Hope we can see some pics!

    Hope you are enjoying your trip.


Singapore Budget Terminal

That’s where I am right now, in the Departure Lounge. Something I didn’t understand before, but there’s no transit lounge like with “normal” terminals. On arrival, you have go through customs, and if you have checked luggage pick that up - Tiger Airways is a ‘point to point’ airline, so there’s no concept of transit.

later you have to come back, go through checkin, then customs again then into the departure lounge.

The ‘laptop zone’ is nice. A universal power socket that accepts my Australian plug. and an ethernet cable. No need to mess around trying to get wireless going!

Anyway, I just logged into this blog to see if any comments awaiting approval - yes, one genuine, three spam.

3 Responses to “Singapore Budget Terminal”

  1. raffy Says:

    Good to know you’re at Singapore already, although I thought it should have been yesterday (?).

    Your trip coincided with the Chinese New Year - the airport must be especially busy now.

  2. Subito Piano Says:

    Hi Barry! I was reading a [url=http://www.linuxquestions.org/questions/linux-newbie-8/what-is-a-good-linux-for-really-old-pc-516082/]forum[/url] about lightweight distros. A fellow was trying various lightweight Linux distributions and quickly left puppy because he couldn’t get it to boot on his system. It seems he didn’t read through all the boot options.

    Which brings me to my point: booting Puppy for the first time without anyone’s help can be frustrating for a Linux newbie. Could i suggest that you increase the pause back to 10 seconds, and more importantly, put in big red letters at the top: “hit spacebar to pause and read instructions” (or something like that). I think that this would reduce the number of people who give up on Puppy too quickly because they don’t know what to do, or even know how to stop the boot process long enough to read your (quite lucid) instructions.

    Oh, yeah — i assume a “space” before typing puppy + enter won’t affect the boot process. (Can you tell i still have vestiges of “noob” in me??!)

    Thanks! ;-)

  3. lobster Says:

    Wot no pics? :) Oh - OK a classmate laptop plugged into a airline Ethernet could only be of interest to [Lobster thinks hard] Linux geeks!
    Two versions of PuppyCE are emerging

    Talking Stick - Ultra stability
    Lassie - 3.xx series

    With one or both of them I would like to move away from the CE designation and make them full Puppy releases (assuming quality development)

    However you might have other ideas / plans.

    Other news: Tom who does WNop is working on a beautiful new
    Puppy site.

    I am happily running a multisession Dingo Alpha . . .

gettext utility

Dingo now has the ‘gettext’ utility, at /usr/bin.

Note that the ‘devx’ file has the complete ‘gettext-0.16.1′ package, however if that is not loaded then the ‘gettext’ utility on its own is the minimum required by some applications for international language handling.

3 Responses to “gettext utility”

  1. disciple Says:

    Barry, did you notice the “stable” gnumeric 1.8.1 is now out?

  2. lobster Says:

    Have a great time in India. :)

  3. PaulBx1 Says:

    Barry, I’ve got an idea for a new feature you might want to consider for Dingo.

    Right now it is rather tedious making pupsave backups, requiring a reboot into ram to do the copy. I find that currently, I’m only disciplined enough to do a backup every couple of weeks or so. This certainly reduces the utility of the backup if I need it.

    How about adding an entry in the shutdown menu, “Backup & Power-off”, which does the shutdown to the point the current pupsave is closed, then copies the pupsave into a fixed directory beneath the current pupsave location (such as /initrd/mnt/dev_save/Puppy/pupsavebackup), then when that is done the shutdown completes? Probably need to keep a couple of backups down there, always overwriting the oldest one, just so when you’ve wrecked your pupsave, that is not the only pupsave backed up!

    Doing it at shutdown would not bother people because they are normally walking away from their computer at that point anyway.


Several people have sent me an email or forum personal message in the last 4 - 5 days and I have not responded. I have been rather preoccupied with various things, so my apologies.

Note, for anyone wanting to order a “Puppy Unleashed” CD, my daughter will continue to process orders while I’m overseas. It will be Puppy 3.01.

When I get back in the first week of March I’ll put 4.00beta together and hopefully shortly after that the final. I may offer it with two kernels, although it does depend on a few things.

2 Responses to “Apologies”

  1. raffy Says:

    Have an enjoyable trip and vacation, Barry!
    (Just send in an email if you need any help at Changi airport.)

  2. nic2109 Says:

    Hi Barry; have a great time in India.

    Don’t bother too much about “keeping on with Puppy development” (though we’d all be happy if you were too) but just do the tourist bit and enjoy yourself.


Updates for 3.02alpha1

February 3rd, 2008

I have uploaded these files to ibiblio:


To be found here:

I had to go through packages.txt in Unleashed to replace a ‘-’ with a space on every line, as this is now the required format:

Was: “atk-1.18.0″ “atk-1.18.0: atk: atk” on “SLACK12 116K” \
Now: “atk-1.18.0″ “atk 1.18.0: atk: atk” on “SLACK12 116K” \

The glibc package now has the ‘zoneinfo’ directory.

wpa_supplicant rollback

February 2nd, 2008

There have been reports about wpa_supplicant not working in Dingo. Forum member tempestuous compiled a special patched version of 0.5.8 back in Puppy 2.16 and we used this in 3.0x (and it’s still in 3.02alpha1). However Dingo has v0.6.0. So, I’ve rolled back to the older version and the package in Dingo is now ‘wpa_supplicant-0.5.8-rt73patch-1′. Read more here:


Classmate detection improved

The scripts /usr/sbin/xorgwizard and /usr/X11R7/bin/xwin in Dingo (and 3.02alpha1) use the utility ‘dmidecode’ to read information from the BIOS to detect a EeePC laptop and hence that it has a 800×480 screen. However in the case of the Intel Classmate laptop, the BIOS did not seem to have information that identified the make and model of Classmate. However Intel has now informed me that this information is there, by running this:

# dmidecode -s bios-version

The first two characters returned are ‘CM’ which means ‘Classmate’, then ‘915′ which is the chipset, then ‘10′ which is the model or generation number. I have ‘Generation 1.0′ which is ‘10′ and later models are ‘15′ and ‘20′.

I have updated the scripts with this precise method of detecting  Classmate. For now, just detecting ‘10′ as I don’t know what screens the later models have or will have.

4 Responses to “Classmate detection improved”

  1. pakt Says:

    ‘dmidecode -s bios-version’ on my Classmate returns:

    However, ‘dmidecode -s system-product-name’ returns:
    Intel powered Classmate PC

    From what I understand, your Classmate BIOS doesn’t have that string. Is that correct?

  2. BarryK Says:

    That’s right, my Classmate has an earlier BIOS without that info. The Intel engineer mentioned that later versions of the BIOS have more make/model identification, but the bios-version info is in all of them and uniquely identifies model of Classmate.

  3. tempestuous Says:

    I just want to say that this is very clever stuff.

    I think that Puppy’s eminent suitability for these devices needs to be publicised.
    Puppy is already well known on the Eee user forum http://forum.eeeuser.com/
    due to contributions there by Raffy and JustGreg.

    Is there a Classmate user forum?

  4. robb Says:

    Anything happening with the cloudbook?

Puppy 3.02alpha1 uploaded

February 1st, 2008

I stated awhile back that I would not forget the Puppy3 series, so here is 3.02alpha1. It has many features of Dingo back-ported. I have very limited time right now as I have a lot of things to do prior to my holiday (starting this coming Tuesday) so alpha1 has had only basic testing and I have added a small selection of the latest packages. Get it from here:


Some notes:

  1. I have not backported the Universal Installer, and it still has the same version as in 3.01. Will do that later.
  2. It has the ‘Phacile Blue’ GTK theme and the ‘Black-vg’ JWM . However I think they don’t quite match, but probably some slight mods to the GTK theme, like a less-blue-more-grey background would improve it.
  3. The ‘devx_302.sfs’ file is identical to the ‘devx_301.sfs’ file.
  4. This is still all Slackware-12 compatible. Mostly I have upgraded scripts plus a few executables

If you find that it works and would like to work on it, with a view to a final release version, I propose that it be the basis of a Community Edition, with the versions 3.02 - 3.09 being alpha and beta releases, final being 3.10.
The problem for me is that I’m going on holiday for 4 weeks and will be narrowly focussed on a few things, like improving the PETget package manager. Also, the main focus of my attention will continue to be Dingo. So, if anyone wants bring 3.02 to a final release, you’re welcome.

What I can do is upload the complete Unleashed tarball that I used to build 3.02alpha1, but I only have two more days broadband access. Right now it’s Friday afternoon, and my broadband access will be until Sunday morning. So let me know promptly if you want it.

I know that there are proposals for the next CE to be built on other versions, so my offer is just a suggestion.

7 Responses to “Puppy 3.02alpha1 uploaded”

  1. cthisbear Says:

    Ha! Ha!
    Barry, you are the last of the jokers.
    Good one mate.

    There has been a lot of talk on the forum about the next CE…
    Talking Stick…..that you would not revisit the 3 series.

    I’ll have to call you Sidchrome…..you really have thrown a spanner
    in the works……not even April the First yet!
    Enjoy the trip BK as much as I’m enjoying the laugh.


  2. cthisbear Says:

    Didn’t see this part.

    “What I can do is upload the complete Unleashed tarball that I used to build 3.02alpha1, but I only have two more days broadband access. Right now it’s Friday afternoon, and my broadband access will be until Sunday morning.
    So let me know promptly if you want it. ”

    Trobin wanted it….so can you do the Engelbert Humperdinck, Barry?

    Please “Release Me”

    Again…have a great trip…………….Chris

  3. lobster Says:

    “So let me know promptly if you want it.”

    Want it :)
    Thanks for not forgetting
    Have a great holiday :)

  4. cthisbear Says:

    Booted 3.02alpha1…..smoothe as.
    Seems quick….sees all drives easily….
    Cleaned up XP as usual….NTFS is fine.
    Internet fine.
    Texture of desktop matching our current Sydney weather.


  5. Sage Says:

    Everything I need works! Prefer the muted grey background. The bloat might be ameliorated somewhat with Opera + Claws?

  6. BarryK Says:

    The Unleashed tarball, ‘puppy-unleashed-3.02alpha1.tar.gz’ has been uploaded. It’s about 500MB, expands to about 1.5GB, so a Linux partititon with about 2GB free space is needed. It expands to a directory ‘puppy-unleashed’.

  7. BarryK Says:

    Here are forum threads for providing feedback:


Dingo alpha6 with kernel

January 31st, 2008

I have built Puppy “Dingo” 4.00 alpha6 with the kernel, the same as used in Puppy 3.01. I mean exactly the same, not recompiled. This kernel supports the /dev/hd* notation for IDE drives. Get it from here:


If you had trouble with accessing IDE drives with the alpha6 build with 2.6.24 kernel, give this one ago. There were reports of trouble with wireless drivers with the 2.6.24 kernel, so again try this older kernel.

However, do be very cautious about one thing. As these are both the same version number, be sure that there is no pup_396.sfs or zdrv_396.sfs on the hard drive already — since they will have different kernel drivers in them. When you create a pup_save or do a frugal install, you can have these files on the hard drive, so get rid of them before testing this alternative build.

4 Responses to “Dingo alpha6 with kernel”

  1. Sage Says:

    Thank you, Barry - it works! Reported on Forum.

  2. nic2109 Says:

    Barry; as anticipated, this kernel allows me to create a WPA wireless connection right out of the box - I’m using it for this post!

    Not tried the rest yet of it, but this looks like it could be “The D Bs”.

    Many thanks.


  3. puppyguytoo Says:

    Dear Barry,
    I have ideflash 8G. Can be possible used full ext2/3 like hdd way but build tempfs/unionfs on top of it? Look likes pupmod 3. If it can be done, the /init of cpio file probably have to change a little bit, This way doesn’t need pup_save anymore. Thank you!

  4. charnisingh Says:

    Dear BerryK,

    looked into the second version of dingo-k2.6.21.7, i personally did not find any difference, in fact i like the digo with k-2.6.24 as that is going ahead and not sticking to a place or stepping back.

    i do not think, the problem is with the kernel change but the difficulty is with digo itself as many of us were used to using dot pups and now we find it difficult to have an option to add programs of our choosing.

    it is always better and healthy to move ahead and i like your efforts. instead of stepping back, it is better for somebody to come forward and help and convert some useful pups to pet pkgs. like gconf. which is basic need of gizmo without that gizmo can not be used . there are many such pups which does not a pet pkg, i wish i could have that skill.

    thank you for your efforts to make the puppy best of all.

Puppy “Dingo” alpha6 available

January 30th, 2008

Get it from here:


Read my blog to find out changes since alpha5.

11 Responses to “Puppy “Dingo” alpha6 available”

  1. charnisingh Says:

    just downloaded puppy 4 -396 and upgraded from 4-395 and very happy to inform that all the programes which i added like VLC ,pppoe ,skype, gizmo , mplayer 1.0orc1, gxine 5.11 and firefox 2.00.11 are
    found to be working OK.


  2. nic2109 Says:

    First impressions? Fantastic!

    So far it all “just works”, including two of my “acid tests” : mounting an SD Card in the built-in socket with pmount; and playing a music CD straight from the disk, and the sound is great too even with snd-intel-hda. The hardware info is impressive. Was it there in earlier releases? If so I missed it.

    Issues? No WPA support with iwl3945 as discussed a couple of days ago so it’s back to wired for the time being.

    Observations? The reboot menu option shut-down X, returned to the # prompt and stayed there. A couple of times mouse movements appear to interrupt the sound until (it seems to me) the keyboard is used. Most odd. The maximum resolution under xvesa lacks anything over 1152×864 (which is not new, but is still a shame when the video probing correctly identifies the need for 1440×900). I guess that I’ll have to wait for the ATi drivers to catch up with the new kernel before I can try xorg properly.


  3. nic2109 Says:

    Here’s a clarification of the earlier ‘reboot’ comment. That was after taking the ‘Do not save’ option. The second time, when I DID save to a file, the reboot was initiated as normal.


  4. nohype Says:

    I tried this new alpha 6 and have tested the wpa support for my RT73USB-stick Asus WL-167G. Other than on the 2.6.24-5-generic kernel of Kanotix RC7 there does not seems to be support for WPA/WPA2 encryption. Does alpha 6 really offer the new kernel supported RT73USB driver?


  5. pogo2008 Says:

    On my ancient Compaq Deskpro 192mb ram the Accton EN1207D network card is NO longer detected. Has

    worked without any problems since at least puppy 2.13. That was from pfix=ram. Tried to let it update from

    3.95 to 3.96 still the same problem with network card. Lost the xorg which was working in 3.95??? (1280×1024)

    Have a nice trip.

    Texas Dad

  6. Subito Piano Says:

    Not sure which version to try or the differences. Last night (1/29) i downloaded puppy-3.96-seamonkey.iso from the repository but i could fetch the md5 sum. Today that iso is gone and is replaced by two: puppy-3.96-seamonkey-k2.6.24.iso and puppy-3.96-seamonkey-k2.6.23.12.iso. Should i use the one i downloaded or one of the newly-posted iso’s? It seems the newer kernel was posted yesterday and the older kernel today. What is the difference between the two files? Thanks.

  7. nic2109 Says:

    Subito Piano: if you look in the Forum in the Alpha6 Bugs ‘n Comments thread (towards the bottom of page 1) you will see that Barry has also built a6 with a retro kernel for older kit.

    The cutting-edge latest is k2.6.24 while the retro version is k2.6.23.12, so you can take your pick.

    I hope that helps.


  8. Subito Piano Says:

    Ahhh — thank you for that info. I see Barry also has clarified this nicely today on the blog. Think i’ll start with retro.

  9. charnisingh Says:

    just to report that geany text editor does not work -error -gtk+ version too old.

  10. BarryK Says:

    Geany works fine. You must have somehow overwritten with an older version of GTK.

  11. charnisingh Says:

    you were right about geany it is working fine now, the problem was not with geany, problem was with my handling of dependencies, i added a wrong pkg to meet some dependencies, after you informed that geany is ok i redid the installation keeping in mind the gtk factor. now every pkg work very fine.

    thanks a lot for your efforts. this is the best puppy in look and feel. after you come back you do not have to labor much to bring out puppy 4-dingo next beta or final in fact this version of dingo is as good as final could be .

Gtklogfileviewer, Pcdripper, Pmetatagger, Urlgfe

January 30th, 2008

MU created a handy little utility for displaying a file tail in a window, named gtklogfileview. I have put this into alpha6.

Plinej has updated Pcdripper to v3.4 and Pmetatagger to v1.7. These will be in alpha6.

Muggins has compiled the latest Urlgfe file downloader and created a PET package. I have made this an official PET (not in alpha6 but easily installed).

Battery monitor applet

January 29th, 2008

Kirk has done a great job adapting ‘asapm’, a battery monitor applet, to work in Puppy, especially to fit into the limited height of the JWM tray. Read the forum discussion:


I have modified /etc/rc.d/rc.modules2 and /root/.jwmrc-tray as per Kirk’s supplied files. Note that /root/.jwmrc-tray is in the ‘jwm2-2.0.1′ package.

I have created the ‘asapm-3.1.1′ PET package which has Kirk’s applet, /usr/sbin/asapm.

This is great, as we are embracing these baby laptops, which are all about computing on-the-go. I’m going to find this applet very useful when I tote my Classmate off to India!

Patched 2.6.24 source

January 29th, 2008

I have uploaded the patched 2.6.24 kernel source to here:


This kernel is being used in the upcoming Dingo alpha6.

Another JWM theme

January 29th, 2008

I posted yesterday that I have rewritten the theme handling for JWM and have created just two themes, Original and Citrus-cut. The former is a reasonable match with the original GTK theme, and the latter with the Citrus-cut GTK theme.

I decided to add another JWM theme and chose the dark-grey theme created by forum member ‘vg1′ at the “JWM themes exchange” thread:


I played with the fonts a bit and named it ‘Black-vg’. I also created a dark-grey background image. The Black-vg, dark-grey desktop background and zigbert’s Stardust desktop icons are a good combination. But, I don’t have a really nice matching GTK theme for that combo.

PCMCIA - step forward again

January 28th, 2008

Hey, now it is working! Now “uevents” are occurring.

The pcmciautils package has various utilities, including ‘lspcmcia’ (a symlink to ‘pccardctl’) and ‘pcmcia-socket-startup’. I ran this:

# lspcmcia -vv
Socket 0 Bridge:        [yenta_cardbus]         (bus ID: 0000:0a:09.0)
Configuration:  state: on       ready: no
Available IRQs: 3, 4, 5, 6, 7, 10, 11
Available ioports:      –none–
Available iomem:        0xd0000000 - 0xd00fffff

I reckon that “ready: no” is significant, so I did this:

# pcmcia-socket-startup
# lspcmcia -vv
Socket 0 Bridge:        [yenta_cardbus]         (bus ID: 0000:0a:09.0)
Configuration:  state: on       ready: yes
Voltage: 5.0V Vcc: 5.0V Vpp: 5.0V
Available IRQs: 3, 5, 6, 10, 11
Available ioports:      0×00000100 - 0×000003af
0×000003e0 - 0×000004cf
0×000004d8 - 0×000004ff
0×00000820 - 0×000008ff
0×00000a00 - 0×00000aff
0×00000c00 - 0×00000cff
Available iomem:        0×000c0000 - 0×000fffff
0xd0020000 - 0xd00fffff
Socket 0 Device 0:      [– no driver –]       (bus ID: 0.0)
Configuration:  state: on
Product Name:   Xircom CreditCard Ethernet+Modem II CEM2 1.00
Identification: manf_id: 0×0105 card_id: 0×110a
function: 2 (serial)
prod_id(1): “Xircom” (0×2e3ee845)
prod_id(2): “CreditCard Ethernet+Modem II” (0xeca401bf)
prod_id(3): “CEM2″ (0×72f0d830)
prod_id(4): “1.00″ (0×83dbf271)

Yippee, now we’re cookin’!!!

It says “no driver” above because I have not yet loaded ‘xirc2ps_cs.ko’.

2 Responses to “PCMCIA - step forward again”

  1. BarryK Says:

    I’ve put together a script /etc/init.d/rc.pcmia that runs ‘pcmcia_socket_startup’ and takes care of loading the correct module, for example my ‘xirc2ps.ko’.

    However, there’s a catch-22 situation, as I start with an alias and I don’t have an accurate way of finding the real module to load — my script that I uploaded yesterday is slow and not so accurate. Actually, I think I can make it more accurate, but it’s still too slow.

    # modprobe –show-depends pcmcia:m0013c0000f02fn00pfn00pa0FFC50D8pb06A97DFDpc98C5B1DBpd01DB7106

    for example, supplied with an alias, will return the actual module name, but only after it is fetched from the ‘zdrv’ file. My modprobe script cannot translate that alias to the actual module name as the aliases in ‘modules.alias.2.6.24′ contain multiple wildcards.

    If you know what module is required, say xirc2ps_cs.ko, then just running this once would do the trick:
    # modprobe xirc2ps_cs
    as it would then be fetched from the zdrv file.
    In future, if this is executed:
    # modprobe pcmcia:m0013c0000f02fn00pfn00pa0FFC50D8pb06A97DFDpc98C5B1DBpd01DB7106
    it will work.

    I really need to redesign how the zdrv file works.

  2. BarryK Says:

    I’ve done a temporary fix in /etc/init.d/rc.pcmcia. I got a database file out of the old ‘pcmcia-cs’ package, that matched the manufacturer and product name to the required driver. The card has to be plugged in at bootup for the correct driver to load.

    It’s not perfect but hopefully will give basic PCMCIA functionality. Later I think that I’ll migrate Puppy onto udev and also redesign how the ‘zdrv’ file works to overcome the alias-with-wildcards problem. That will be after Pup 4.00.

PCMCIA - one step forward, one step back

January 28th, 2008

I have started to study udev. With the ‘udevd’ daemon I was able to monitor “uvents” (kernel hotplug events) as I plugged and unplugged a USB drive. I was starting to see the usefulness of this.

Then I plugged in my PCMCIA network card. Nothing. No “uevents”. Hmmm. I then looked at /sys/bus/pcmcia/devices and found that the kernel is not responding at all to plugging and unplugging my PCMCIA card.

The kernel was registering PCMCIA events before so what is different now? The 2.6.24 kernel. I checked the ‘.config’ file, all PCMCIA-related settings are the same as for the kernel. I booted up older test CDs built with 2.6.24-rc4 and 2.6.24-rc8, all no go.

I am pretty sure everything is the same, just different kernels. The ‘.config’ files are almost identical. With the 2.6.24 kernel, PCMCIA seems to be dead on my laptop (Acer Aspire 3681WXMi).

Just when I was thinking how wonderful alpha6 is going to be, this one comes along. Well, I’m just about to go off to bugzilla.kernel.org and see if anyone has reported this problem.

Note, I reported a bug to bugzilla.kernel.org about a week ago, as I found a bug in the configuration selection, and I was somewhat disappointed that it did not get fixed before 2.6.24 came out. I get the feeling that the decision to bring out 2.6.24-final was rather sudden. Perhaps they want wider use to get more bug reports, then they’ll bring out

Firmware updated

January 28th, 2008

The 2.6.24 has new network drivers, replacing third-party drivers.

‘iwlwifi’ has two modules, iwl3945.ko and iwl4965.ko. The ipw3945.ko module is now retired. I have updated the firmware.

‘rt2×00′ has  rt2×00pci.ko, rt2×00usb.ko, rt61pc.ko, rt73usb.ko, rt2400pci.ko, rt2500pci.ko and rt2500usb.ko, replacing rt61.ko, rt73.ko, rt2400.ko, rt2500.ko and rt2570.ko. I have updated the firmware.

The ‘rt2×00′ homepage has this statement:

two days ago, January 24th, Linux Kernel 2.6.24 was released. This is the first mainline kernel that includes (sadly a somewhat buggy) rt2×00 release.


3 Responses to “Firmware updated”

  1. nic2109 Says:

    Barry; I notice that the wifi module iwp3945.ko has been “retired” and replaced with iwl3945.ko. I have reported a couple of times that iwl3945 doesn’t support WPA encryption whereas ipw3945 did. Has this latest change altered that?

    If not, are you aware of any plans to add WPA support for Intel’s 3945* devices? These are widely used in Dell laptops and I imagine that other manufacturers also use them.


  2. BarryK Says:

    I have no idea whether the latest iwl3945 supports WPA. If not, we may have to compile the old driver as well and blacklist the new one.

  3. nic2109 Says:

    Thanks for the speedy response. If you would like me to try it out must I wait for alpha6, or can I try before then?


JWM theme selection rewritten

January 28th, 2008

I was hoping to use only the automatic GTK-to-JWM theme converter, but when I tested on four or five GTK themes, JWM looked awful. So, I realised that choice of custom JWM themes must be retained, however I have totally rewritten that part of the JWM Configuration tool.

The new script is /usr/local/jwmconfig2/theme_switcher, called from the main GUI window in the JWM Config tool. The script scans the contents of /root/.jwm/themes and displays found themes.

Each theme in /root/.jwm/themes consists of 4 files. For example, I created a ‘Citrus-cut’ theme to match the GTK theme,and the files are ‘Citrus-cut-colors’, ‘Citrus-cut-jwmrc’, ‘Citrus-cut-tray.png’ and ‘Citrus-cut-window.png’. They are self-explanatory when you look at them. The two images are thumbnails of the theme and are displayed in the theme_selector GUI window.

It will be very easy for anyone to add more themes. Currently I only have ‘Citrus-cut’ and ‘Original’.

Some extra notes, for anyone wishng to add new themes to Dingo alpha6 (after it is released), is:

  1. the GTK themes are at /usr/share/themes,
  2. sets of desktop icons are at /usr/local/lib/X11/themes,
  3. and desktop background images are at /usr/share/backgrounds

The menu ‘Menu -> Desktop’ has tools for setting all of these individually. There is currently no master-theme setter, but it is pretty easy to play with the individual tools and mix-and-match to suit ones taste.

One Response to “JWM theme selection rewritten”

  1. disciple Says:

    Barry, is there a forum thread or something you are watching for feedback on the Dingo alphas? I can’t see one… do you just want it here?

Pwget file downloader

January 27th, 2008

I tested ‘gCurl’ that is in Dingo alpha5 but it doesn’t seem to work, or at least it didn’t for me. Even if it can be made to work, it should be intuitive.

So, alpha6 will not have gCurl, instead it will have Lobster’s ‘Pwget’. See forum links:


One Response to “Pwget file downloader”

  1. raffy Says:

    Lobster is jumping and surfing on a shelltop. :D Congratulations.

Pbackup, Pburn, Pmetatagger, Pwireless

January 27th, 2008

I have updated these:

Pbackup 3.03 (zigbert)
Pburn 0.9.3 (zigbert)
Pmetatagger 1.4 (plinej)
Pwireless 0.8 (plinej)

I also ugraded Notecase to 1.7.7pre as it has an important bugfix (hyperlinks to URLs did not work). However I don’t have the source and have used a binary compiled by muggins in Puppy 2.16 — works fine in Dingo.

2 Responses to “Pbackup, Pburn, Pmetatagger, Pwireless”

  1. plinej Says:

    I updated Pmetatagger to 1.5 today. It fixes a small bug. Just incase you want to throw that in too.

  2. BarryK Says:

    Okay, I upgraded Pmetatagger to 1.5.

Script to find correct PCMCIA module

January 26th, 2008

The 2.6 kernel has a new system for handling PCMCIA, but Puppy up until and including Puppy3 uses the old “2.4 kernel” system. The old system took care of loading the correct kernel modules.

The are two modules to be concerned about for a PCMCIA card. Firstly, there is the bridge, or interface between the PCI bus and the PCMCIA card, and these modules are easy to determine. An example is yenta_socket.ko.

Some PCMCIA cards require another specialised kernel module. For example, PCMCIA network cards. I have a Ethernet card that requires the xirc2ps_cs.ko module. It is this second group of modules that are more tricky to determine which to load.

The second group was taken care of by the older PCMCIA sytem, but in Dingo I have gone over to the new 2.6 ‘pcmciautils’ system. All Dingo alpha releases so far only load the PCI-PCMCIA bridge driver, not the second one.

I am seriously thinking of moving to udev, which I think will make selecting and loading the second driver easy. But, I need to learn all about udev first and it won’t be in Puppy 4.00. In the meantime I have written a script that hopefully succeeds in determing the appropriate driver to load. Well, it works for my card.

Do you have a PCMCIA network card? Try the attached script, let me know if it guesses right. I have only tested this script in Dingo.

The script is rather slow. I see it as a temporary solution only, but it really should be rewritten in C if I use it in Puppy 4.00.

I have started a forum thread with this script posted to it and for feedback:


4 Responses to “Script to find correct PCMCIA module”

  1. BarryK Says:

    There is some discussion on the forum, however I currently cannot post to the forum. I’ve been trying for a couple of hours. Anyway, I’ll respond to Bill here:

    [quote=”Billcnz”]I tried with my 2 pcmcia network cards:

    1) DSE 10/100 Mbps PC Card (Realtek RTL-8139):
    not detected by script but works in Dingo after loading 8139too module.

    2) Xircom credicard Ethernet IIps:
    not detected by script and still not working in Dingo after manually loading xirc2ps_cs. But automatically detected and working in 3.01 (Muppy008).[/quote]
    That’s strange. I have the same Xircom card and the script does return xirc2ps_cs and the card works. Well, maybe not quite the same - my card is a combo:
    Xircom CreditCard Ethernet+Modem II

    Would you mind doing something in Dingo:
    # lsmod
    — to check that yenta_socket module is loaded, if not, then:
    # modprobe yenta_socket
    # cat /sys/bus/pcmcia/devices/0.0/modalias

    If the card is recognised, the ‘0.0′ directory should exist. If you can return the content of ‘modalias’ that will enable me to work out what is going wrong in your situation.

    Note, in the first example, 8139too is not a PCMCIA-specific driver so the script will not detect it.

  2. BarryK Says:

    From preliminary reading, it seems that the pcmciautils package needs the udev package to handle autoloading of the PCMCIA-specific modules. That’s why I was thinking will have to put in udev.

    It seems also that udev now replaces the hotplug package.

    I always thought of udev as being for autogeneration of the /dev contents and for familiar naming of devices. In fact, just reading the udev intro page makes no mention of it also being used for autoloading of the correct modules, yet that is what it seems to be doing in the situation with pcmciautils.

  3. BarryK Says:

    Hmm, now I have posted to the forum, twice.

  4. RoyW Says:

    udev and devfs - The final word

    by Greg Kroah-Hartman


2.6.24 kernel

January 25th, 2008

Barely two hours after it was announced by Linus, I was downloading it.

I patched it with the usual — loglevel, dpath, squashfs and unionfs.

This kernel has a lot of new wireless drivers, so there is less work for me to compile thrid-party drivers.

I did have a problem as most of the modem drivers would not compile. One problem was missing /usr/include/linux/config.h, which was a deprecated file backabout the 2.6.18 kernel — it doesn’t do any harm to put that in, so I’ll put it into the ‘devx’ file. The problem that caused a whole heap of third-party drivers not to compile is the /usr/src/linux-2.6.24/include/linux/interrupt.h file. There is a missing symbol, ‘SA_SHIRQ’. The initerupt.h file in the kernel states that this is deprecated and will be removed by the end of 2007. Well, I just copied the symbol definition from the interrupt.h file in the2.6.23.12 kerneland inserted into the interrupt.h file in the 2.6.24 kernel. The drivers then compiled ok.

The modem drivers that I successfully compiled: 536, 537, ltmodem, pctel, slmodem, ungrab-winmodem.
The modem driver that I  failed to compile: ess.

The wireless driver that I successfully compiled: madwifi (atheros)
The wirelss driver that I failed to compile: acx

My operation on interrupt.h allowed the 537, ltmodem, pctel, slmodem and sis7019 drivers to compile. However, I don’t yet know whether these drivers will actually work! I’ll test on a Lucent modem, if it works then probably the others are ok.

3 Responses to “2.6.24 kernel”

  1. Inuyasha Says:

    What’s the possibility of created an updated Puppy Linux but with the same kernel as in Puppy Linux 2.11? There have been bug fixes since Puppy Linux 2.11, right?

  2. BarryK Says:

    I don’t recall which kernel 2.11 uses. However, Puppy 2.14 has been revitalised with the latest features plus some more stuff and is now ‘2.14R’ “Revisited”. This is announced on this blog and the forum.

  3. inged Says:

    Hi Barry, sorry to place this in here but I looked at the forum and the blog and I couldn’t find the right place. I would love to see a next updated Puppy before Dingo with dual core and fast boot option included (a 3.02 maybe?). I’m using 3.01 and I like it, I just enjoyed the dual core usage on Dingo Alpha 5, but will take some time to get it closer to my actual configuration, and some time to see the final Dingo. As a Linux newbie those 2 options seem cumbersome to me, but as a Puppy user I would love it. I’m sure I will enjoy the speed increase in my machine with those options included. My guess is that out there are a lot of users that will enjoy it too. Could you consider it? or is there an easer option? like an patch update or something for getting those. Thank you for your time.

Citrus-cut even more cut-down

January 25th, 2008

Dougal reported recently that the ‘Citrus-cut’ GTK theme used in Dingo is noticeably slower on older PCs. I reported that in this blog and suggested that zigbert’s ‘Stardust’ theme could be used as the basis for creating a more cut-down Citrus theme. Okay, I’ve just done it.

Citrus-cut is based on a theme named ‘Citrus’, that I hacked into and made it much smaller. Now, it is hacked yet again and has about the same number of icons as zigbert’s Stardust theme, yet it looks pretty much the same as before. Running ‘du’, the previous Citrus-cut package took up 400KB, now it is 172KB.

I have incremented the version number of the PET package, it is now ‘gtk_theme_citrus_cut-1.1′.

2 Responses to “Citrus-cut even more cut-down”

  1. kirk Says:

    Zigbert’s Stardust theme looks really nice. Guess you really like the orange theme. It does seem to have caused improvements in the theme selection scripts :) Anyway 2.6.24 is out.

  2. hairywill Says:

    I discovered what was causing the background colour problem for the absvolume trayicon. The problem only existed with the citrus theme and is caused, I think, by the fact that it declares a default background image for any widgets that do not specify one. I have overcome this by adding the following to the bottom of gtkrc

    #added by hairywill so that absvolume in tray has correct background
    style “TrayIcon”
    bg_pixmap[NORMAL] = “”
    class “GtkTrayIcon” style “TrayIcon”

    #Widgets that have not been defined yet
    class “GtkWidget” style “glossy-default”


Classmate, Zfind, NTFS swap file

January 24th, 2008

I fixed an issue with installation to a laptop with internal USB Flash storage, that is, the Intel Classmate laptop. It was running in PUPMODE 6, without any tmpfs top layer on the unionfs. I’ve got Puppy installed on my Classmate in what we call a “frugal” installation, where ‘initrd.gz’ and ‘pup_xxx.sfs’ are on the target partition. The partition is ext2 and I chose the full partition to save to.
Anyway, I fixed it so that it comes up in PUPMODE 7, with tmpfs top layer.

Béèm (forum name) reported that Zfind (file search program) crashes in Dingo. I have used it okay, but perhaps it is a question of what type of searches are chosen. Anyway, Dingo also has zigbert’s Pfind and that is very good. I had put Zfind in in addition as I found it to be very simple, but on reconsideration Pfind is also quite easy to use. Therefore Dingo alpha6 will just have Pfind (Zfind is still a PET package though).

Ecomoney (forum name) requested that Puppy should create a swap file in NTFS partitions. When Puppy starts up in PUPMODE 12 (the normal mode when the pup_save file is on the internal fast hard drive) , Puppy will use any swap file found, or if not will create one - except for NTFS. I have removed the NTFS exception. The code for this is in /etc/rc.d/rc.sysinit.

3 Responses to “Classmate, Zfind, NTFS swap file”

  1. Inuyasha Says:

    Hey, Barry. How exactly would a person make, as in make command, a program from an OS, such as Ubuntu on an Intel, and put it on Puppy? I can think of some programs that are really powerful, for scientific usage, and have low memory and RAM requirements. The problem is I don’t know enough about programming in Linux to make something and put it on a different OS. Is that possible with Puppy? How would I import something like that? *the forum is down, btw. And I think reviving your old developer board would have been nice for this kind of question*

  2. Inuyasha Says:

    Also, if you were to suggest using the gcc setup in Puppy, I can agree with that. However, if I suspect I would have to have gcc installed in puppy in order to make something, right? Well, what I want to do is remaster that something, while having it included in Puppy Linux, but I don’t want the gcc to carry over to the remaster, so how could I remaster with the new program (made by gcc), while making sure gcc doesn’t carry over?

  3. BarryK Says:

    There is a single file, named ‘devx_xxx.sfs’ that supplies everything needed to compile C/C++/freeBASIC applications. This is documented at various places on the Puppy web sites.
    Remove the ‘devx_xxx.sfs’ file will remove gcc etc.

JwmConfig, PupDial, PupScan improvements

January 24th, 2008

I added the correct setting of the background color for ‘absvolume’, the volume control in the tray, when the current GTK theme is applied to JWM in the JWM configuration program. ‘absvolume’ does not need the ‘-bg’ parameter in earlier puppies but does in Dingo, probably due to the version of GTK (2.12.1).

Note,  HairyWill (forum name) developed absvolume for Puppy. It is not started in /root/.jwmrc-tray like other applets, instead is started in /root/.xinitrd. Will has a later version, that has an icon that changes with audio status, that I have not yet put into Dingo. The one I have currently just has a static “loudspeaker” icon.

PupDial and PupScan had a small bug. The results-box in both of these apps displays as a monospaced font, however after either of these programs has finished, the monospaced font remains applied to certain dialog boxes and text boxes in other GTK applications. The reason for this is that /etc/gtk-2.0/gtkrc gets altered when PupDial and PupScan startup,but gtkrc was not not getting restored to its prior status, thus affecting all later applications. Fixed.

One Response to “JwmConfig, PupDial, PupScan improvements”

  1. PaulBx1 Says:

    I wonder if these absvolume changes will fix the issue I have seen on bootup, when sometimes the “woof,woof” sounds like it is going to blow my speakers out (Puppy 2.16). Something needs initializing I think.

Raffy has the keys, plus donations

January 23rd, 2008

Forum member raffy now has the master username and password for the servage.net account that hosts puppylinux.org and pupweb.org.

If you have any suggestions about the site, or problems with it, please contact raffy. If you would like to see pupweb.org changed in some way, we are open to suggestions.

Thanks to Chris (cthisbear on the forum) for the donation of fifty Australian dollars. Coming just before I leave, is that for spending money on the trip Chris?

Bob (he hasn’t explicitly given me permission to use his last name, and I don’t know his forum name) has been using Linux for 10 years and now uses Puppy. He just wanted to send me something a bit unusual, a token, to say thanks for the fun he has had. It sure is unusual — he has sent me a “Herkimer diamond”, a double-teminated quartz crystal. Sure looks nice. Here is a web page with info:


4 Responses to “Raffy has the keys, plus donations”

  1. raffy Says:

    Just to clarify, I have the master “key” to the puppylinux.org account, and not the donations. :D

    That’s about the non-PC donation, that is. Allow me to list PC donations sent my way. In 2006, I started receiving low-cost PCs, initially the VIA PC1000 and then the eBox2300. In 2007, pakt and I received the Starbox (based on the AMD Geode GX466, the processor abandoned by OLPC) and later in the year, I received another GX466 with integrated LCD from another Taiwanese manufacturer.

    This has somehow enabled me to help users of these PCs deploying Puppy, as well as popularized the usability of the small form-factor PCs. With prompting from Steven Shiau (of DRBL fame), Barry introduced network-booting to Puppy in 2007, and further helped launch Puppy into the new category of “powerful clients” (in contrast to crippled “thin clients”).

    Lately, Intel’s staff for emerging markets offered to donate Classmate PCs, and I’ve suggested that tempestuous and pakt be given units for testing, as pakt works closely with dougal on 2.14R, and tempestuous has been helping with problems of the increasing number of Intel/eee users in the forum. There’s a good chance I’ll get one, too, which I can use to build and test Puppy for education.

    tombh has volunteered to draft a new set of pages for Puppy, and we would expect to have this up for comments soon - please check the main forum next week.

    Hey Barry, there’s a Puppy in that diamond page: Duffy.

  2. cb88 Says:

    there are no links to puppylinux.ca or pakgfiles on pupweb.org they are very big mirrors and need better publicity

  3. cthisbear Says:

    ” is that for spending money on the trip Chris? ”

    Whatever you wish.
    Enjoy your trip.


  4. BarryK Says:

    Just to clarify one thing, Bob sent me the Herkimer diamond as he read awhile back that I’m interested in fossicking. The “diamond”, being only quartz, probably doesn’t have much monetary value, but is a very interesting item for a “rock hound” to collect.


Freememapplet improved

January 23rd, 2008

The free memory applet used in Dingo is different from that used in other puppies. This one uses the Xlib libraries only, the other uses GTK.

The applet was not displaying the correct size when booted from Flash, now fixed. The package is now ‘freememapplet_xlib-0.1.2′. I’ll upload the source to puptrix.org soon.

Xorg Wizard, special case handling

January 22nd, 2008

Rerwin has been working with various people, fixing the Xorg Wizard to work with some difficult video hardware. He has now added the Trident video BIOS dated 1997 as a special case. See forum thread, discussion with Barrington:


I have added this workaround to the Xorg Wizard.

No progress on OLPC

January 21st, 2008

See my recent blog post about the OLPC that has been donated to me.

After 5 or 6 hours of usage, I still don’t like the Sugar environment. It is slow and to me seems primitive. The argument that it’s for kids not adults is really weak. Kids really need all the same computing environment that adults use.

A reviewer suggested that it is slow due to the extensive use of Python. Maybe. In Puppy Linux we use Bash scripting, but we use it is a “glue language”, meaning that it glues compiled applications and utilities together. We have small GUI applications written in Bash that load and respond quickly as they adhere to this “glue” philosophy. Unfortunately there is a trend to write huge applications in Python, which also use share-library-binding packages also written in Python — result, bloat and slowness.

I have my Developer Key, and I have been following some instructions to boot from USB, and I have got as far as “Loading initial ramdisk…” at which point it hangs.

OFW… I don’t like that either. The reasoning for choosing it is here:

I think it’s a bad move going to Forth. I have a lot of Forth experience, a long time ago, but decided that it is a fundamentally flawed language. I was even a member of the Forth Users Group in the USA, and wrote an article about Forth programming for an Australian computer magazine. Faster? …hah, hah, hah.

Today I saw the Asus EeePC 4G in OfficeWorks here in Australia. What a lovely machine! Selling for AU 488 dollars. It was running and I had a peek at the user interface/environment — really nice — that’s what adults and kids really need. I mean, a nice user interface, all the powerful apps like OpenOffice. Nice keyboard.

Hmmm, yes, that’s a problem — the OLPC keyboard has keys that are designed for Sugar — which is annoying if we want to dump Sugar.

My assessment so far is that OLPC is not going to succeed. Intel will be bringing out a new Classmate soon, which “ups the ante”. With standard BIOS, standard keyboard (and nice keys), uDiskOnChip internal Flash …I don’t know if I am allowed to mention the new specs so won’t. But, basically, the Classmate (and EeePC) is all standard-PC and standard-Linux right through, so wide open for the legions of PC-hardware and Linux developer nerds.

I’m having a grumble in this post. If you like Forth, fine. If you like the Sugar interface, good on you. Maybe you think that my comment about the viability of the OLPC project is off — well maybe. This is just my feeling on it so far, and I may be convinced otherwise as I learn more.

13 Responses to “No progress on OLPC”

  1. raffy Says:

    Getting the early December live CD of the XO software from here:
    I started appreciating Sugar only when I ran it in a 3+ Ghz PC. It was very responsive, though strange, with its wheel type of “task bar”. I could not appreciate it in my 800 mhz Celeron PC even when I increased its RAM to 512 MB just to run the XO live CD.

    The OLPC processor has been upgraded from the Geode GX466 to LX700 because of the “slowness” of its software. At this speed level ( >500 mhz), even mainstream Linuxes (and WinXP!) could be played well in the XO hardware. (Possibly) In this spirit, the youthful Ivan Krstić (OLPC software architect) released a Debian build of Sugar.

    I wonder to what extent people at OLPC cooperates with developers to achieve what you described as the hardware being “wide open for the legions of PC-hardware and Linux developer nerds”. Would a change in BIOS be easy to do (or even essential) to make this happen?

  2. raffy Says:

    Some links…

    Good close-up of the OLPC machine:

    Debate on the security architecture for OLPC:

  3. kirk Says:

    I agree with your assessment about OLPC future. But not for technical reasons. The problem with trying to get governments to sign up for OLPC is it’s lack of support infrastructure. No one wants to buy thousands of machines without having a established parts, repair, and software support system. I though that Intel might bring that to the project, but that didn’t work out. I wouldn’t want to be the guy who works for a small (poor?) country and signs a million dollar contract with an organization that may not be around long or couldn’t support the product when problems arise. The free market seems to do a pretty good job at making computer hardware cheaper. Given time, if there is a demand for computers in poor countries and the technology exists to match the price point, some company will deliver it.

  4. kirk Says:

    Just to clearify, I’m not disagreeing with the assessment of the software, I didn’t know that had problems too.

  5. Subito Piano Says:

    Barry — you are doing a GOOD work SOOO appreciated. I like the idea of getting back to basics and trimming the fat. Quality takes TIME i know; but could you give a hint as to when Dingo will be out in either RC1 or final?

    There’s no need to post this comment on the forum, but maybe you can drop a hint in one of your future posts–?!?!?

    Sorry to seem so anxious, you’ve just got us hooked! ;)

  6. PaulBx1 Says:

    Grumble away Barry.

    I could say something about educrats and design by committee and “the road to Hell is paved with good intentions”, but I’ll refrain. ;-)

    Hope you can get Puppy running on this thing, so kids can dump the dead-end standard OS and have something useful to work with.

  7. BarryK Says:

    Subito Piano,
    It is taking rather a long time to get Dingo to a final release. The main delay right now is I’m waiting on the final release of the 2.6.24 kernel, as it fixes some problems I am having with the kernel. Then there’s my holiday coming up, right through February, during which I will continue to work on Puppy but will not be able to upload the next alpha or beta.

    So, it looks like alpha6 at the beginning of February, then the beta in the second week of March.

    These alphas though, they are highly usable. I use alpha5 every day, and will put alpha6 onto the Classmate for taking to India. If you test alpha6 and reckon it works for you, then probably go for it and use it. I’ll post some cautionary advice about this when I release it.

  8. No1 Says:

    Just curious, what were the flaws in Forth? Were your article on that? Do you know if it’s available anymore?

  9. BarryK Says:

    Flaws in Forth? I was into Forth in the 80s, again for awhile in the 90s. I don’t recall all the reasons. One is speed, it’s inherently slow on conventional CPU achitectures. Charles Moore developed special stack-architecture CPUs that overcame this defficiency, and them some. I even bought an evaluation board with one of his chips. Brilliant stuff, but it has died away. Those chips would have made Forth viable, at least from the speed aspect.

    I recall another problem, managing the stack. Writing sizeable programs, keeping track of what is on the stack is a severe distraction from the actual process of programming. It may seem alright for small applications, but when you tackle bigger jobs it is a constant distracting factor.

    There were lots more things, can’t remember them now.

  10. rrolsbe Says:


    I agree with most of your assessments. Since there are currently around 17,000 potential US and Canada XO owners, hopefully more later, I hope you find the time to port Puppy to the XO. I too looked very closely at the ASUS before delving into the G1G1 XO program. The ASUS has some very good features but the XO has some that are very interesting, at least to me, some are:

    Higher resolution display 800×600 Color, 1200×900 BW, Dual mode sunlight readable, backlight mounted external to display.

    Longer range diversity 802.11a/b/i I am dubious on the wireless mesh mode.

    Lower power usage & potentially very long battery use lifetime.

    Book reader mode.

    No fans required to cool laptop internals.

    Sealed keyboard- I only use the keyboard when I am portable, else I use an external keyboard and mouse.

    Hopefully more durable mechanically.


    I have had my XO for about a month and haven’t spent that much time with it but it seems to have all the power of linux under the hood.

    Most things I have tried with the XO work in a similar way as they do with Puppy on my Compaq laptop. From what I have read, the power management features for the XO should be implemented in later kernels.

    To port Puppy to the XO I was hoping the only major hurtle would be the boot process and the OFW but I am sure there are many others.

    Since the included XO browser is so limited, I installed the Opera browser. For the past month, I have used the XO almost exclusively for all of my Browsing and Email and found it quite usable; however, I am sure Puppy would make it really shine.

    I have successfully used many external devices via USB such as:
    USB-to-Wired 10/100 Ethernet:
    USB-to-PS2 Y-adapter with connected PS2 keyboard/mouse:
    USB keyboards/mice
    USB media card readers:
    USB attached hard drives both laptop and desktop NTFS not supported:
    SSHed into the XO from other computers.

    Bottom line both the ASUS and XO are intriguing and the XO, as you say might die, but some the hardware engineered into the XO is very unique; likewise, the software MIGHT be OK for younger children but is very limited for ADULT usage.

    I hope you can demonstrate to the XO powers to be, that Puppy should have been more seriously considers as the OS for the XO.

    I know, it is totally your choice whether spending time to port Puppy to the XO is worthwhile. But, since you know more about Puppy than anyone else on the Planet, I hope you give at least give it some serious consideration.

    I appreciate your efforts and back it up with monetary donations!
    Thanks for the read time….

  11. BarryK Says:

    Thanks for the feedback. I will, as time allows, keep plugging away with the XO. Yes, I agree the hardware is innovative. I also appreciate the lack of a fan.

  12. raffy Says:

    Sometimes the I/O chip is choosy of USB devices. This is a problem often encountered in booting.

  13. Sage Says:

    The GX, LX (even the NX!) are all x86 architecture? What role does the BIOS perform in making the HW/FW compatible in this case? Would reprogramming, even rewriting it be an option? [Difficult, I understand, but I did meet a guy who specialised in it some years ago.] Or would HW mods be required? As an outsider in this field, I am trying to understand in which department the issues arise - HW/FW/SW? AMD usually have an unrivalled reputation for releasing information.
    I don’t see discussion of the VIA C7 devices in this context? There are now v. low wattage, fanless examples which can use bog std. x86 OSes? Does VIA have any aspirations for Africa?

Fully-empowered Xorg for Dingo

January 21st, 2008

Kirk has gone through the exercise of compiling the raw Dingo packages in T2, and has compiled the complete Xorg package with DRI enabled. I had compiled with DRI disabled, to reduce the size. Kirk has posted his PET packages here:


I have repackaged them as official PETs, named ‘xorg_xorg_full_dri-7.3′ and ‘xorg_xorg_full_dri_DEV-7.3′ (note, I reduced the size of the former by moving all the .la, .a and .so-symlinks to the latter). The former is to be installed in addition to the base Xorg packages, and in some cases overwrites some non-DRI-enabled files. This package also has all the bells and whistles, libraries, plugins, left out of the base Dingo packages. If you want to compile any application against these extra libraries, you will need to install the latter package (as well as the ‘devx’ file).

Network Wizard localised

January 21st, 2008

Mark (’MU’ on the forum) has added language localisation support to the Network Wizard. Rerwin recently added some improvements to the Wizard, that are in Dingo alpha5, announce recently on this blog.

Rerwin and MU have been working together to synchronise integration with localisation support, see forum thread:


I have used MU’s code posted on Jan 13 to upgrade the Wizard, and have created ‘net_setup-3.96-localised’. I have left ‘net_setup-3.96′ (not localised) in the official repository as I am thinking that might be most practical — that is, when I’m hacking on the script, I would work on the non-localised version, which can later be ported to the localised version when appropriate translaters are available. Well, we only have ‘en’ and ‘de’ so far.

Note, MU has localised some other scripts, but that is specifically for Puppy 3.01.

Skipstone web browser

January 20th, 2008

Forum member ‘ttuuxx’ posted a query about Skipstone in the forum:


There is a new version out, 0.9.7. I’ve compiled it for Dingo and made a PET package. It is compiled against the SeaMonkey 1.1.6 libraries. Skipstone itself is quite small, the package uses 444K uncompressed. I wonder how much of SeaMonkey could be removed and Skipstone will still work…

I’m using Skipstone right now. https works, Flash player works. I modified one of the prefs.js files so DejaVu Sans is the default font — this is setup correctly in my PET file.

If you want to try compiling Skipstone yourself, I made some notes, but this of course applies to Dingo:

‘configure’ has to be edited. Comment out, line 1839:

# BK…
# if test -f $mozilla_libs/chrome/comm.jar ; then

# else
#    { { echo “$as_me:$LINENO: error: Cannot find mozilla libs - please use –with-mozilla-libs=path_to_mozilla_libs and specify a path” >&5
# echo “$as_me: error: Cannot find mozilla libs - please use –with-mozilla-libs=path_to_mozilla_libs and specify a path” >&2;}
#   { (exit 1); exit 1; }; }
# fi

# ./configure –prefix=/usr –sysconfdir=/etc –localstatedir=/var –with-mozilla-includes=/usr/include/seamonkey  –with-mozilla-libs=/usr/lib/seamonkey –enable-nls –disable-debug

make fails, have to remove ‘ja.po’, ‘ru.po’, ‘zh_TW.Gig5.po’ from locale directory.

# make
# new2dir make install

My site violated again

January 20th, 2008

Yep, it has happened again. The top-level ‘index.html’ files in my puppylinux.com and goosee.com domains have been hacked into, links inserted. These files are 644 permissions and are static HTML.

Interesting, it seems to have coincided with me enabling comments on this blog, but they were never really turned off, as WordPress does not have a facility to globally turn off comments. Comments were only off for new posts, but I set older posts so that they all had to be approved by the administrator.

So, when I announced yesterday that comments are back on, that was just restoring the default to on for new comments. All comments still have to through the admin for approval.

One thing that is really crappy is that although I have the very latest version of WordPress, spam comments are still able to post without registering. This bug was there before, and it’s a pretty serious one. So, who knows what other big security holes there are!

But, I have to approve all comments, so no spam gets through anymore. So, how has my site been violated this time?

I’ve decided that when I go on holiday, my daughter and her partner will monitor my site. I will give them everything that they need to fix the site, including secure ftp access. I will also endeavour to monitor my site on a daily basis.

One Response to “My site violated again”

  1. raffy Says:

    Yes, the solution seems to be watching one’s own website closely. It seems that crackers have found an easy way to access shared-hosting sites.

    While we’re in this topic, I note that JeyRey and Dan (dvw86) are two youthful and dedicated Puppy enthusiasts who could help in the upkeep of Puppy websites.

JWM Config manager simplified

January 20th, 2008

I had a go at it anyway, not yet tested. I stripped out all the themes and background image and profiling stuff.

Dougal took thoughtjourney’s original ‘gtk2jwm’ script that was in jwmConfigMgr package and rewrote and greatly enhanced it, and renamed it to ’setJWM’ — you’ll find it in Puppy 2.14R (Revisited). What this script does is convert the current GTK2 theme to a matching JWM theme.

So, I thought, yes, that’s much simpler than having separate themes for JWM. ’setJWM’ is now in the JWM Config package, and I named it back to ‘gtk2jwm’. I have created a new package, ‘jwmconfig2-20080120′.

One Response to “JWM Config manager simplified”

  1. BarryK Says:

    Had a break, then another look at what I had done, hacking this package.

    Dougal’s script sets the backgrounds for most components of JWM, but not the tray applets. This was tackled by John Doe, which I announced yesterday, but that was on the “old” jwmconfig package. John created scripts for each theme in /root/.jwm/themes, but now only one copy of that code is required, that I have placed into the new ‘gtk2jwm’ script.

    That’s beautifully written code, John. It handles the background for ‘blinky’ and ‘xload’.

The future: managing the Puppy project

January 19th, 2008

A couple of people have recently approached me with ideas about how the project could be managed in the future.

I’m going to reflect on it while on holiday, and won’t make any premature statements here.

But, I would like to see the various efforts that are going on, like 2.14R and muppy, getting a bit more “frontal exposure”. Some of these can be presented as on-going official puppies, not just off-shoots. I was even thinking of handing over the “keys” of puppylinux.org to a small group — that is, the master username and password. One great thing is that puppylinux.org hosting is paid-up until 2012.

One question that arose recently about Dingo not having some things, like murgaLua, Tcl/Tk. I’m building a “lean and mean” new distro, but it can be seen as a starting point. There’s no reason why anything cannot be added. Just about every PET or PUP package from earlier puppies works. Quite likely, by the time Slackware 13/14 gets released, it’s package versions will be on a par with what Dingo is now, so there should be reasonable compatibility there to.

I’m thinking that over my holiday I’ll work on improving PETget, my package manager. One planned feature is support of more repositories, not just my official one at ibiblio. Support for a repository on CD too. Categorising the packages into groups would be nice also.

9 Responses to “The future: managing the Puppy project”

  1. raffy Says:

    Am glad comments are again possible here, as am planning to contact you about control panel access to the puppylinux.org site. It may be time to try this, as any http/ordinary access to admin functions is not possible even if I disable the /user site. There is a now a queue of wikka registrations - I used to do this using quick http access, but now it would need https (control panel). I also wanted to do a regular site backup.

    BTW, feel free to choose people for overseeing this site from scratch. :)

  2. BarryK Says:

    I wonder how they manage the master password in other cooperative open source projects? If I give the password to a small group, then anyone in that group has the power to change the password and lock everyone else out. The problem with any group is there can be a falling out, and someone could decide to take over.
    Of course, if I retain registration of the domain name, there can be an appeal to me and emergency actual taken, like moving the domain elsewhere.

  3. cthisbear Says:

    ” The problem with any group is there can be a falling out, and someone could decide to take over. ”

    Too true.
    At least with the benevolent dictator thing…we all know the pecking order.

    Happy holiday in India. Relax…enjoy the moments.
    I think that a Classmate has just been released there.


  4. Sage Says:

    Sounds like you need a master/administrator P/W so that if/when things go bad you can step in with yon riot acts.

  5. lobster Says:

    I would suggest raffy being given ‘keys’
    as he has proven supportive, good willed
    and has already limited keys which
    he has used well

    So you could give him the keys for the duration
    of the holidays
    Other people I would recommend if they are interested
    are Warren (WhoDo)
    (even though a relative newcomer) for his continuing support
    with Ezpup and Mark Ulrich.
    GuestToo is still around (with a different name)
    but would probably decline

    These people are cool tempered
    and reliable Puppy supporters
    and might be a little reluctant
    but that is a good sign . . .

    The problem with some people
    (me for example) is they are not stable, reliable
    or mature enough - or just not interested.
    However I might just be OK in a group situation

    I would stay away from people who want to
    ‘run’ Puppy.

  6. cb88 Says:

    hmm I don’t know of anybody that would want to “run” puppy there are crackers and that is about puppy’s biggest enemy. There are people who don’t like how things are done somtimes but I don’t think they are the Hostile take over type….teh wiki and forum are good evidence of puppy’s good following

    I would advocate better support of open formats in puppy such as ogg and flac I need to convert my older music to .ogg or flac and haven’t been able to do so with ffmpeg …(the options are wierd)

  7. linuxcbon Says:

    Dingo is clearly the future of puppy ;-). Correcting bugs takes time, but it is really worth it.
    For faster puppy, take a look at : http://murga-linux.com/puppy/viewtopic.php?t=25237

    Converting to ogg would be :
    ffmpeg -i input.wav output.ogg
    ffmpeg -i input.mp3 output.ogg

  8. MarkUlrich Says:

    I would prefer not to become admin.
    Besides my own accounts I also look at the canadian mirror of Caneri, and already for that I often do not have enough time.
    I think we should give this honour to guys, who do less coding, and so might have more free resources :)

    Quote: “I would like to see the various efforts that are going on, like 2.14R and muppy, getting a bit more “frontal exposure”.”

    Well, Muppy was just released on the DVD of a german Computer print-magazine.
    Not a Linux-mag as usual, but one with main focus on windows, that sometimes also informs about current Linux developments.

    I think, also Linux User soon will add it to a CD, as they already had 4 longer articles about Puppy and Grafpup, and were excited, but claimed the missing localization.

    So I think that it is not an utopic prediction, that Muppy may become a quite popular system here, now that we can assure constant support by my job.

    In international terms - we must see.
    I hope that my build-system will convince people to be usefull, as it simplifies long term development better that building an iso from a remaster.

    So I think concentrating on further development and fixes (that go back to Puppy of course whenever wanted) will be a good way for “frontal exposure”, or maybe “permanent presence” :-)

    Just some thoughts so far…
    Barry, I really hope, you enjoy your trip to india.
    I’m also a bit “selfish” I must admit - this gives me more time to concentrate to enhance the existing base (301), without having the feeling to work on something “outdated”, because Puppy 5 already soon might be announced ;-)

    Have a good time there!

  9. kirk Says:

    I’m not sure a small and efficient distro can be built by committee. The benevolent dictator model seems lend it self to that quite well, unless the dictator gets burned out. I suspect you’ll miss it after a couple of months. The T2 build for Puppy4, while difficult, should be current for at least a year. Perhaps a once a year development cycle would make it less like work. And have community projects in between. Have a good holiday!

JWM config further refined

January 19th, 2008

John Doe has added some refinements to his earlier work on the ‘jwmconfig’ package:


I have named this package ‘jwmconfig-18jan08′.

John also discovered the /root/Startup directory. This is something that forum member ‘andrei’ suggested awhile back. It is code in /usr/sbin/delayedrun that will execute anything in /root/Startup. I modified that code so it will only execute files with the excute-flag set, and I followed John’s suggestion and created a README file, with this in it:

Any executable or scripts (or symlink to) placed in this directory
will be executed after the X desktop has loaded.

This is handy if you want something to run automatically.

You can easily create a “symlink” (symbolic link) to an executable.
For example, say that you wanted to run /usr/local/bin/rubix (a game)
everytime Puppy is started. Use ROX-Filer (the file manager) and open
two windows, one on /usr/local/bin, the other on /root/Startup.
Then just drag ‘rubix’ across and a menu will popup and ask if you want
to copy, move or link, and you choose to link.

Note, if you want to execute something at bootup and prior to X desktop
loading, edit /etc/rc.d/rc.local.

One Response to “JWM config further refined”

  1. cb88 Says:

    Barry how about the jwm theme setter in 2.14R it generates the theme from the current GTK theme…

    also 2.14 has integrated tlc/tk themeing to match the GTK theme

    not sure about QT themeing

    personally I like to set a custon JWM theme but the way 2.14R works is quick and easy

    a menu refresh button like in 2.14R is also needed petget often fails to refresh

Citrus theme slow

January 19th, 2008

Dougal has reported that the Citrus theme used in Dingo alphas is slow. He reports that it is noticeable on older slower PCs.

The Citrus theme does have a rather large ‘gtkrc’ file and lots of graphics that have to be stretched to render in the windows. The accumulation must be slowing things down.

I think that Zigbert’s Stardust theme is compact and fast, while still havng the nice bitmap 3D buttons and highlighting. So, I suppose we could in theory just take Zigbert’s theme and change the colors and voila, we have Citrus?!

Anyone with an interest in GTK themes want to have a go at doing that?

Note, in Dingo, the GTK themes are to be found at /usr/share/themes, and Dingo has a GTK theme-switcher named ‘Chtheme’, which simply edits /root/.gtkrc-2.0 to use the chosen theme.

It’s interesting, Dingo testers are divided into those who like the Citrus theme and those who don’t — it doesn’t seem to invoke a neutral response. Probably those against are in the majority. Well, I wanted a bold statement for the first release of Dingo, and it is undeniably that. I think it looks good on the baby laptops, perhaps a bit overwhelming on big screens.

For feedback, please go to the ‘alpha5′ forum thread:

Network file-sharing using FTP

January 19th, 2008

Kirk has devised a network file-sharing system that will be great between Puppy computers. The other approach that we are supporting in Puppy is using Samba, which is particularly suited to sharing with Windows computers. Kirk’s file-sharing uses Curl, pure-ftpd, mpscan and curlftpfs.

Kirk has upgraded Curl from version 7.16.3 to 7.17.1, as the former did not work quite right with the curlftpfs package.

Kirk has fixed a bug in the pure-ftpd package. I have fixed this and the PET package is now ‘pure_ftpd-1.0.22-1′.

Kirk has compiled curlftpfs and mpscan for Dingo. These are very small utilities. More info on these utilities here:

Kirk’s file-sharing package is introduced here:

I have made this into an official PET package and it will be in the next release of Dingo. I renamed the PET package to ‘file_sharing-curlftpfs-mpscan-0.1-0.9.1-0.1.0′ to show that it has other packages in it. Kirk has designed it to work from Rox, by clicking on /root/File-Sharing, however I thought why not make a menu entry also, so I did …untested.

OLPC donation received

January 18th, 2008

I would like to thank Mike (’mdd’ in the Puppy Forum) for sending me a OLPC XO laptop to get Puppy running on it. That is extremely generous, as Mike purchased it then sent it to me — actually, he bought 3, or was that 6 due to the buy-2 plan?. I have the green one:

Here is the forum thread where Mike and others have been discussing the OLPC. It is interesting to read of Mike’s kid’s reactions to the OLPC and Classmate:

I received it a few days ago, and so far have only played with it for about 15 minutes. Interesting, I too was underwhelmed by the Sugar interface (of course, 15 minutes is hardly an indepth evaluation). Yeah, I reckon Puppy would be nice on it, but I’m not so sure how far I’ll get before my holiday, may have to get stuck into it upon return.

Here are some more forum threads on the OLPC:

3 Responses to “OLPC donation received”

  1. BarryK Says:

    Ok, first step is to get a Developer Key (this puts me off already):

    I’m away from home right now, don’t have wifi access, well, unless I can find an open wifi point somewhere. As soon as I get home, in a couple of days, I’ll apply for one.

  2. BarryK Says:

    Here is some discussion on the OLPC forum about booting Puppy:
    …they ain’t there yet.

  3. BarryK Says:

    Well, well, I’m at my relative’s place in the big city (Perth) and I fired up the XO on the offchance that it might find an open wifi network — and it did. The Neighbourhood view showed 4 or 5 circles, one of them was labelled “NETWARE” — I clicked on it and I was online!

    Iwas able to apply for my Developer Key — it will be ready tomorrow. Also I have logged into my blog.

    Gee, I already hate this keyboard. It’s not the size so much, it’s the squishyness of them. The Classmate keys are more conventional hard keys with a definite click action.

2.6.24-rc8 kernel for testing

January 17th, 2008

I have built Puppy Dingo with the 2.6.24-rc8 kernel, for restricted testing.

One thing I’m pleased about. The kernel has a problem with /sys and /proc not getting updated when partitions in a USB drive were changed. For example, if I used GParted to change a partition from vfat to ext2, the information in /sys and /proc did not change to reflect this. Even accessing the partition in some way, like using ‘dd’ to read bytes from it, did not stimulate the kernel to update /sys and /proc. This problem has gone away with this new kernel.

What I need to know, is does this new kernel still have a problem with shutting down on some hardware, as was reported for Dingo alpha4 and alpha5. I think the EeePC was one example. Could testers who had that problem, please grab the iso that I have uploaded and see if it shuts down? The iso file is ‘puppy-3.95-k2.6.24-rc8-TEMPORARY.iso and it is here:


Please be sure to boot from CD with ‘puppy pfix=ram’ so Puppy won’t find any other ‘zdrv_395.sfs’ that may be on the computer somewhere. Of course you can boot from a USB pen drive, but be sure to get rid of any pup_save.2fs file.

Some people don’t know that to extract files from an iso file, to place in a USB pen drive for example, you don’t have to burn it to CD first, nor do you have to use Isomaster. In a Rox window, just click on it.

This iso is for limited testing as described above, everyone else please ignore it. The build has some modules missing.

As comments are still turned off for this blog, provide feedback to the alpha5 thread in the forum:


Pmount fixed, full hd installation

January 17th, 2008

A little while ago - Jan 5th I think - I fixed a problem with a USB drive getting mounted with Pmount, but the Rox window showing the content of the mount of the previous USB drive. The solution was to open a Rox window with the ‘-x’ option to cause Rox to rescan the directory.

Today I fixed another problem. In a full hard-drive installation of Puppy, the ‘mount’ command (without any parameters) returns ‘rootfs on / type rootfs (rw)’ even though there is a Linux partition mounted on ‘/’. The ‘df’ command however returns the correct information. I have fixed this, so that Pmount now shows the correct partition that is mounted.

JWM theme-setter improved

January 16th, 2008

John Doe has improved the JWM-config tool. When changing themes, not all colors in the taskbar change from the default, which John has fixed.

This is the forum thread where John Doe has posted the fix:

This fix affects two packages, ‘jwmconfig-4nov07′ and ‘jwm2-2.0.1′. In the latter case, I edited /etc/xdg/templates/_root_.jwmrc, as this is the template file from which /root/.jwmrc is generated.

I have renamed these packages to ‘jwmconfig-16jan08′ and ‘jwm2-2.0.1-1′ and have uploaded them to ibiblio:

John commented that the background-setting is not changing when a JWM theme is changed, but I’m thinking that perhaps we should leave that out? Perhaps changing the JWM theme should be just that, the JWM theme. Dingo has a separate tool for setting the background image.

That leaves the tray applet backgrounds…

Glade now in ‘devx’ file

January 16th, 2008

I reported earlier that Glade, the GTK GUI-builder, version 3.4.x, was unable to find its own icons. I experimented a bit more, and found that by moving its icons from /usr/share/glade3/pixmaps/hicolor (where ‘make install’ had placed them) to /usr/share/icons/hicolor, the ‘glade-3′ application was suddenly able to find them.

I found also that I had to install ‘hicolor-icon-theme-0.10′ which is only an empty directory hierarchy, although it does also install /usr/share/icons/hicolor/index.theme, which may be a needed file — it’s just a text file that lists all the directories under ‘hicolor’, plus a bit of other information. Just moving the icons as described above wasn’t enough for Glade to see them.

So, Glade version 3.4.1 is now in the ‘devx’ file.

Getting PCMCIA to work in Dingo

January 15th, 2008

There is feedback for alpha5 that booting from a PCMCIA CD drive does not work. That would be because the initial ramdisk currently does not have the ‘yenta-socket’ driver.

Dingo has changed to the ‘pcmciautils’ package, whereas earlier puppies used the ‘cardmgr’ package. The former is the intended successor for the 2.6 kernel.

I’m testing on my laptop. I’ve got a Xircom  “CreditCard Ethernet+Modem II” card. This has both a modem and an Ethernet interface, and I’m testing only the Ethernet component for now.

Running Puppy 3.01, the Ethernet interface is automatically recognised and the ‘xirc2ps_cs’ kernel module automatically loaded. It worked right away.

Running Dingo alpha5, I can see in /var/log/messages that the network interface got recognised, but the kernel module didn’t get loaded. I manually loaded ‘xirc2ps_cs’ and I was in business.

That’s the problem. The new pcmciautils system takes care of loading the core driver, for example ‘yenta-socket’, but not any required driver for the actual card, such as a network module. So, what to do? Puppy does not have UDEV, just hotplug.

The ‘pcmciautils-014′ package is online at ibiblio, if anyone wants to see what’s in it. It has a startup script at /etc/init.d and firmware at /lib/firmware. If anyone would like to comment on this, as I still have comments turned off, kindly respond to the alpha5 forum thread:


Full HD install fixed

January 15th, 2008

I have fixed the full hard drive install for Dingo.

I did quite a lot of work on the Universal Installer, mostly tidying up dialog boxes and choices.

I added a choice whether to install/reinstall GRUB or just update an existing installation of GRUB.

There is a new problem with GRUB, as ‘fdisk -l’ may no longer be used to calculate the ‘hdx,x’ drive numbers for GRUB in a system with mixed IDE and SATA hard drives. It worked before, but now due to the IDE drives having /dev/sd* notation, ‘fdisk -l’ may “see” a SATA drive first, whereas GRUB at bootup will “see” a IDE drive first. I have put in a warning about this, with suggestion how to (manually) fix it.

I did a full install on a mixed IDE/SATA system, and had to change ‘hd1,0′ to ‘hd0,0′ in menu.lst, then it booted fine.

Except for that endless looping problem. I fixed that too.

Well, so far I have tested Dingo on 8 different PCs, and the IDE drives are recognised perfectly in all of them. ‘cfdisk’ works too. This is in reply to reports from sage.


January 13th, 2008

This morning when I visited my blog, at www.puppylinux.com/blog/, I got redirected to another site. Also, the CPU became very busy, quickly making the mouse and keyboard unresponsive. I managed to kill SeaMonkey.

I FTP’d to my blog and found that ‘index.php’ and ‘wp-blog-header.php’ have been changed. I restored them to the originals. I have also turned off comments to this blog.

This is serious. How could anyone change those files? Is this yet another security flaw in WordPress?

The security breach is being discussed here:

Some sources uploaded to puptrix

January 12th, 2008

I have updated one of our source repositories somewhat. This is provided courtesy of Ted Dog and is mostly for hosting source packages that aren’t hosted elsewhere, such as those created by Puppy-developers or some packages especially patched for Puppy.


Official Dingo PET packages updated at ibiblio.org

January 12th, 2008

The official PET packages used to build Dingo alpha5 have been uploaded to:


Rerwin requested the latest Network Wizard package, and that is also uploaded, it is ‘net_setup-3.96′.

‘devx’ now has FreeBASIC

January 12th, 2008

FreeBASIC compiler is in earlier puppies but not in the Dingo ‘devx’ file. So, I have put it in, version 0.18.3b. Here is an extract from my updated “HOWTO program” page:

If you want the simplicity of Basic and the efficiency of a compiler, then take a look at FreeBASIC. Unlike some other free compilers (such as FreePascal), FreeBASIC generates very small executables, on a par with those generated by C programming. You can also use all the shared libraries in Puppy, including the GTK libraries — and the the FreeBASIC package includes all the GTK tutorial examples taken from the online tutorial at www.gtk.org.

FreeBASIC is available in the ‘devx’ module, so install that as described above, and you’re in business!

After installing the ‘devx’ module, the FreeBASIC examples are to be found at /usr/share/doc/freebasic. Binaries and include files are to be found in /usr/share/freebasic. The compiler ‘fbc’ is in the path at /usr/bin/fbc.

All documentation for FreeBASIC is to be found online at: http://freebasic.net/, however the ‘devx’ module also has it as the User Manual as a CHM file (Microsoft Help format) and recent releases of Puppy have ‘ChmSee’, a reader for this file-format. The CHM help file is to be found at /usr/share/doc/freebasic.

The best editor for writing FreeBASIC programs is Geany (the default text editor in Puppy), as it has color syntax highlighting.

FreeBASIC can also use Glade XML files. There is an application ‘glade2bas’ that will generate a skeleton FreeBASIC application for a particular Glade XML file. A HOWTO is at /usr/share/doc/freebasic/howto_glade_freebasic.pdf. This is all provided in the ‘devx’ file.

Note however, that Glade is not yet in the Dingo devx file. The 3.4.x versions have a showstopper bug and I have emailed the developers. The bug is that the ‘glade-3′ application cannot find its own icons. I tested v3.2.2 but that –and this is odd indeed– lacks the facility to manually drag and resize widgets with the mouse , which is the mainstay of any GUI builder. I’ll put Glade in as soon as they fix it.

A comment: what really causes me extra frustration with Glade is that back in the 90’s I used MS Windows GUI-builder tools, so I have those to compare with. They just worked, intuitive, no hassles, no bugs even, or none that I noticed. They also created a highly efficient compiled resource file, miles faster than the XML system.

3 Responses to “‘devx’ now has FreeBASIC”

  1. cb88 Says:

    hey barry how about gcj so we can compile java to binaries… since 2.14 still has considerable interest prehaps someone could compile it for 2.14 as well as 3.00 and 4.00

    the main reason i ask is i have a java class this semester…. gonna try a slackpackage latter not sure it will work well though

  2. disciple Says:

    Off topic again, but there is another version of pmetatagger out that fixes a major bug.

  3. MarkUlrich Says:

    I just downloaded freebasic - darn, I’m really impressed about the Gtk-integration.

(c) Copyright Barry Kauler 2008, all rights reserved. http://puppylinux.com/