💾 Archived View for warmedal.se › ~bjorn › posts › 2021-11-27-damn-small-software.gmi captured on 2021-12-06 at 14:29:53. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2021-11-30)
-=-=-=-=-=-=-
Now and again I go back to looking at the Damn Small Linux website. I never tried it but I absolutely love the idea. It was a desktop OS at only 50 MB, meant to include everything you may need on a daily basis. Of course it had to go with small scale versions for most things, but it packed no less than three different web browsers, two window managers, word processor, spreadsheet editor, pdf reader, and more. Wow!
The last release was a release candidate: 4.11rc2, on September 27, 2012.
But what is a small OS today? Could we achieve a fairly full featured desktop OS at 50 MB in 2021 (soon 2022, I guess)?
A lot of Linux versions today have a "Lite" version, meant for servers. Notably it never includes a graphical server (like X11 or Wayland), window manager, or any graphical interface programs (of course). But they do include a lot of other things. SSH server, multiple different text editors, some scripting language interpreters, firewall and other network tools, often systemd. The list goes on.
I run Raspberry Pi OS Lite (formerly Raspbian Lite) on my server, and it weighs in at 1.4 GB in its base installation. That's almost 29 times more than Damn Small Linux.
I don't know how big the Linux kernel is these days. I don't know how small an installation of just the kernel, GNU toolchain, and init system would be. If container installations are anything to go by the official Alpine Linux image is only 5 MB.
These are the things I regularly use for my personal computing:
I've estimated the sizes with 'dpkg-query | grep program' and summarising the resulting hits if they look like they're related. This definitely causes some errors. I can't for a minute imagine that GIMP is only 194 MB for example.
This doesn't even include the graphical server (Wayland), snap itself, GTK, or any of a number of dependencies like OpenSSL, libcurl, alsa, a collection of default fonts, gcc, and more. Nor does it include the pdf reader, GNOME, firewall, systemd, language packs, a number linux-modules-extra packages that I don't even know what they're for, media player, and hundreds more.
If we assume that 5 MB is the minimum base to build upon, and 50 MB in total is our soft target (meaning it's okay to overshoot, but at least aim for it), then what would you include?
Personally I have no idea. I obviously have to find lighter alternatives to almost all of my current programs. The text editor nano weighs in at 0.9 MB, for example. Maybe that could work to replace both gedit and vim. I'd have to replace some keybindings or change my keyboard layout, because some commands are incompatible with a Swedish keyboard.
I write a whole lot of stuff in python3. I don't know what I would substitute for that. Neither do I know what to use instead of GIMP or inkscape. Or graphical server and window manager, word processor and spreadsheet editor, pdf reader, web browser, media player. The list goes on.
-- CC0 ew0k, 2021-11-27