How little it takes

I have a list of software that I use regularly, and recommend as a consequence. It comes as a slight surprise though, to realize how little is truly required to make a functional, useful system.

Take, for example, the bought-for-scrap Pentium that was promoted to file server and torrent slave a week ago. The kernel I built for it is quite possibly the sparsest I’ve ever built — no USB, no sound, not even generalized support for hard drives.

On top of that, here’s the full and complete list of packages I have installed in Crux 2.6.

autoconf
automake
bash
bc
bin86
bindutils
binutils
bison
bzip2
coreutils
cpio
curl
db
dcron
dhcpcd
diffutils
e2fsprogs
ed
elinks
exim
file
filesystem
findutils
flex
gawk
gcc
gdbm
gettext
glib
glibc
grep
groff
grub
gzip
htop
httpup
iana-etc
inetutils
iproute2
iptables
iputils
kbd
less
libarchive
libattr
libcap
libdevmapper
libgmp
libmpfr
libpcre
libsigc++
libstdc++-compat
libtool
libtorrent
m4
make
man
man-pages
mc
mlocate
module-init-tools
nasm
ncdu
ncurses
net-tools
nfs-utils
ntp
openssh
openssl
patch
pciutils
perl
pkg-config
pkgutils
portmap
ports
procps
prt-get
prt-utils
psmisc
rc
readline
rsync
rtorrent
screen-vs
sed
shadow
sudo
sysfsutils
sysklogd
sysvinit
tar
tcp_wrappers
time
traceroute
udev
unzip
util-linux-ng
vim
wget
which
wireless-tools
xz
zip
zlib

The total space required for the system is around 1.2Gb, which means a whopping 118+ Gb are available for ISOs, file transfers, music and so forth.

More than half of that 1.2Gb is in the kernel source tree. Another 300Mb is in the ports folder, as source and compiled software packages.

So the actual software and system footprint is considerably smaller, although that’s rather hefty for a server system. If I were to throw out the kernel source and clean the ports tree of giant source packages (like gcc πŸ™„ ), I could probably fit it in a slimmer partition.

Point of all this is, it’s an underpowered throwaway machine that almost no one would want, and what it requires — in terms of money, energy, software or even hard drive space — to be a fully functional, critical member of the family … is almost nothing.

12 thoughts on “How little it takes

  1. tomas

    Hey, how would you go about doing a minimal install of arch on a netbook? I mean, what do you think can be left out from the base/-devel and what must stay there?

    Excuse my newbcakeness πŸ˜€

    tomas

    Reply
    1. K.Mandla Post author

      No need to apologize, tomas. Being new is not a sin. πŸ˜‰

      For my own part, I always omit cryptsetup, dash, dcron, device-mapper, jfsutils, licenses, logrotate, lvm2, mailx, mdadm, ppp, reiserfsprogs, rp-pppoe, texinfo, wpa-supplicant, and xfsprogs. I always add in base-devel and nfs-utils, openssh, sudo and wireless-tools.

      Aside from that, I can run a wired, e2fs-only system on what’s there, plus or minus any firmware that’s required.

      The funny thing about Arch is though, I know for a fact that a few of those will get installed anyway, as dependencies for either other core setup programs, or further on up the road, when I install software I like.

      So really, only about three or four of those might not actually get installed. Some will get drawn in anyway. 😐

      Reply
      1. mulenmar

        Forgot to put my own suggestions in here — on a netbook, I don’t install man-db or the man pages. In addition to the list you provided, K.Mandla. πŸ™‚

        I’m curious as to why you would leave out dash, though — it’s slightly more lightweight and works fine as a system-script shell. Or whatever the term for it is.

        Reply
  2. mulenmar

    Since you’re compiling so much anyway, why not make it a uClibc-based system? Possibly see what you can get to compile with tcc (Tiny C Compiler) too, while you’re at it?

    Reply
  3. prinzzchavo

    Thanks for the listing. I have been taking a look at my own list for a while, and never got under 3 Gb.

    Don’t get me wrong but, isn’t still 1Gb a little too much space for a lightweight example?

    I mean no disrespect (quite the opposite actually), but, after getting in contact with DSL, and some other Live-Light-Distros, I have the feeling there must be something we can do to lower that down anyhow.

    Reply
    1. K.Mandla Post author

      Well, again, the reason it rides at 1.2Gb is because the kernel source folder, after compilation, takes up about 650Mb. Add to that another 300Mb for my ports folder, and the system — the actual system itself — takes up a measly 400Mb or so.

      It’s not that bad. Like I said, if I were to clean out those folders it would be much, much smaller.

      Reply
  4. prinzzchavo

    Sorry for the misunderstanding of the actual post. Being a newbie, I didn’t know that the kernel source tree could be deleted. Now that I know, I’ll get back to the basics, and see what I can do with my 3Gb Installation.

    Thank you for maintaining such an inspiring blog(I guess my real-life commitments will not be that happy πŸ˜‰ ).

    Reply
  5. prinzzchavo

    Sorry to bother you with replies to old posts, but I just couldn’t get this one out of my mind.

    Linux and No TV and no beer make Homer go crazy
    Linux and No TV and no beer make Homer go crazy…

    So I got a test machine and will soon start testing minimum installations by myself.

    Thing is, I remember my first computer (Pentium, 200Mhz 16Mb RAM, R.I.P) used just a 500 Mb HDD, and I got Win95 on it. Either I am remembering it wrong(quite possible after 15 years), or there must be a way for linux to be that small, that fast, and much more useful!

    Now, based on this post and some others, I understand you would recommend me trying Crux but, are there any other distros to be really taken into account, if my goal is to have a Desktop environment (running X, if possible) that fits in an old, 2Gb hard drive? LFS, Tiny core, Puppy…all of them seem to be close, but not there.

    I know this sounds like hardcore-lightweighting, but still… any suggestion would be very much appreciated.

    …as God is my witness, I’m never going to be over 1Gb again!…

    PS: I’ll try to document my way to this achievement(if I get it done anyhow) on a blog, and would want to have your permission to mention your work at this blog. Deal?

    Reply
    1. K.Mandla Post author

      I enjoyed the little Scarlett O’Hara moment there. And of course, you can link back here if you like. You’re more than welcome. πŸ˜‰

      Reply
  6. Pingback: No two are alike « Motho ke motho ka botho

  7. Pingback: gcc the pig « Motho ke motho ka botho

  8. Pingback: Back to Debian, at 133Mhz and 32Mb « Motho ke motho ka botho

Leave a reply to prinzzchavo Cancel reply