Note: Due to technical difficulties, the Archives are currently not up to date.
GMANE provides an alternative service for most mailing lists. c.f. bug 424647
List Archive: gentoo-dev
Say we have a group of packages. For the sake of argument, we'll call
them 'vim', 'nvi', 'elvis' and 'vi'. Each of these packages provides a
binary with the same name as the package. So far no problem...
Now let's say that each of these packages were clones or derivatives of
a traditional unix package, which provided binaries named 'vi', 'view'
and 'ex'. A user installing any one of these packages would expect to be
given convenience symlinks which would allow them to access the packages
via the traditional names. Suddenly we have a problem -- what if a user
has more than one of these packages installed?
Oh, and to make it even more fun we'll say that certain non-Linux
systems already provide a binary with the traditional name...
One way to go about it would be to introduce blocks. This is pretty
stupid though -- the only conflict is a measly symlink. So... Some
genius please provide a suggested way to handle this kind of situation
that doesn't involve any of the following:
* hard coding knowledge of all the packages in a group into every single
ebuild in a group
* hard coding lots of lists into a single eclass
* making one eclass per group of packages affected by this issue
For reference, you might want to look at the existing code in vim.eclass
for updating symlinks. Note that it's really ugly and doesn't honour
${ROOT} like it should. There's also alternatives.eclass but that only
seems to handle SLOTted packages.
--
Ciaran McCreesh : Gentoo Developer (Vim, Fluxbox, Sparc, Mips)
Mail : ciaranm at gentoo.org
Web : http://dev.gentoo.org/~ciaranm
|
|