Puppy developer news:
Puppy Linux has featured as the top cover-CD item in the Nov/Dec 2003 issue of FreeX, a German-language Linux/Unix/BSD bi-monthly journal. Due to lead-time to publishing, it's Puppy version 0.6, but they loved it. Here's a snapshot:
The next release of Puppy will include the tulip.o module and support the ESS Solo1 PCI sound card (esssolo1.o module).
Bug report! Sneaky little blighters... I found that if you have a serial mouse, it works the first time you start X, but next time you boot Puppy the selection is forgotten and it reverts to a PS/2 mouse. I fixed it, for the next release. If this is a problem for you right now, it is simple to fix -- a quick hack is to add a couple of lines at the bottom of /etc/rc.d/rc.local0:
rm -f /dev/mouse
ln -s /dev/ttyS0 /dev/mouse
Where ttyS0 is the same as "com1" in the Windows/DOS world. Or choose whatever other com port applies.
Hey, I've installed Puppy on a IDE/ATAPI Zip drive. Very simple, I just
hacked the USB install script a little bit, and found that the kernel needs
to load the ide-floppy.o module to recognise the Zip partition. A
complication is that Antonio's libhardware partition probing software doesn't
recognise a Zip drive partition, so I will have to work around that.
...there are some guys hanging out for zippy-Puppy ...how about I deliver a New Year Eve pressy?
Alexandro Colorado has had a go at some artwork for Puppy:
One day we might settle on a new official logo for Puppy. If you want to see the actual real-live Puppy, the mascot for Puppy Linux: http: www.goosee.com/puppy/amy
Puppy version 0.7.9 is uploaded. The ISO file is 44.2M. Release notes:
- This version is still "Redhat based", meaning that Puppy requires a i686 class of CPU minimum.
- Minimum RAM requirement is 128M, except for the new lo-RAM USB installation.
- There is now a script that makes it very easy to install Puppy on a USB memory device, such as a Flash card. Furthermore, the script has an option of a lo-RAM installation, which will work on PCs with much less than 128M -- a minimum has not yet been tested. This script is in the "Utilities" menu.
- The remaster-CD script has been updated and generally fixed up. It is also found in the "Utilities" menu.
- This version does not have TCC. Nor CUPS/XPP/pt-print.
- The live-CD bootup may not have automatically recognised any USB memory devices. If you need to mount a USB memory such as a Flash card, first type at the command prompt "modprobe usb-storage" -- then the Puppy Hardware Probe should recognise the card. Note that the USB-installation script loads this driver module automatically.
I am developing a new version of Puppy that will run on a i486 CPU, however that has hit a snag -- Gnotepad crashes whenever text is pasted from the clipboard. So, that branch is on hold for now.
Puppy has the Mtools package, but not as yet the documentation. I had to throw in the Mtools applications as they are required by Syslinux, which in turn is required by the USB-installation script. Mtools is a bunch of DOS-equivalent utilities.
You guys who want to install Puppy on a Flash card will be very pleased
with this new script. Puppy normally loads the entire filesystem into ramdisk
at bootup, however the lo-RAM option leaves the bulk of the files behind on
the Flash card, in the form of a read-only compressed filesystem. Normal
bootup from Flash takes forever, but the lo-RAM installation boots much much
faster, since there is less to load into ramdisk, however, applications are
slower to start, as they have to be fetched off the Flash card. The
operational slowdown is only slight, except for some apps -- normally Mozilla
takes about 3 seconds to load on my 1.2GHz Celeron system, but 13 seconds for
the lo-RAM installation. Once loaded though, Moz performs as normal.
So, I guess, only choose the lo-RAM option if you have to, or you get too frustrated with the slow bootup, or you just want to try it!
Note, Puppy will use 45M, and I recommend a 128M Flash card so that you have a decent amount of space for personal data.
I've installed Roaring Penguin PPPOE (PPP over Ethernet), however not the GUI frontend as it requires TCL/TK. The rest of the package is installed though, including a variety of Bash scripts. I've haven't had time to do anything with it yet.
I'm working on the script for installing Puppy to a USB memory device, and extending it to work on PCs with as little as 32M RAM. I don't know though, any PC that has a USB interface is not going to be very old, and I think will have more RAM than that. Anyway, if you do have a PC with USB and less than 128M RAM, Puppy will be able to boot up on it. Getting the bugs out of the script right now.
I'll try to upload Puppy v0.8.0 before Xmas Eve.
Rebuilding of Puppy on Slackware is progressing!
As requested, I have now included TCC (Tiny C Compiler). Puppy is not intended as a development environment, but TCC is such a work of art, so tiny, I can't resist it. So far, the only header (include) files in Puppy are those provided by TCC. There is also a static library, /usr/lib/libtcc.a. Whatever was in the package, I have placed in Puppy, but haven't had time to test anything. The documentation is in the usual place for all docs in Puppy, via the "Start" button then "Help".
I have written a script to make it very easy to install Puppy onto a USB
memory device. Again, this is in response to requests on the Puppy Discussion
Forum. Windows 2000/XP users in particular have problems with installing
Puppy on a USB Flash card. Now, you will not need Windows at all -- just boot
up from the Puppy live-CD and the script can be selected from the "Utilities"
menu. It takes you through easy steps to creating a USB memory device with
One thing that I cannot help you with is if your PC won't boot from USB memory devices. Note, if the PCs BIOS does have a selection to boot from USB, but it doesn't work, the problem may be the type of USB memory. If you have a choice, I suggest buy a CF (Compact Flash) card (and reader -- avoid a multi-card reader as that may confuse the BIOS -- as I found out), as it has an in-built hard-drive controller chip and most closely behaves like a hard drive. The CF card also has built-in "wear leveling" -- Flash technology has a limitation in that each storage bit can only be written-to so many times, then kappute, but the CF card moves the storage locations around so that a memory address that is written to frequently is moved to different physical memory cells in the CF card -- that alone makes the CF card a top choice!
There will be a bit more delay before the next version is released. The
reason is that I have made the move to Slackware 9.1, and am in the process
of recompiling all the applications. The main reason for doing this is that
Slackware is designed for a 486 CPU, so it is a convenient host to compile
Puppy. I was surprised to find that Puppy has over 100 packages, and it is a
long hard slog to work through them all -- recompiling on a new distribution
brings with it new difficulties.
Note that it is not just a matter of grabbing Slackware packages and putting them into Puppy -- this would make Puppy the size of other distributions. No, Puppy is constructed file by file, and there is not yet a big script to automate this, though I'm writing bits of script and hope to have a complete script one day. Also, each application has to be compiled from source to meet Puppy's particular needs.
Anyway, it's coming along well, and v0.8 will be the basis for a Puppy that will work on older PCs, right down to a 486 with 32M RAM.
A note on printing -- at this stage it's up in the air -- dunno what I'll end up using. CUPS is not quite satisfactory right now.
I am again attempting to get printing working, and this time partial success... I took out PDQ, as I couldn't get it working, and installed CUPS, Xpp and pt-print. CUPS is an integrated solution to printing for Unix, and is an acronym meaning Common Unix Printing System. Xpp is a GUI for printing a file, and pt-print is a GUI queue manager for cupsd.
The problem is that CUPS is designed to work with ESP Ghostscript, whereas Puppy has AFPL Ghostscript. There is a patch available to get AFPL v8.11 to work with CUPS, but I was unable to apply the patch correctly. I was also unable to compile ESP Ghostscript. So, I'm stuck for now ...I'm thinking that the next version of AFPL Ghostscript may solve my problem, or I will find out how to apply the patch correctly.
I can open a postscript document in GSview and print it ok on my old testbed, a parallel-port HP DeskJet.
Puppy now has Xwhois, to query a NIC domain name database.
I have updated Amaya from version 8.1 to the latest, v8.2.
I've installed SANE-backends, which is a package of drivers for scanners. I have also installed Xsane, a GUI application with many bells and whistles for acquiring images from scanners. So far I have tested it on my parallel-port CanoScan scanner, not yet tested on a USB or SCSI scanner.
I started to write a "Scanner Wizard" but it's incomplete as I need to get hold of a USB scanner for testing. Also, I got error messages when I ran Xsane on Puppy, and found that Xsane tries to create files in /tmp with filenames that are too long for the minix filesystem (limit 24 characters) -- the time has come to leave minix! I have now made "/" into an ext2 filesystem. So, the filesystem in the ramdisk, on "/", is now ext2. Note that the filesystem on /usr is still cramfs.
I've installed a neat game called Rubix, which is a Rubik's cube game.
Puppy now has ripperX, which is a very nice GUI application that can "rip" songs off an audio CD and save them as WAV or MP3 files. Also installed is lame, which is a console application that converts WAV files to MP3. I also installed CDparanoia, a CD audio library. Both lame and CDparanoia are used by ripperX.
I have installed gawk (awk), a pattern matching utility program.
Bug report! D**n, I have just discovered that the "usb-storage.o" driver module is missing from Puppy. Puppy loads this during bootup, and it enables access to USB memory devices such as Flash memory. This bug probably occurred in version 0.7.6, and was because I wrote a big script to automate module building. I have fixed this for the next release, but for now if you want to investigate installing Puppy on a Flash card, hold off for awhile (Puppy will probably boot off the card ok, but it won't mount on /root).
Adrian Basescu has given me some feedback about 3Com ethernet cards. Thanks for that. Most 3Com cards should be supported in the next release. There is a slight problem with the 3Com 3c905B and 3c905C chips, as the 2.4.18 kernel doesn't have a driver that works with them (the 3c59x.o driver is apparently faulty with these chips), however I specified the "ne2k_pci.o" driver, which is generic -- dunno if it will work, we'll see.
Thanks also to Andy Meigs, who helped me find a driver for a National Semiconductor ethernet card.
Puppy live-CD version 0.7.8 uploaded. The ISO is now 41M, and has the "kitchen sink" in it, including Mozilla web browser and Scribus desktop publishing. Release notes:
- To run Puppy, just burn the cd-puppy.iso to CD and boot up your PC from the CD. That's it, Puppy will run and if all is well you will be in a graphical environment with sound, etc., all automatically detected.
- Your PC must have a minimum of 128M RAM. Maybe Puppy will work in a bit less, such as 96M (hint: reduce shared video RAM to a minimum, in BIOS setup, say 4M). The CPU must be a 686 Pentium II class minimum (I have tried a Cyrix 6x86, that works).
- If bootup went smoothly, Puppy should have created a 128M file (named "pup078") on your hard drive, mounted on /root as an ext2 filesystem, so you can be off an running using Puppy without having to do any further installation. If your PC does not have a vfat, ext2/3, or reiserfs partition, Puppy will be unable to create this file -- Puppy currently cannot use a ntfs partition.
- This version of Puppy runs in a 48M ramdisk. Yes, Mozilla, Scribus, everything, the entire filesystem, is in the ramdisk, so no application has to ever be loaded off the hard drive. This means speed, speed, speed! (also, you can remove the CD after booting Puppy)
Note: I plan to design Puppy to run on PCs with very little RAM, as little as 32M. I'm reluctant to predict anything, as this is basically a fun project and I follow whims, but roughly this is what to expect in the next release. Plus, I plan to look into networking a little more, especially pppoe.
In response to queries on the discussion forum, I'm currently
investigating PPTP and VPN.
I have installed pptp, which is a PPTP client program. I have also installed Gadsl, which is a GUI for ADSL Internet providers that use PPTP ...untested. I don't think the Linux kernel as used in Puppy is adequate for connecting to Microsoft VPNs, as the kernel is supposed to support something called MPPE, as is the ppp program, and I don't think they do. ...maybe a later version of Puppy will tackle this.
Puppy now has Gtkdiff, a GUI frontend to diff, which is a program that compares two files. Very handy, works real nice.
I've installed Xchat, an IRC (Internet Relay Chat) client.
I finally found a light-weight fast GUI frontend for Mozilla. The problem
is that Puppy uses GTK v1.2 and doesn't have Gnome, which restricts the
choices. I tried many times to compile Skipstone, but failed. I also tried
many times to compile Light, and have finally succeeded.
Now that we have a fast frontend for Moz, I'm putting Moz back into Puppy, not as an external package. Light is remarkably simple and has a tiny memory footprint.
Note, if anyone reading this has some knowledge of C/C++ programming and an interest in learning GTK/Mozilla programming, developing Light would be an excellent project. The code is tiny and simple. It's a dead project and the author hasn't responded to my emails, but Light is a lovely piece of work and some little problems it has can be fixed and some more features added. A final-year project for a computer science uni student perhaps?
Good news. The site www.grc.com has ShieldsUp!, a product that will
test the security of your computer while connected to the Internet.
ShieldsUp! basically performs 3 tests: "file sharing", "common ports" and
"service ports". Without the firewall running, Puppy "failed" the second two
tests, as although all ports are "closed" they are not "hidden". Also, Puppy
responded to ping requests. These failures are not necessarily a problem and
Puppy is still secure.
However, I then ran the "Puppy Firewall Wizard" and accepted the default totally secure mode, then rebooted. I am connected to the Internet by dialup modem and using Mozilla. ShieldsUp! now reports that my computer is totally absolutely 100% invisible. It simply doesn't exist (apart from providing its IP address and responses of the browser). All ports are in "stealth" mode, meaning Puppy doesn't respond to any probe, nor does Puppy respond to pinging.
I don't know about Internet connection via a LAN, but for modem dialup Puppy is 100% secure ...the test program had heaps of congratulations.
This is wonderful, you can surf the Internet yet be totally invisible to all probes.
There is now a basic theme selection utility for GTK applications. Just some simple color changes to suit different individual tastes.
There's an updated "hard-Puppy" page, with a new super-easy installation method.
I have made a very pleasant discovery, an email "prefilter" program called
SMM (SaveMyModem). So far Puppy has used Popsneaker, which is a
console application to which I added a quasi-GUI shell. Popseaker works ok,
but SMM goes so much further, and is a full GTK GUI application. SMM can
download as many lines of an email as you specify from a POP3 server, or can
use its own intelligence to decide how many lines. Email can be checked
against blacklist servers. Email can be bounced, though I don't recommend
this as spammers usually forge the sender address, which means that whatever
you bounce will be victimising some poor unfortunate innocent soul.
Configuration is entirely via the GUI.
There are a couple of extra features, the ability to use SpamAssasin and to download from Yahoo email, that I chose not to compile.
So, I have replaced Popsneaker with SMM.
Puppy version 0.7.6 released. The image.gz file is 34.3M and the live-Puppy cd-puppy.iso file is 35.4M. Release notes:
- Please read the release notes for v0.7.4, as they apply to this version also.
- The ISO file is bigger, as Konqueror-e web browser and Scribus desktop publishing are now included. Yet, the ramdisk is smaller, at only 48M.
- We have the Mozilla web browser and Composer HTML editor as an extra package. Extremely easy to install.
- For the previous version, when booting from the live-Puppy CD, it searched for a floppy disk to use as the "home device" to mount on /root. This version automatically searches for a hard drive partition and creates a 128M file of ext2 filesystem and mounts that on /root. Although this is more invasive, it allows users to be "off and running" using Puppy without bothering to do an actual install. Understand that you use Puppy at your own risk.
Incidentally, the name "Puppy" was chosen as it implies small, however, there is a real live pooch with the name of Puppy. He is a Chihuahua and owned by my daughter, and "Puppy" is his actual name. He is the official Puppy Linux mascot. For some snaps of the real Puppy: www.goosee.com/puppy/amy
Planned for immediate future: I want to get the ramdisk down to 32M, to work in PCs with only 64M of RAM. The new system of mounting a file on /root opens up possibilities for very easy installation onto a hard drive -- I'll investigate this, also installation onto a Zip disk. I'm tied up this weekend, but back onto the Puppy project on Monday!
I've been thinking how to make Puppy easier to install, and I have come up
with something really nice. One of the files used to create the live-Puppy
bootable CD is "isolinux.cfg", in which environment variables can be
specified that get passed through to Puppy during bootup. There is now
"PFILE=name-password-size", which tells Puppy to create a file on a hard
drive partition, and mount it as a "loopback device" on the /root folder.
For example, "PFILE=pup0-none-131072" creates a file named "pup0" which is an unencrypted filesystem of size 128M (131072K) and by default is an ext2 filesystem. Puppy will search for a hard drive partition to use, looking for a vfat, ext2/3 or reaiserfs partition, or a partition can be specified by "PHOME" variable (example "PHOME=hda1").
This is pretty exciting. Imagine, you have a tiny business-card-size CD in your wallet, you go to your work computer, boot up from the CD, and that's it, you're off an running. You leave behind a file on the computer hard drive, but it can be encrypted. The password is in the CD, which is in your wallet.
By the way, regarding the experiment with Mozilla in the ramdisk (see below, 31 October). Yeah, pretty amazing, but there is an ideological problem. The main feature of Puppy is the speed, and Moz creates a really bad impression. I don't want Moz in the ramdisk. I've decided to leave Moz as an external package, but real easy to install -- just download the "mozilla.tgz" file and place in the "/root/my-applications/mozilla" folder then reboot and there it is. I'll keep Amaya, Links, Dillo and Konqueror-embedded in the ramdisk, which is quite an incredible variety of web browsers!
There has been an amazing new development. I have had feedback from guys expressing surprise at how many major GUI applications I have managed to squeeze into Puppy. V0.7.4 runs in a 64M ramdisk, with everything in it, however if you have been following the development you will see that I removed Scribus and Konqueror-embedded to an "extra package", as there wasn't enough room.
Well, I have a "card up my sleeve". I've been keeping this "card", and haven't used it so far as this Linux distro development is a learning experience for me and I needed to find out how to do it. Now I have tackled it, and the result is beautiful. Puppy is now running totally in a 48M ramdisk, yes, that's just 48M of RAM for the entire Puppy filesystem including all the GUI apps, and ...you are sitting down aren't you? ...the Qt application Scribus desktop publishing is back into the ramdisk ...but that's not all ...for web browsers Puppy now has Dillo, Amaya, and Mozilla, and for WYSIWYG HTML editing there is both Amaya and Mozilla Composer. And yes, it really is all in a 48M ramdisk.
Oh yes, the "card" is cramfs, the readonly compressed filesystem. It is extremely fast, no noticeable slowdown.
I have tested this new version of Puppy, v0.7.6rc1, on my old 200MHz CPU 128M RAM PC, and I wasn't able to break Puppy. I have great admiration for the guys who have developed the Linux kernel. It is a wonder, and copes beautifully in that small amount of RAM. I opened multiple applications, including two Mozilla windows, Amaya, etc., and couldn't break it. Remember, there's no hard drive swap file or swap partition here. Mozilla is big though, so I have configured it to mostly open tabs rather than new windows, as a new tab has much less overhead.
The bad news is that Mozilla is "bloatware" and is very slow. Moz takes 3 seconds to start on my 1.2GHz system and 20 seconds on my 200MHz system. Scribus also is very big and takes about 2-3 seconds and 16 seconds respectively. I'm currently investigating a faster frontend for Moz. In the future, Moz may not stay in Puppy, it all depends how Konqueror-embedded and Amaya improve -- Konq-e lacks any download capability, can't copy to the clipboard, and the user interface degenerates with usage. It is however very fast and renders pages quite well. Amaya is quite good, though font rendering and stability need to be improved.
I've upgraded Sylpheed from v0.9.4 to v0.9.7. The previous Sylpheed has a bug -- emails get "lost". I found that if I drag an email from, say, the Inbox, to another folder, it is moved and appears in the destination folder, but next time I start Sylpheed it isn't there. Just vanished. I thought maybe my mind is getting vague in its old age, then suddenly half a dozen emails "appeared" in a folder -- the database management code is just flakey, and they haven't actually been deleted, just invisible for awhile. I'm hoping the new version will fix this, though can't see this bug mentioned specifically in the changelog.
I've installed Gwget, a GUI frontend to wget. Also Superscan, a network scanner.
Puppy v0.7.4 has been uploaded. Filesystem image.gz is 26.5M and the live-Puppy ISO is 27.5M. Release notes:
- Upgrading from a previous version, delete .etc folder and .fvwm95rc.
- If you wish to connect to the Internet by dialup analog modem, please unplug any Ethernet network cable, as Puppy senses its presence during bootup.
- Puppy now has DHCP and Samba clients, so you can get onto a LAN and presumably the Internet (untested). Any feedback on configuring these most welcome! I have created a page with step-by-step instructions to experiment with connecting two PCs together, one running Puppy, the other running Windows: Testing Puppy-to-Win networking.
- I have not yet looked at other Internet access modes, especially ISDN, DSL and pppoe. The kernel has ISDN support compiled in and pppoe support disabled, which was the settings in Redhat 8.0, reflecting I guess the fact that it originates in the USA. I plan to recompile the kernel (again) with support for ISDN/DSL/pppoe as modules.
- The hardware database is still incomplete. I most especially need to know if Puppy doesn't load kernel driver modules for your sound and ethernet (network card). It would be most helpful if you have another Linux distro installed and can tell me what drivers it loads, and also send me the vendor:chip numbers for sound and ethernet as reported by the Puppy Hardware Probe (see Control Panel menu).
- The Video Wizard has a button for setting monitor frequency, however it appears to be not working.
I have created a script called remaster-cd, that makes it
very easy to remaster the live-Puppy CD. All you need to do is boot up from
the CD, with a floppy disk inserted so that there is permanent storage
mounted on /root.
Go to the "Utilities" menu and choose "Remaster live-Puppy CD". The script takes you through step by step, right up to using Gcombust to burn the new live-Puppy CD. A PC with 256M RAM is required and of course a CD-burner drive.
Oh wow! Samba works! The amazing thing is, I didn't do anything, Puppy just booted up and everything worked. LinNeighborhood showed my Win98 PC and with a few clicks I mounted its C: drive. And I still haven't read any Samba documentation.
DHCP is the magic ingredient here, I think. Having a DHCP server running on the Win98 box automates the entire process. Even though this is only an Intranet (local network), DHCP is the way to go. It means that Puppy can be taken to work or home, any network with a DHCP server, and will autmatically configure himself. Beautiful!
I've also installed Cheops. This is kind of like LinNeighborhood, but doesn't use samba and isn't for mounting drives. Cheops is an exploring/discovery tool, a scanner and monitor. Both apps have nice GTK GUI interfaces.
For any networking expert reading this: Cheops has an option for SNMP support, but Redhat doesn't have the required library file. I'm wondering though, is SNMP support useful to have? If so, I can get that library and recompile Cheops.
I've installed Gphone Internet telephone. I have no idea how to use it, but just couldn't resist it. It's a GTK GUI application and documentation is included, so here is a project for someone! ...well, two people.
I'm messing around with Samba, trying to communicate with my Win98 box. Not much joy yet, but then, the docs are enormous and I have hardly started to read them. Have installed smbclient, smbmount, smbumount, nmblookup, and LinNeighborhood --however I don't know if they will stay installed, as just playing for now. ...if a Samba expert steps forward, I'll leave it in for sure.
Note, I will definitely upload v0.7.4 before the end of the month of October.
Ok, the DHCP client works. I installed a DHCP server on my Win98 box (30-day evaluation -- argh!), then booted Puppy, and there it was, the assigned IP address and nameserver. This is not a real situation though, as my Win98 box isn't actually connected to the Internet. Testers are needed! (I'll upload v0.7.4 soon).
I need to know if Puppy does not load a driver module for your Ethernet card. You can get the vendor:chip numbers from the Puppy Hardware Probe, but it will be particularly helpful if you have another Linux distro installed and you can also tell me what driver was loaded (type "lsmod" to list loaded driver modules).
I've installed dhcpcd, that is, a DHCP client daemon, which
is needed to talk to a DHCP server. Unfortunately I don't currently have
access to a network with a DHCP server, but at a previous place of employment
this was how Internet connectivity was achieved. I think it's pretty much
standard these days. The DHCP server assigns an IP address and nameservers to
the client machine and it then has Internet access.
What I'm uncertain of, is my employer introduced username/password access to the DHCP server, and I don't know how to configure the client for that.
At bootup, Puppy automatically detects if a Ethernet cable is plugged in, using ifstatus (part of the ifplugd package developed by Lennart Poettering), then tries to communicate with a DHCP server.
Right now, I've got a crossover Ethernet cable from my Redhat/Puppy box over to an old Win98 box, and I found a DHCP server for Windows, and I plan to install that, then we'll see what happens...
The Ogle DVD player is now working nicely. I would like to thank the person on the Ogle-Users mail list who helped me to get sound working. I have also fixed jerky playback, by turning on DMA for the DVD drive. Puppy automatically detects the DVD drive at bootup and sets everything correctly, including linking /dev/dvd to the actual device.
A few more words about using the Ogle DVD player. My test system has 256M RAM, and there was only 8K free while a DVD was playing. I don't know if Ogle can dynamically adjust RAM usage downwards if there is less RAM --probably it does. My test system has a 2GHz Celeron CPU, and I got a steady 25 frames per second. A slower CPU might not do so good. There may be some things that can be tweaked to improve performance, but as a Linux-video beginner I'm satisfied for now.
Note, I've had many requests to get Ethernet networking going, so I've started work on it.
The numbers I have so far are, 1106:3058 for the VT82C686 AC97 Audio
Controller, and 1106:3059 for the VT8233/A/8235 AC97 Audio Controllers.
I have recomplied the kernel. Previously it was compiled for a 586 CPU, however the kernel in Redhat 8.0 is compiled for a 686 class of CPU. This difference could cause problems when using Redhat as the host for compiling applications and modules for use in Puppy, so now the kernel in Puppy requires a 686 (Pentium II) class of CPU minimum.
Puppy now has the Ogle DVD player. I'm building a second PC to test Puppy on new hardware and also to setup a small network. Also, the new PC has a DVD drive --so far all it has is a motherboard, RAM and DVD drive.
A problem with the new motherboard is no sound. It has a VIA VT8235 chip, and the docs state that the sound is "AC97 compatible". None of the drivers supplied with Puppy work, so... Ogle plays the video without sound.
I found a driver at www.viaarena.com, "viaudiocombo.o", that is for the
VT82C686A, VT82C686B, VT8231, VT8233, VT8233A, VT8233B, VT8235 and VT8237
It speaks, Igor, it speaks! Yes, the viaudiocombo.o module works.
But, you have to help me... I have added an entry for the VT8235 chip into
Antonio Gallo's /usr/local/share/libhardware/soundcard.db database, however
we need to make entries for the other chips supported by this module. The
VT8235 has vendor:device numbers of 1106:3059, the others will be
1106:something, and I need to find out what that "something" is.
If you have one of these VIA chips (look on motherboard or motherboard user manual), when Puppy is running, choose the "Puppy hardware probe", then click on "Query_PCI" button --maybe wait a few seconds for the probe to complete --then you should see the list of PCI devices including the audio device, and the first column will have the vendor:device numbers.
Please provide this feedback!
Also, these chips, at least the VT8235 does, have Ethernet also, so send me those numbers also ...I'll get your Ethernet working.
Sound works now, however the Ogle DVD player still has no sound, and I
can't turn on DMA. The latter causes jerky playing. I'm working on these
Have replaced the mpg123 MP3 audio player with Madplay. Madplay can also convert MP3 to various formats, including WAV, CDR, CDA, AIFF, AU, SND.
Have uploaded v0.7.2. The compressed filesystem image.gz is now 26.7M, the live-CD iso is 27.9M. To upgrade from an earlier version, delete the .etc folder and .fvwm95.
There are two more boot parameters that can be passed in from isolinux.cfg or whatever is the boot manager. PKEYS specifies the default keyboard, for example "PKEYS=us". If variable is not specified, default is "us". PROOTFS specifies the filesystem to be mounted on /root, for example "PROOTFS=ext3". If not specified, the default is "umsdos".
There is now a CD-burner and CDROM Wizard, which eases the user through configuring the CD drives for normal data read-only access, music playing, and CD-burning (writing).
More good news. The Video Wizard can now set the monitor frequency.
Previously, the default of the Xvesa server was used, which you can stay
with, however if there is flicker and you know that your monitor can take a
higher frequency, then it can now be done. The opposite is also true. Very
recently I was testing an old 14 inch monitor with Puppy, and I found that I
could only run Puppy at 640x480 --the default screen refresh frequency at
800x600 was too high. That old monitor can work at 800x600 at 56 Hz refresh
frequency (just), so now it and others like it can be used with Puppy.
Please, only mess around with the frequency if you really know what you're doing, otherwise there is a risk that you will try to drive the electron beam too fast, and I have read that it can burn out the monitor.
Popsneaker now has an encrypted configuration file, as I very much disliked the fact that it is plain text with Pop server usernames and unencrypted passwords in it. I wrote a shell script using Bcrypt.
Good news, I have got the CD burner working. My PC has a single CD drive, and previously Puppy was recognising it as /dev/hdc, whereas it needs to be recognised as a SCSI device, /dev/scd0, for CD burning. This has required a careful study of the driver modules, in particular the relationship between ide-scsi.o and ide-cd.o. There are some issues that I still need to resolve, so I want a few more days to sort them out, before uploading v0.7.2 --so, patience, it is worth the wait to have the CD burner running smoothly, coexisting with normal access to CDROMs.
I would like to comment on Gcombust, the CD burner program that I chose for Puppy. The developer, Jonas Munsin, has designed it very well indeed. Very straightforward and I burnt an ISO to CD without any hassles or reading the manual. I mention this as some time ago I used another CD burner program on Redhat and it was very confusing.
I've installed bcrypt, which is a small utility to encrypt and unencrypt files.
Another very small utility is gtk-shell, which is yet another GUI frontend for scripts. This one is particularly small and offers a file-select dialog, user-input box, file view or edit, and multiple-choice buttons.
Bug fix! I will upload v0.7.2 in a day or two. I've been tackling various issues, one of which was Puppy couldn't mount USB memory devices. This was because the sd_mod.o module was deleted at bootup so not available later when needed --this module is required for USB memory devices that are accessed as SCSI devices (USB memory is not really a SCSI device, but that's just Linuxes' way of doing things, hence the memory is available as /dev/sda1 for example, where "sd" means "SCSI device" or "SCSI drive").
I've replaced the console audio player Relief with a GTK version called Xhippo. Xhippo can have a playlist and will play them one after the other. Currently Puppy can only play MP3 and WAV audio files.
Puppy now has Popsneaker. This a an email prefilter, that
accesses a POP server and will filter and delete mail on the server, without
downloading the entire message. Actually, it was a tossup whether to use
Mailfilter, which seems about the same in terms of features.
The problem I have had the last week or so, is the %$#@&$ Swen virus. Infected computers (Windows computers) send out emails to everyone on the person's address list, and these emails are about 145K-165K each. At the peak, I was getting about 400 per day. Sylpheed downloads that lot before filtering it, which is not okay when you're on a slow rural dialup line. In desparation I went back to using Popcorn on Windows, but now Puppy has Popsneaker which does it very nicely. A bit crude, but I have set Popsneaker to delete all email over 120,000 bytes.
Puppy now has Gkdial, a nice GUI modem dialer. I am very
fond of the little console app that Puppy has used up to now, ppp, but Gkdial
has the advantage of multiple ISP accounts (ppp is still there, just not in
the Fvwm95 menu).
I had to hack the source code of Gkdial quite a bit, to get it to work with my ISP and in the Puppy environment. I would like to acknowledge the author of Gkdial, Gustavo Silva and contributor Alisson Casagrande.
There was a problem with Xtar, the file archiver. This is a GUI frontend for tar, gzip and gunzip, all three of which are part of BusyBox. Now, BusyBox is a compact bundle of utility programs, not as fully featured as the regular Linux/Unix versions, and I found that Xtar requires the "-r" option of tar, that the BusyBox version doesn't support. So, have copied the full tar program from Redhat. Now Xtar works very nicely.
I tested Gyach, the Yahoo messenger/chat program. I had previously just thrown it into Puppy before releasing v0.7. Well, it works. I found that my old username/password that I had for Yahoo discussion forums, works for messenger also. Gyach asks what server to connect to, and I found these from the yahoo FAQ site: scs.msg.yahoo.com, scsa.msg.yahoo.com, scsb.msg.yahoo.com, scsc.msg.yahoo.com. I used the first one, worked fine.
The old Endeavour file manager had a CDROM and floppy drive
mounter/unmounter built-in, so when I changed over to ROX-Filer I quickly
whipped up a little GUI mount/unmount script, which was with the Puppy v0.7
Now I have worked on the script some more, adding heaps of intelligence, and it is now called Pmount. Pmount probes for your partitions, and also offers help if there are any difficulties. My Redhat system is most annoying --I mount the Windows partition then can't unmount it, even though I've killed everything that seems to be accessing the partition. Well, Puppy helps you out in such situations, and will even kill any offending programs preventing an unmount.
I decided against automounting, it has never worked to my liking. Puppy's intelligent Pmount is better!
Note, as I keep developing new stuff almost every day, I have decided to upload incremental versions of Puppy, rather than keep people waiting a couple of months for version 0.8.
Okay, the big day -- Puppy Linux version 0.7 has just been uploaded. The file system image.gz is 27M and the live-CD iso is 28M. The Puppy web pages need to be updated --allow me some time to sift through them. On my slow Internet connection uploading took about five and a half hours, but I think that ibiblio.org was at its busiest time in the USA (early evening there, after midnight here), and I was using Windows (I'm not kidding, I don't think it's my imagination, I get faster transfer rates running Puppy Linux).
This is the "big K" version, which has The Qt library v2.3 and two applications that use the library, Konqueror-embedded web browser and Scribus desktop publishing v0.6. Konq-e is about 6M, Qt about 5M, Scribus about 1.2M.
Konq-e is an active project, so we'll see how it comes along. The issues are fairly small, and can be resolved.
I have also thrown in some experiments, to see if they are going to be useful. There is Gyach Yahoo chat and Pavuk download manager. These are both GTK 1.2 applications. I have no idea if they actually work -- testing is up to you guys!
Another big item of news is that this version of Puppy is using the ROX-Filer file manager, not Endeavour. Rox is an absolute delight to use, with inbuilt image thumbnails. My experience has shown the two-pane user interface of Endeavour (and Windows Explorer) is less useful than a single-pane multi-window approach with drag-and-drop. Rox is a GTK app, written in C, and I am using an old version 1.2.2 that uses GTK 1.2 --runs fine though --I have found just one tiny bug with odd negotiating through directories (if you descend into a directory with the same name as some other directory, Rox is really stupid and sometimes will open the other one). Rox is very small at 290K, though the downside is it uses the XML2 library which is very large at 669K after stripping. Rox is currently the only app that uses the XML library, so it seems a bit of a waste.
Upgrading from a previous version of Puppy:
Due to the fact that these are beta versions of Puppy, prior to v1.0, upgrading requires that you first have to delete a few things. If you have a "home device", be it Flash card, Zip, or hard drive partition, please delete the ".etc" folder and ".fvwm95rc" file. Then, copy the new version of "image.gz" onto the boot device (which may also be same as the home device --newbies to Puppy, that's not so confusing as it first reads!). You may also like to read the upgrade notes of the previous releases for extra guidance.
I still haven't got printing working, at least, not properly. I've been testing with an old HP Deskjet on the parallel port, and I can send a file to /dev/lp0, so that's good news. However, the PDQ printing system doesn't work. I know we are a hair-breadth away from it going -- is there anyone out there who has experience with PDQ and can help? Also, Ghostscript has this big heap of printer drivers, and being a Linux-printing-newbie, I'm unclear how to get PDQ to make use of these.
Linux Firewall graphical installer is a shell script that uses a program
called dialog. The latter enables "dialog boxes" to be displayed, such
as checkboxes and yes/no buttons. However dialog is a console application and
runs in a terminal, and has that typical limited text-mode look-and-feel. I
have now installed Xdialog, which is a GTK application and is
supposed to be a drop-in replacement for dialog, except that things aren't so
simple. Linux Firewall graphical installer doesn't work properly with
Xdialog, so Puppy has retained both dialog and Xdialog, the intention being
that the latter is there for a gradual shift to it being used extensively.
For my own shell scripts, I've been using Xmessage, another dialog box system callable from a script. However Xmessage is a bit limited. So, Puppy now has all three, with the intention sometime in the future there will only be the one, Xdialog.
Anyone interested in programming for Puppy, shell scripts is the easy way to go. Puppy has full documentation on the Ash shell, Busybox commands and Xdialog.
I have discovered a problem with Konqueror-embedded. I was at the Sourceforge site, tried to download a file, but found that instead of commencing a download, Konq-e brought the file up in a new window. Right-click doesn't even offer an option to download. Hmmm, not so good...
I know that I promised v0.7 about now, but well... this coming weekend definitely.
My daughter asked "where are the games?" ...hmm, ok, I have put some in. Puppy now has three games, Gtkfish, Xpuyopuyo and Groundhog.
I have never used such a thing, but thought that maybe users of Puppy would like a Yahoo chat program, called Gyach.
I found a nice little application called Blinky, that has a couple of flashing LEDs just like those that show network traffic in MS Windows --except I can't figure out how to get it to reside in the taskbar (I think Fvwm95 should allow it, but don't know how --any Fvwm expert reading this?). To keep passwords secure, there's a neat little password manager called Gpasman. And finally a very small application called Gbase, that converts number radixes.
The big 64M-ramdisk (28M iso) "K" version is a pretty fully-fledged system by now. I'll try very hard to get printing to work (I'm using PDQ) and hopefully get version 0.7K uploaded by the coming weekend.
I have upgraded Ghostscript and Ghostview. One problem was the limited number of printers supported by the older v6.50 of gs, also inadequate rendering of PDF. Now have Ghostscript v8.11. I have also replaced the aging Ghostview (last updated in 1997) with GSview, v4.41beta. GSview uses GTK 1.2, and is most satisfactory.
Now, if only I can get printing to work...
I installed USBView in Puppy. This is a GTK+ application that displays information about the USB devices. Quite nice, but I still haven't got my USB mouse working.
Amaya is back in Puppy, the "K" branch, and I'm using Amaya right now to edit this web page.
I recompiled Konqueror-embedded with built-in Flash viewer ...this is not
the Flash plugin from Macromedia, but an open-source optional module
developed for Konqueror. It doesn't quite support all of the Flash level 4
standard. I tried a few websites to test it. The Macromedia homesite has
links to demos, however most of them require Flash 6. However, I got
excellent results at Neopets, the place where my daughter hangs out (and so
do 50 million other kids): www.neopets.com ...the main page has lots of
small Flash animations.
Note, there is currently a project underway for Konq-e to support Netscape plugins.
Puppy also now has OpenGL, and I will look around for a nice game to demonstrate it.
I've taken out the lpr and lpd printer utility programs and instead installed PDQ, which has nice configuration GUI for managing printers and printing. I'm still low on the "learning curve" with printing, and I haven't actually got to the stage of connecting a printer...
I have had enquiries about Puppy from non-English speaking/reading people.
Puppy is currently English-only, though the keyboard can be configured for
the different layouts around the world. International language support is
something that I know nothing about ...."i18n" is just a word to me, means
Puppy has duplicate sets of 8859-1 and 8859-2 Type1 fonts, which does cover many European regions, but I haven't looked into it much --I think that the Euro symbol is a problem, read somewhere that I should really use the 8859-15 fonts.
I had a close look at mime-types in Sylpheed, the mail and news client. The file /etc/mime.types is accessed when posting a message with an attachment, to set the correct mime type. The file /etc/mailcap is accessed to associate a Puppy application with an attachment --I created mailcap and tailored it to suit the apps available in Puppy.
I'm getting more paranoid about security, and have now installed F-Prot, the commandline virus scanner, and xfprot, a GUI frontend. Of course, the signature files are big, but Puppy has lots of room now that Moz has gone (well, the Moz branch still exists, but I'm currently working on the Konqueror-e branch).
I have also installed Scribus, version 0.6. This has come about because the "K" (Konqueror-e) branch of Puppy uses the Qt libraries, so I had a browse around looking for something interesting that can use those libraries also. Qt is version 2.3.1, so I had to use an old version of Scribus. Scribus is a WYSIWYG desktop publishing (DTP) application and exports to EPS and PDF. It's a bit more specialised than the Ted wordprocesor, and the two of them give Puppy an enormous flexibility for creating text documents.
What's missing though is a WYSIWYG HTML editor... I removed Moz Composer and Amaya earlier. I may have to bring back Amaya.
Wow! I have today compiled Konqueror-embedded, a web browser
based on the Qt library. Konqueror is well known as the file manager and web
browser for the KDE desktop environment, however Konqueror-embedded is a
special version that works without KDE (it just needs the Qt library, v2.3.x)
and is just a web browser.
The great surprise though, is the speed. Konqueror-embedded starts up in a tiny fraction of a second. I don't know if I can detect any difference from Dillo, and that's saying something.
I have decided to make a branch in Puppy development. Recently someone suggested to me that a "big" version of Puppy would be a good idea. I agree; I have built Mozilla 0.9.8 into Puppy and made the ramdisk 64M ....I think I'll refer to it as version 0.6M, where the "M" is for Mozilla. I've taken out Links and Amaya, but left in the Dillo web browser -- Dillo is just too nice. Dillo is only 300K, super fast, and ideal as an internal HTML viewer. One day maybe it will acquire enough features to be the main browser for Puppy.... Maybe even Amaya will become satisfactory ...needs to be more stable and font rendering is awful.
Mozilla is of course sluggish, however starts up fairly fast in Puppy --about 2.5 seconds. My test PC has a 1.2GHz CPU and 256M PC133 SDRAM. I can't get the Adobe SVG viewer v3 to work, so much for that idea. I'll have another go at compiling a recent version of Moz ...if anyone is interested, if you have Redhat 8, I can send the configuration options that I have tried and you can have a go at compiling Moz and testing in Puppy. The biggest challenge is to decide what files are superfluous --for example, I removed "modern.jar" from the chrome folder, as one theme is enough.
I hope to upload v0.6M soon.
Puppy version 0.6 is now uploaded. image.gz is now 21.9M, and the cd-puppy.iso is 23.1M. Read the release notes for v0.5 below (23 July 03), they also apply to this release if upgrading.
I have also uploaded "mozilla-0.9.8.tar.gz" (8.5M) and "libstdc++.so.zip" (217K). This is for experimenting with Mozilla. Unzip the libstdc++.so.zip file to libstdc++.so.5 and place it in /usr/lib. The Mozilla tarball uncompresses to a folder named "mozilla", and place that anywhere. Inside the mozilla folder is a script named simply "mozilla" that can be executed to start Mozilla. You can only do this if your Puppy installation has a home device or Linux partition with adequate storage capacity, such as hard drive or flash card. Note, do not uncompress Moz while in Windows --you must be running Linux, and you must uncompress into a Linux partition, such as ext2 or umsdos.
So why version 0.9.8 of Moz? Three reasons. Firstly, I tried v1.4, however
it simply refuses to run --no error messages, just exits immediately.
Secondly, v1.4 is about 30M, whereas v0.9.8 is about 24M, both compiled
without mail/news but they do have Composer (for WYSIWYG HTML editing).
Thirdly, the Adobe SVG viewer v3.0 works with Moz v0.9.8, but the
Moz/Netscape developers in their wisdom made major changes in v0.9.9 that
rendered the SVG viewer useless, in fact it caused Moz to crash. The new
Adobe beta v6.0 does work with recent Moz's, however there is no Linux
version. Recent Moz's do have inbuilt support for SVG but require a special
version of the Libart library and the SVG support is incomplete.
The end result of all of this is that I know the old Moz v0.9.8 is quite good, as is the SVG viewer v3.0, so that's what I've chosen. I'm not suggesting that Moz should be in future versions of Puppy, this is just for experimenting, as I personally do want a good web browser and I'm not satisfied with Links, Hacked Links or Dillo in their present states. There are some other possibilities, that use the Moz rendering engine with a leaner user interface.... if we could get the size down to around 12M, we can just increase the ramdisk size a bit and put it in (Remove Hacked Links and Amaya frees up several megs).
My apologies: The Puppy Start button has a "Help" item, which brings up an intro page and links to all the HTML doc pages. The intro page states that Puppy is version 0.5, whereas of course it is now v0.6. As it took me 3 hours to upload the latest version via my slow Internet connection, I'm not going to fix that tiny little oversight.
I have added GtkCat to Puppy. This is intended to be a CDROM cataloger, except that I found that it's real good and extremely fast as a general file find program. So now, in the "Find" menu there are two choices, GtkCat to find a file, and Turma to find files containing certain text.
I have also added GtkGraph, a calculator that graphs equations. No particular reason, just found it to be a nice app. Well, my daughter is in year 10 at high school, and she has a need for such a thing --graphs can be exported as bitmap images and pasted into Ted, for her assignments (she is still using Windows, but I'm going to try and entice her across to Puppy!). So now Puppy has an ordinary scientific calculator and this new graphing thingy.
I promised v0.6 before now, didn't I?... soon, soon...
I have created a small utility to set the timezone. Puppy already had a time/date utility, provided with Fvwm95.
I'm not sure when v0.6 will be out, probably in about one week from now, around 14-15th.
Puppy now has a great little vector graphics editor, called Figurine. This is quite an "old" application, however it is excellent. The native file format is .fig (as used by Xfig), and will export to .eps, .ps, .jpg, .gif, .png, .ppm, .tif, .xbm and .xpm, with the help of the fig2dev program (which is also used by ABS for printing). Figurine is very easy to use --along with Xpaint, I can now whip up graphics with the greatest of ease, in contrast with... well you can probably think of a few graphics apps that are so over-featured they're just plain confusing!
Ah, what a nice product... I've just discovered Sylpheed mail and news client. Written in C and for GTK v1.2, so meets my criteria. Although I am fond of the Spruce email client, it lacks some features that I need, such as clickable URIs. The two news readers XRN and Gnews are basic, and I really need a proper hierarchical tree structure with history, and modern UI, and Sylpheed does it beautifully ...as good as the best newsreaders out there. So, I have decided to remove Spruce, XRN and Gnews, replaced with Sylpheed, v0.9.4.
One point about applications that I remove. Many of them are small, though lacking features, but still have a place in certain circumstances. We could for example develop an extra-tiny version of Puppy, for very old PCs with 64M RAM or even less, and some of these apps could get resurrected. As they have been compiled for Puppy, I may provide them for download if anyone gets interested in exploring in this direction.
There was a bit of a gap with text editors. Puppy has two console editors, mp and vi. mp is very easy to use and has beautiful syntax highlighting, however has its shortcomings in the GUI environment. I found Gnotepad+, which despite the "G" prefix can be compiled without requiring Gnome. Gnotepad+ is also a lovely HTML editor, quite a find in fact.
Puppy now has a "Video Wizard". This starts the first time Puppy is run, and allows video modes to be tested on-the-fly, just like we are accustomed to doing in Windows.
Don't forget that prior to version 1.0, Puppy will be in a constant state of flux. You cannot rely on applications that are there now, being there in the final release.
Puppy version 0.5 is released. image.gz is now 20.4M. Great new applications, and autodetection of hardware (read the news items below). A couple of issues:
- If upgrading from v0.4 and Puppy is installed in a permanent flash card or hard drive, please delete the .etc/ and .amaya/ folders and .fvwm95. Then to upgrade just download the new image.gz and replace the old one.
- Feedback on hardware problems requested! Puppy should autodetect sound and ethernet cards. From the Fvwm95 window manager "Start" button, select "Programs/Accessories/Hardware probe". This will enable you to examine your hardware and driver modules, plus has a help page.
- A small point. The docs for Ted wordprocessor mention that you should always close Ted from the menu, not via the window close-box nor by exiting the window manager.
- I have played around with the default window sizes, to setup Puppy to work nicely on a minimum screen resolution of 800x600. When you first start Puppy, you will be given a choice of video modes. "0x114" will give you 800x600x16, that is, 16-bit color. If you must run at 640x480, then you will have to mess around with default window sizes --look for the word "geometry" in ~/.fvwm95.
- Another small point. When open a plain HTML page in Amaya, uses bitmap fonts, then scales them, default size is too small, headings look jagged. CSS pages have nice scaled fonts. Looked around the settings, couldn't see how to fix it.
During bootup, /dev/cdrom is now automatically linked to the actual CDROM device, as long as it's a EIDE device. This is the case with the vast majority of PCs, except some may have an actual SCSI CDROM drive. In the latter case, I can probably cover that situation also, but taking one step at a time.
I've installed Hacked Links in place of Links. Has better fonts, but executable is 3.5M compared with Links at 2.6M. I wasn't able to install the latest version (030709) as it had lots of files missing so wouldn't compile. I compiled an earlier version (030316). The main inspiration for Hacked Links is Sergey Karpov, a helpful guy.
Please note, the last upload of Puppy was v0.4 on 9th July. All of the goodies I have incorporated into Puppy since then are not yet released. They will be in v0.5, that I hope to release in 4-5 days. Note, I have updated the list of applications on the main page to v0.5, ahead of the actual release.
Thanks to Antonio Gallo at badpenguin.org, Puppy now has autodetection of sound, pcmcia, scsi, raid, USB and ethernet and loads the appropriate modules. However, there is some work to do to get it fully functional on a wide range of hardware, and you guys who test Puppy can give me feedback --I am adding a "Modules HOWTO" help page in Puppy to explain further.
Puppy has now acquired Xfinans, a personal financial management program, and Turma, a file text find and replace program that can hunt through directories recursively. Both are nice GUI apps.
I have installed Amaya, a cross-platform web browser and WYSIWYG
XHTML editor. Amaya is written in plain C, and uses GTK+ v1.2, so meets those
criteria, plus is not too overweight. I will probably now remove Bluefish, as
Amaya does the job and is WYSIWYG. Amaya also solves a problem I have with
Ted, in that Ted exports HTML with CSS code and Links web browser doesn't
understand CSS, Amaya does. Amaya also understands SVG, which in the long
term is the open source vector graphics replacement for Flash/Shockwave
graphics on the web.
Looks like I will remove Gzippi. It segfaults in Puppy, I don't know why. Anyway, it compresses only, not the other way. Xtar is okay for now, moving to Xzip in the future.
I have successfully installed Puppy on a hard drive, am writing it up.
We had a little trouble with downloading cd-puppy.iso off the ibiblio site --Internet Explorer was giving an error message "server returned extended information". I think that it was a problem with mime-type, however Nancy at ibiblio has moved the file over to ibiblio's FTP server and I've updated the link on the cd-Puppy page.
cd-Puppy v0.4 live-CD ISO is now on Ibiblio.org --see cd-Puppy page
Puppy previously had gzip/gunzip, and I have now installed bzip2/bunzip2 and zip/unzip archive programs, plus a new GUI to use them called Gzippi.
Uploading Puppy version 0.4 today, to this website. image.gz is 18.6M. Not yet on Ibiblio -- for convenience, I will place the ready-made live-CD ISO on Ibiblio very soon. A couple of issues:
- For some unknown reason, the ABS spreadsheet program's startup splash window won't go away --seems to be waiting for something. The fix for now is to quit ABS then restart, then the splash window does go away.
- The MP console text editor still as a couple of issues, one of which is not all the menu shortcut keys work as the Fvwm95 window manager has hijacked them. Also, always close MP from the menu rather than the close-box.
- Issues number 3, 4 and 5 of the previous v0.3 release still apply (see below).
Puppy has undergone major surgery. I took out all of the Siag Office suite, consisting of PW, Siag, Gvu, Xfiler and Xedplus. The Siag apps are very nice, however for various reasons I decided to go for Ted, a wordprocessor, ABS a spreadsheet, and Ghostview. Also included fig2dev, a file conversion utility needed by ABS for printing.
I have also upgraded Xpaint to the latest, version 2.7.0, as the old version I was using saved XPM files corrupted --now ok.
When will v0.4 be out? The people at ibiblio.org have kindly agreed to host Puppy, so when v0.4 does come out, I'll make an ISO available. As to when... maybe another day or two.
I've created a "Modem Wizard", that locates the modem. It's a shell script, but displays nice GUI interface.
I have communicated with Angel Ortega, author of mp, a great console text editor used in Puppy. mp was ignoring SIGTERM, meaning that after exiting X I would find mp processes still running. Angel explained how to edit the source to fix that. Another problem I have with mp is that some keyboard shortcuts have been taken over by Fvwm95 --I've installed ~/.mprc, which can configure key bindings.
I've created a daemon that runs in the background and watches the ramdisk, informing if it's getting full and suggesting what files may be to blame.
Internet ISP setup, connection and disconnection now work from the Fvwm95 menu.
Puppy has acquired Xrun, which is a commandline, to be invoked by the "Run..." button in Fvwm95, just as in Windows. Also we now have Host-connect, a basic GUI frontend for secure telnet with ssh.
There is still a problem with the Fvwm95 "Screen settings". The "Browse..." button enables to select an image (that will become the desktop background image) however after pressing "OK" it isn't returned. This seems to be a problem in the Fvwm executables themselves, not any script. Can still manually type a image file with full path, without using browse, and can change the background image.
I need to find a small application to set the transparent color on images. Xpaint doesn't seem to do it. On my Redhat system I tried to use Gimp to do it, but despite (or maybe because of) the huge number of menu selections, I just couldn't choose a transparent color. I really do have reservations about Gimp, and don't want it on Puppy ....Xpaint is very good and easy to use, and can be supplemented with a few utilities if necessary. However, Xpaint seems to save XPM images in a corrupted format -- need to check that out some more.
I've installed the xli image viewer, partly as I wanted a commandline tool for viewing images, in particular to set onto the root window (desktop background). I did not want to use xv. Works real nice, have now got a lovely background image when Fvwm95 starts up. I now need to edit the Fvwm95 scripts to use xli for screen setup.
Version 0.3 now available. Major visual and feature enhancements. image.gz is now 18.7M.
If you are upgrading from an earlier version, please erase all files on it first. You can leave vmlinuz and ldlinux.sys on it so it remains bootable, but wipe everything else. Then copy the new image.gz and syslinuz.cfg onto it.
If using a floppy disk as home device, please erase it.
I do intend that once the structure is settled on, you won't have to wipe your personal files.
Some brief (and important) release notes:
- The Gaby personal database is now nicely integrated with the Spruce email program, however the telephone feature needs attention (ie, doesn't work).
- In Fvwm95, the "Restart WindowLab" item in the "Start" menu is supposed to restart with the WindowLab window manager running, except it doesn't.
- The "Start/Settings/Screen Setup" item is mostly functional, but don't press the "Browse..." button as it hangs Fvwm (CTRL-ALT-BACKSPACE will get you out).
- A useful note about the Endeavour file manager. Before collapsing a directory tree, click outside it first. If a directory inside is highlighted, Endeavour hangs.
- Another useful note about Endeavour. For cd-Puppy using a floppy disk as "home device", when you exit Endeavour you will be asked if you want to unmount "fd0" --say no.
- The Fvwm95 taskbar looks just like Windows 9x, and is configured to auto-hide. I find this to be a bit tricky to use, but I think that it is a matter of technique --move the mouse pointed down to the bottom of the screen fairly quickly helps, maybe. I don't yet know how to change this behaviour.
- To connect to the Internet, use the "ppp" program in a terminal window as described on the main Puppy page. "Start/Network..." menu does have items for invoking "ppp", however the connection step doesn't work (so don't use it!).
Hopefully all these issues will be resolved by the next release!
A couple of interesting points about images. If you choose "Image browser"
from the "Start" menu, and go to /usr/share/images/, then right-click on an
image, you can make it the desktop background image --however it isn't
If you want to take a snapshot of the screen or parts thereof, open Xpaint. It has a nice screen capture facility.
--it would be nice if both of these features could be invoked direct from the commandline, so they could be put into Fvwm95's menu ...anyone interested in hacking some code?
Major news! I have gone over to the Fvwm95 window manager. LWM and WindowLab are still there as alternatives. This gives the look-and-feel of Windows 9x, and gives an excellent first impression. Fvwm works beautifully, very fast. Now we have desktop icons, start-button, the works.
Puppy has only got console sound players/recorders, wavplay, wavrec and mpg123, and only console mixers, aumix-minimal and volume. So, I found Xtmix, a nice GUI sound mixer that uses the Athena/Xaw widgets. I cannot find an Athena or GTK v1.2 GUI sound player, however I did locate Relief, an ncurses (console) quasi-GUI frontend for any sound players -- works for wavplay and mpg123.
When are all these goodies going to get released? I'm currently tuning the Fvwm95 config file, which is no trivial task, so perhaps... maybe we will see v0.3 tomorrow.
Puppy has now gained Gnetconfig, a utility program to examine and configure the network interfaces. I also found a nice little GUI utility to monitor network traffic, Xnetload, and it does a real nice job of displaying the packet flow to and from my modem while connected to the Internet.
I managed to find the source code for Gnews, a newsreader written in 1999 by a student, Jan Blunck. Jan lost interest, but it's a nice little program, though some features missing. It has potential, and it would be nice to see it taken up by somebody. Gnews requires GTK+ and can be compiled with or without need for the Gnome libraries. So, now Puppy has two newsreaders!
Hey man, we're getting there! I just had a revelation -- discovered that all this time the X server was only using the bitmap fonts in /usr/X11R6/lib/X11/fonts/misc/ even though the docs state that the server automatically searches misc/, 75dpi/, 100dpi/, Speedo/ and Type1/. Puppy only has misc/ and Type1/. With X running, I typed this:
# xset fp+ /usr/X11R6/lib/X11/fonts/Type1
I then fired up Xpaint, and there they all are! Maybe it's a hack, but
I've added this command in /usr/X11R6/lib/X11/xinit/xinitrc, so it will
execute when X starts.
Note, also tried Siag's pw, it has all the fonts for selection, but they don't all display correctly -- the Dingbats for example display as plain text, not symbols.
By the way, right now I'm using the Bluefish HTML editor in Puppy to edit this news.htm file, which resides on my Windows partition. I have also configured the external settings for Bluefish, so can preview in Links web browser and edit images with Xpaint.
Puppy now has Xcal, a nice calendar/reminder program, based on the Athena widgets (Xaw/neXtaw). This should nicely complement the Gaby personal database. Xcal will appear in the next release.
I have a problem with Egon, the animation creation tool, which is part of the Siag Office suite. It takes up a lot of space, but I don't see it as being very useful. If there is a need to create animations, there are some other choices, but this kind of thing is perhaps a bit too exotic for Puppy. So, Egon may be gone by the next release.
Ok, Egon is gone. I have finetuned the Siag Office suite. I have installed Siag's Xedplus, yet another text editor -- Puppy already had vi and mp. I have installed Antiword, for viewing MS Word files. I have also installed the Siag plugins, which turns on "object embedding". I placed an environment variable into /etc/profile, SIAGDOCS=/usr/share/doc/siag, as I had placed the docs in a different place than the default, and the Siag apps couldn't find their docs.
...darn, the Siag apps still can't find their help docs. I still can't figure out those plugins, only got the "hello world" plugin to work. have no idea how Antiword is supposed to be used by Siag apps.
I have removed the TTF/ folder, that had TrueType fonts. I also overhauled
the misc/ folder, as some apps complained of missing fonts. misc/ has the
bitmap fonts (non-scalable). There is still a warning that cannot find a
complete fontset, but much improved and also the folder is half the size of
As the TrueType fonts are removed, it would seem that Puppy no longer needs the libfreetype.so* libraries, and indeed the X server is the only app that calls it. I tried to recompile X so that it is not dependent on this library, but failed. So, I have to leave in an unused 260K library.
Fonts are still a mystery... Xpaint for example only allows selection of the bitmap fonts, yet docs indicate should be able to select scalable fonts.
Version 0.2 released. Puppy now boots off a CDROM, as well as any USB device. File image.gz is 18.6M, vmlinuz is 1.1M.
IMPORTANT: I have made some changes to the structure of directories and config files, so if you are upgrading from v0.1 and will be using the same flash card "home device" as before, please erase all files on it first (you can leave vmlinuz and ldlinux.sys on it so it remains bootable, but wipe everything else. Then copy the new image.gz and syslinuz.cfg onto it). I do intend that once the structure is settled on, this kind of thing won't be necessary, and upgrading will be a simple matter of replacing the old image.gz with the new one.
A CDROM version of Puppy should be released in a couple of days. First
time I tried it, I was pleasantly surprised how fast Puppy booted up.
I am refining the file structure, so these early versions should be treated as experimental, not for mission-critical use. My intention is that v1.0 will be when Puppy is ready for mass use.
I would like to try Gnews, a GTK+ based newsreader. There is a product called Gnews for Gnome, also a newsreader, but a different product. The Gnews that I am after was written around 1999 by Jan Blunck, a student, and his download link no longer works, email appears to be dead. His Gnews can apparently work with just GTK+, not Gnome. If anyone has the source code, I would love to have it!
The Xrn newsreader now works. I found that the nntp/tcp entry was missing from /etc/services. The fix will be in the next release.
Puppy version 0.1 placed on the Internet for download.