Small Linux Revisited
A Little History
Many moons (almost two years!) ago, I wrote an article called Small Linux detailing what I had done to make a reasonable Linux fit in a Toshiba Libretto 50.
That's a very limited notebook, with under 800MB of disk, a 75Mhz Pentium CPU and 16MB of RAM, and it has served me well for a long time.
Now, however, I am using the almost exact opposite, a second-hand Toshiba Satellite 1955-S805.
Where Salma (the Libretto) had a 640x480 screen, Monty (Toshiba), has a 16" 1280x1024. The RAM has increased 32 times. But they have one thing in common....
The 800MB HD
You see, Monty is second hand. My future mother-in-law and brother-in-law brought it from New York when they visited, for Rosario (My future wife, until February 18 2006 ;-).
And it had a broken HD. And I wanted to use it while I got a nice new 60GB one.
So, overcoming my fear of destroying expensive equipment, I got the HD out of Salma and into Monty, and started thinking....
The Tallest Guy In The World
He had a problem: really bad feet. He died of it, too. In the same way, Monty now booted, but the app selection was outdated, and really, lots of things Salma couldn't do, Monty could.
What on earth can one install on that disk when you don't have any other real hardware limitations?
The choice of distribution was tricky.
I am a CentOS guy lately, but the package selection is entangled enough that you can hardly get X installed without crossing the 800MB. The minimal install is about 450MB.
Debian again? Well... no.
Knoppix?
Now, that has some serious potential, since I could run the OS from DVD/CD, and then use the whole 800MB for data. But I wanted something where I could choose what to install.
I could have gone the path of one of the modular Knoppix derivatives, but it was yet another task on the pile.
So, I went with.... ARCH.
ARCH Is Arch
Yes, ARCH is saucy. It installs in roughly 200MB, including kernel sources and GCC. That's quite small.
I managed to create a reasonable desktop in about 550MB, including:
- Scite:
-
A nice text editor
- Python:
-
Needed it to work in a few proggies.
- Firefox:
-
I have the RAM. The CPU is a 2.56 P4.
- Xorg 8.2 with Nvidia drivers:
-
And just for kicks, 3ddesktop to see if they work ;-)
- fluxbox:
-
I know it, and it's nice enough.
- putty:
-
Nicer than xterm, and has a handy SSH builtin.
- ROX Filer:
-
Not really all that useful, but what the hell, for 3MB you get sidebars, a file manager and a few extra tricks.
- Slim:
-
A very nice xdm replacement. Specially with the mindlock theme :-)
- upx:
-
Compress the exes. Save 30MB. Good.
- CherryPy:
-
It's what I am working with. And it's only 74KB.
- habak:
-
Simple, small tool to set the X root decoration.
- rsync:
-
Stay synced with my older desktop.
All included, I am at 120 packages, using 557MB of disk (with extensive trimming, see the original article for some examples).
So, what's the difference between this set of apps and my previous choice....
Well, look at the result of free:
total used free shared buffers cached Mem: 512544 408924 103620 0 33468 162916 -/+ buffers/cache: 212540 300004 Swap: 0 0 0
Just for laughs: here's the old one, when doing roughly the same things: editing an article, browsing the web, a few terminals:
total used free shared buffers cached Mem: 14708 14144 564 4644 816 5304 -/+ buffers/cache: 8024 6684 Swap: 47992 18880 29112
Scary isn't it? I am using roughly 25 times the amount of memory I used on the libretto. It's easy to see why, tho.
Consider the desktop. It shows a pretty picture. It is 1280x1024. It is in millions of colors. That is in RAM. That is either 3932160 or 5242880 bytes. On the libretto, I was intentionally not using anything there :-)
So, it really is not comparable anyway, and Monty's life as a malformed box will be short. But it was quite a bit of fun :-)