brianhks at activeclickweb.com
Sun Sep 23 10:30:25 MDT 2007
I really like Linux. The OS is fast and very stable. There is one little
aspect of Linux however that I just loath. This little aspect is the way
that software is installed on the computer.
I had an experience with Postgres that exemplifies the problem. I'm running
FC6 and I needed Postgres 8.2 for some testing I was doing. The YUM
repository only lets me install 8.1. Frustrated I downloaded the RPM from
Postgres and tried to install it that way. The package manager told me
there was a conflict with an older client library on my system. I tried to
remove the older library only to find it was tied to a dozen or so programs
including SVN - which I really cannot do without. Needless to say I was
thwarted at every turn.
I know I could have overridden the dependency checks or I could have
upgraded my OS. Now there is an option - "What are you doing tonight?", "Oh
I'm upgrading my OS how about you?". Oh sounds like a hot date night to me.
Maybe having a little software commune on their computer is appealing to
some but I hate it. On a server I can understand why you would put all of
your binary files under one directory. You can mount it read only for
security but, does anyone do that anymore? Besides my desktop is not
running as a production server.
OK I've ranted long enough, here is my solution. Change the package manager
to install everything under one directory. For example if I were to install
Postgres on my system it would create a directory /programs/postgres82/ and
put the program there. In the program directory it would create a /usr /var
/bin or whatever it needed for the application to install. The package
manager would also install whatever dependencies it required in the same
location. Think of it as doing a chroot before installing the program and
it's dependencies. I Then change the loader to look in the local program
directory for libraries before it goes to the system wide directories.
Now I know I may end up with multiple copies of a library but, big deal. I
have half a terrabyte of space on my computer, it can handle it. This
solution would let me install multiple copies of an application as well as
multiple versions of the same application. I could also just update one
application without the need to upgrade my OS.
I once saw a scholarly paper written to try and solve the dependency
problems that persist in Linux distributions. You know if the problem is
that complex maybe the solution is not to solve the problem but get rid of
So what is every ones opinion of this?
More information about the PLUG