Since the topic was mentioned - and I don't have anything else to do at present, except type notes, I thought I'd mention dependency hell. I haven't posted anything to the list in probably close to a year. Regardless of what package manager you happen to be using you can still get caught in dependency hell because of lazy package maintainers that don't name their packages properly or worse - embed static version numbers in the package metadata. Personally, I'd rather see dpkg and rpm BOTH be tossed into the dustbin. Binary package managers are dependent on cooked up pre-install or post-install scripts and package metadata to work properly, and quite often fall flat on their face if you do something unexpected. Not to say that source distribs like Gentoo are any better. I definately don't want to spend 3-6 days compiling software just to discover I left out a compiler flag and have to start over from scratch. I think personally the greatest problem with UNIX in general is the fact that most versions/derivatives follow the same standard that in naming the dynamic libraries used by Sun - in effect: name.so.version.subversion. and then symlink it to some otherwise obscure name. While this works well enough, it also causes 9/10ths of the dependency problems that everyone has and necessitates the package metadata because different distributors sometimes have very nasty habit of adding additional numbers or names to the original libraries that they obtain from an upstream provider. Now the linker cache solves some of the dynamic resolution problems by maintaining symbol data, and as a last resort you can always rename or symlink to a different name. I'd be much happier myself if they removed the version.subversion portion of the name from the libraries - after all they symlink names to remove version numbers anyway. They could also drop the POSIX tradition of /usr/lib, /lib, and /usr/local/lib to place libraries in a common directory with personalized versions installed in ~/lib. Granted, again if your linker cache is properly working, the library path is immaterial, because all you have to do is use ldconfig, but there are so many idiots out there who like to hardcode paths into software. Most Linux distribs are finally getting it into their heads that you have to leave the library names and version numbers the same as the upstream provider intended in order to ensure compatibility. The LSB (Linux Standard Base) is really a joke. The community in general can't agree on anything - much less a common directory and package standard. I think a percentage of developers out there realize some of this - because there is a quiet but progressive groups working toward a "componentized" Linux - where software is broken down into components rather than distributions - and can be installed regardless of distribution - RedHat or whatever. There - done with my rambling for the moment.