Gordon Messmer:
What's htdig got to do with pie charts?
Tim:
Nothing, it was part of another conversation: A minimal, headless, X-less, server installation installing graphical library files.
Gordon Messmer:
Oh. Sorry, I missed some connection. To address that, then:
# rpm -q --whatrequires `rpm -q --provides libpng` | grep -v '^no ' cups-libs-1.1.22-0.rc1.9.11 # rpm -q --whatrequires `rpm -q --provides cups-libs` | grep -v '^no ' cups-1.1.22-0.rc1.9.11 # rpm -q --whatrequires `rpm -q --provides cups` | grep -v '^no ' redhat-lsb-3.0-8.EL
So, there you go. "libpng" is needed by cups. "cups" is needed for LSB conformance. That's why you have graphics libraries on a headless server.
But CUPS isn't *needed* on a PC. Sure, you might want it if you're printing. But there's going to be a plethora of boxes that don't need to print. A headless HTTP server, or mail server, or new server, etc., just being some of them. They won't need to print, or be printed to.
Requiring CUPS is a bogus requirement. Maybe CUPS should be a requirement if you're including printing support, but it shouldn't be, otherwise.
CUPS, being just one example of this mentality. We could "require" BIND, because Linux does need to resolve hostnames, but we don't (don't require *it* as the solution).
Some people, and I don't mean you, but those putting together what they think is a minimal install list, have a strange idea about what minimal and required actually mean.
But disregarding minimalism, there's still plenty of situations where a rather extensive installation won't need various things considered to be "required", but actually aren't. And that bloats out installations to the point that we needlessly have to get multi-gigabyte hard drives to do moderately basic installations.