I'd like to provide a data point. On servers that I maintain, this is the complete list of manually-installed packages, excluding packages related to what the server actually _does_ -- that is, this, and nothing else, are what I consider vital to have available on a generic server that no one logs into except for maintenance.
This is a virtual machine guest configuration, running a completely monolithic kernel provided from outside the image, hence the absence of most hardware-configuration-related packages. Note also that I always turn off auto-installation of recommended packages, and that this particular server was upgraded from wheezy to jessie in the most straightforward fashion, which *didn't* install systemd, and I haven't bothered changing it. bind9-host (†) bsd-mailx (†) debsums dnsutils (†) iputils-ping less locales (*) logcheck logcheck-database lsof monit needrestart netcat-traditional (†) nullmailer nvi (‡) openntpd openssh-client openssh-server resolvconf strace udev (*) ufw unattended-upgrades unbound whois wget (*) - I don't understand why nothing depends on these. (†) - I am confused by the number of overlapping packages that do this job, and may not have picked the optimal ones. (‡) - vim is insufficiently bug-compatible with Solaris 2.5 vi for my fingers. Relative to the default install, the interesting bits, I think, are: + network and system diagnostic tools + unattended upgrade mechanism + monit (maybe systemd can replace this, but I'm not comfortable enough with it yet) + openntpd + unbound + nullmailer - all documentation - at - tasksel - exim - miscellaneous command-line tools that I can install if I ever need them (e.g. bzip2, cpio) The full package list (again, minus packages defining what the server actually _does_) is attached. zw
package.list
Description: Binary data