[EMAIL PROTECTED] said:
> I wish this could be handled by some form of union mounts.  Let's say   you
> install some applications in /opt/foo-version and /opt/bar-version   like the
> above apache example.  Then you could do something like   "mount -F union /
> opt/foo-version /opt/local" and "mount -F union /opt/  bar-version /opt/
> local".  If you upgrade the foo application then you   unmount the current
> version and mount the new one. 
> . . .
> Users would only require /opt/local/bin (or some other standards   compliant
> path) in their PATH.  If users were allowed to do their own   union mounts
> they could even build their own collection of software.    It would be easy
> to find which package a file belongs to since you   could find out from which
> file system the file originated.  The   binaries in a package would still
> access config files etc. using the /  opt/foo-version path. 


I've been doing something similar for years, except using the "magic"
of symlinks.  Install packages in /opt/<vendor>/pkgname-version/, then
in /usr/local/bin/ (or /opt/local/bin/, whatever you choose) you maintain
symlinks to the binaries from where they're actually installed.  I use a
tool like "slink" or "cfengine" to maintain the directory of symlinks,
and users only need to add /usr/local/bin/ (/usr/local/sbin/, ...) in
their PATH's.

If a user wants to override the "system" choice in /usr/local/bin/, they
can have their own $HOME/bin/ with symlinks (or real binaries) to their
preferred version.  A simple "ls -l /usr/local/bin/foo" easily tells one
where the binary comes from.

Regards,

Marion


_______________________________________________
opensolaris-discuss mailing list
opensolaris-discuss@opensolaris.org

Reply via email to