On Sun, 2007-09-23 at 10:30 -0600, Brian Hawkins wrote:
> 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.

I like your overall idea, but there are a few problems with it.
1. Multiple copies of libraries can be really annoying.  Take the
OpenSSL library and it's trusted root CA list.  Maintaining several
lists is not fun.  
2. It will make your $PATH env variable really really long.  Unless you
want to specify full paths to every command you run.

You can try other distro's which handle package installations of
non-default versions better.  IMHO, Debian based distros handle it a
little better, due to the stable,testing,unstable branches.  Gentoo
handles it much much better due to it's source compiling nature.

However, my overall advice is to just install the non-default version
from source, then upgrade it to the binary package when, or if that
becomes available.  In general, the times where you need a version not
in the default repositories is rare enough to not have to start a whole
new package management philosophy.

--lonnie

/*
PLUG: http://plug.org, #utah on irc.freenode.net
Unsubscribe: http://plug.org/mailman/options/plug
Don't fear the penguin.
*/

Reply via email to