

Booting a Modern Linux Desktop in Just ~200MB - Tsiolkovsky
http://www.phoronix.com/scan.php?page=article&item=slax_internal_process&num=1

======
csense
Most modern distributions use initramfs. It usually contains a minimal shell
and set of command-line tools (often Busybox-based).

In most distributions, initramfs's main responsibility is to figure out where
the OS the user wants to run is installed, mount it, and hand off PID #1 to
the init binary in the mounted FS.

The reason initramfs exists is to allow the logic to do this to be part of the
distribution, not the kernel. That way, distributions can have arbitrarily
complicated procedures for accomplishing the above tasks. Or even deviate from
the standard "find, mount, exec" pattern described above entirely: For
example, if you're creating a simple embedded system where space is at a
premium and your system will only ever execute one program, you might be able
to save some space by statically linking the program and saving it as 'init'
in your initramfs. If you compile your own kernel, there's even an option to
meld the kernel and initramfs into a single file.

On Ubuntu- (and AFAIK most Debian-like systems), a set of scripts in the
initramfs-tools package is used to rebuild the initramfs when a new kernel
version is installed, or manually upon user request. (The most common reason
for manually running update-initramfs is adding kernel modules for drivers
that are necessary to access the filesystem you want to use as root, e.g. LVM
or NFS.)

------
wslh
200MB? that's a lot! there was a QNX demo that entered in a 1.44 MB floppy
disk. I also built a proof of concept running Squeak over Linux within the
same size: <http://swain.webframe.org/squeak/floppy/>

~~~
sliverstorm
I don't know if I would call QNX a "modern desktop". 200MB is not a floppy,
yes, but part of the value equation proposed here is how much you get, not
just how little it costs you in space.

~~~
rsyncinside
With QNX you get a RTOS. You get a higher level of reliability, dependability
than with multitasking. You don't get that sort of reliability with some pre-
packaged Linux distribution. You need to do some nontrivial kernel hacking to
make Linux into a RTOS.

Why did Blackberry buy QNX?

~~~
sliverstorm
I've got nothing against QNX, but I don't think RTOS is what a "modern linux
desktop" is about.

------
jlgreco
The interesting thing here really isn't the 200MB footprint (this fails to
impress me), but rather union mounting. Seems like something that you could do
some very neat things with, particularly if modified to allow unioning local
and remote storage, using local as a sort of cache.

A union of, say, your $HOME and your dropbox account could be very neat.

~~~
krichman
Is this like the bind command in plan9, and is it available for Debian-based
Linuxes?

~~~
jlgreco
Union filesystems in linux are like union mounts in plan9, if I understand it
correctly. You should be able to get a union filesystem working on a debian-
based system, though I have no personal experience with doing so.

~~~
krichman
I will have to check this out! I've been wishing for bind on other systems for
a while now, but didn't think to check for it.

------
DanBC
Slitaz (<http://www.slitaz.org/en/>) claims to provide a fully featured Linux
desktop environment in 35 Mb. (!92 Mb RAM) It uses LXDE and Openbox.

It has great internationalisation.

It has scary stuff that people should be careful of.

There are a few minimal Linux distributions - LFS; TinyCore, etc.

I'm not sure where TomsRtBt fits in the list anymore, but he crammed quite a
lot onto a floppy disc.

~~~
koenigdavidmj
Scary stuff?

~~~
DanBC
Well, just everything runs as root all the time.

------
kraemate
I have an "old" 2006 era laptop with all of 176 MB of RAM (oh, and 1000s of
bad addresses, so it keeps segfaulting all the time). On this setup i use
stock Ubuntu 7.10 (the last Ubuntu which "worked"). And its not stripped down
or anything --- run firefox, emacs, beagle destkop search, watch movies, etc.

Seriously, if you have low hardware resources, pick a 5-7 years old distro and
you'll be fine.

~~~
dfc
You will be fine as long as you don't want security updates.

------
dhughes
LFS mentions a 5MB working OS but the linked email seems to indicate it's
really 10MB and stripped to the bare minimum.

[http://linuxfromscratch.org/pipermail/lfs-
support/2001-Octob...](http://linuxfromscratch.org/pipermail/lfs-
support/2001-October/000202.html)

------
d--b
er... 200 MB is pretty big. The fact that it looks like a feat is alarming!

~~~
asdfs
It's a fair amount, but considering it has a more or less complete KDE desktop
and Firefox, it's pretty interesting.

~~~
supergauntlet
Yeah, I don't believe that the interesting part of SLAX is the small size
(many distros have done this before, like Puppy linux, DSL, etc), but rather
what they've managed to fit into it.

Shoehorning KDE4 into a 200mb distro is pretty impressive. I used SLAX a while
back for a short period of time, and I might have to give it another go.
Hopefully there's an easy way to remove KDE and add XFCE. Last I checked KDE
desktop was checked as a dependency for nearly everything, which made
switching DEs a real pain.

