Wednesday 5 March 2008

Playing with Small Linux Distributions

Last week I started looking into resurecting the old PC that I was given in return for fixing a windows laptop, the goal being to provide a workable PC for my 8 year old daughter to use. Its a 2001 Celeron with 128MB of memory and a 20GB hard drive and a non-functional mouse port.

Older less capable machines do not have enough resources (processor speed and memory) to run one of the big Linux distributions, such as Ubuntu or Mandriva. The Old-Celeron just doesn't have enough memory for this at 128MB (it wasn't running XP Home in a usable manner either). However there are a number of small distributions designed to run on old hardware, so I thought I'd give them a try.

I tried both DSL (DamnSmallLinux) and Puppy Linux. Both these distributions run from a live cd and come with enough tools to install to the harddrive or a USB stick (which I've yet to try).

First DSL
I downloaded it as an iso disk image and burned it to a CD-ROM. DSL is small enough that it will fit on a little credit card sized CD-ROM, in which form it can be bought for a nominal amount from here. Its claimed DSL will run with only a 486DX with 16MB of RAM, but will run entirely in RAM if you have 128MB or more.

DSL booted from the disc, I was immediately impressed that it found the USB mouse with no trouble. Every time it booted from the CD it claimed that it had been passed an unknown video mode before proceding. It seemed not to be able to decide for itself what console resolution to display, which was pretty irrelevent since I was planning to use it in GUI (graphical user interface) mode, so just ignoring this and pressing enter worked for me. The screen resolution once running in the GUI was also an issue. Both the i810 chipset on the motherboard and the monitor were capable of 1280 x 1024 but the best mode that actually worked I could coax out of the system was 800 x 600, 1024 x 800 would suffice.

Having loaded the system there was a choice of two flavours of desktop (or window manager) JWM (John's Window Manager) or Fluxbox. These both had quite a different look and feel to Windows. For a start there was no Start button, right click anywhere on the screen and you get the equivalent of the start menu. One impressive feature of both the windows managers was the abilty to handle multiple desktops, which enable you to have different applications open on different dektops then switch between them (not something you can do out of the box on a Microsoft system but common to most linux GUIs). Of the two I preferred Fluxbox though JWM was closer to windows.

Although only about 50MB in size DSL has an impressive list of applications enabling you to do quite a lot with just the base distribution. I was pleased and surprised to see the Firefox browser there, and apparently configured to use less space than usual. Using firefox on this 7 year old machine was as snappy as on my 2 year old laptop, very impressive. Additional packaged applications can be downloaded using MyDSL. I found that MyDSL was a bit clunky to use but worked. It is possible to create a new disk using DSL to include the downloaded applications (which I didn't try).

I decided to install it to the hard drive and see if I could fix the video problem. I used the cfdisk tool to re format the drive and create partitions with Linux file systems to install to. Two partitions were created a small 128MB partition for the swap file (same size as the system RAM) and a larger one using the rest of the drive set as a Boot partition to install on. The install ran in console window, it asked a few simple questions and took only a few minutes to run.

After installation to the hard drive it booted pretty much as before but loaded a little faster. I was still not able to fix the video resolution though since I'm a Linux novice that's no surprise. I'm sure it could be done, by downloading, installing and configuring alternate software that would enable the higher resolution, but I'm really not going to invest the time in doing that since with my current level of knowledge is not adequate.

Puppy Linux
So then I downloaded and tried Puppy Linux, after all it looks cute and the machine will be for an 8 year old girl. Its claimed that Puppy will run with 586Mhz CPU and 32Mb RAM. Puppy started up fine from the CD-ROM, initially it had the same screen resolution issue as DSL. However a little reading in the Puppy FAQ revealed that Puppy has an altenate more sophisticated X server (the bit of software that does the graphics and mouse stuff) called Xorg as well as the lightweight Xvesa, which I had been using in DSL. Switching to Xorg fixed the screen resolution problem.

Puppy also uses the JWM desktop, which they have configured to look and feel a bit more like Windows 95 (but with a picture of a small dog on the desktop).

There's a different set of software with Puppy than with DSL. Puppy notably includes OpenOffice, the Linux equivalent of Microsoft Office, which will read and write MS office format files. Unfortunately for my purposes it did not have Firefox by default. Puppy as with DSL offers additional software pakaged and tested to run in Puppy, these are supplemented by user supplied packages. Additionally after installing the Debian installer its possible to access an even wider range of software.

I installed Puppy to the hard drive too. It offered me the opportunity to install along side the DSL but I made it replace it. The install tool worked smoothly an Puppy booted OK from the hard disk.

Conclusions
Both of these distributions are remarkable considering their small size and they certainly run applications at a good speed. Overall I think Puppy would be the best choice of the two as its more sophisticated in most respects. DSL is more of a Geek OS, there is elegance in its simplicity (particularly when using FluxBox) there's the live system status imprinted on the desktop and the transparent command console windows. Puppy is a user's OS it has some of the rough edges knocked off and has a good office suite. When run from a CD-ROM both these distributions can store files and configuration on the hard drive or a USB stick, making them practical to use.

As far as my target customer for the machine goes I think that Puppy just feels a little old fashioned, though its probably just that Windows 95 theme, also it runs under the root password so would be easier to break. So if I'm to pass this machine off as an alternative to other kids XP machines, its going to have to scrub up a little better.

With some effort I could probably make Puppy fit the bill, but I have a Plan B to try first. For under £10 (ebay prices) I can add 256M of RAM, which will enable me to install Ubuntu (which is a slick shiny thing of beauty compared to these two). If this works there are two advantages; it looks nice with a more windows like desktop and I'll only have one distribution to support. Also it'll be interesting to compare the 7 year old machine with the 1 year old machine on the same OS.

I'm not sure if I'll use DSL or Puppy again, I might if more limited hardware comes my way.

No comments: