April 18th, 2007


minimizing fedora

So just for fun, I've been playing around with trying to see how small of an install I can do, and yet still have a "useful" and extensible machine. I'm one of those people who hates having extra stuff on a machine, and so I'm trying to figure out how minimal I can make an install while still being able to ssh into the box, have a firewall, and have yum there to add other packages as needed.

Where am I going with this? My goal is to take my minimal package set and then use Pungi and/or Revisor in order to build my own custom distro of Fedora, so I can speak intelligently about how it *actually works* at things like the Red Hat Summit and LinuxTag.

I'm using kickstart to do this. I started with @core and @base, and then started excluding packages that were in the comps file but that seemed "non-essential". I noticed that some of those packages were getting pulled back in during install anyway, but I was able to use a "yum remove" in the %post in order to get rid of them a second time.

Here's what I've managed. Patches or improvements cheerfully accepted. The initial install set is 252 packages, but once the "yum remove" goes through in the %post section, it's down to 236 packages (and about 725 MB of disk space). I realize I could get rid of one more package by removing @editors (and therefore vim-enhanced), but I like vim-enhanced.

url --url http://download.fedora.redhat.com/pub/fedora/linux/core/development/i386/os/
lang en_US.UTF-8
keyboard us
firewall --enabled --port=22:tcp
authconfig --enableshadow --enablemd5
selinux --disabled
timezone --utc America/New_York
zerombr yes
bootloader --location=mbr
clearpart --all
rootpw CHANGE_ME

%packages --ignoremissing

/usr/bin/yum remove -y bc cups desktop-file-utils libdrm libICE libXxf86vm
/usr/bin/yum remove -y make rmt wireless-tools system-config-network-tui
/usr/bin/yum remove -y system-config-securitylevel-tui yum-updatesd
/usr/bin/yum remove -y xorg-x11-filesystem iptables-ipv6
/usr/bin/yum update -y