Section: portage (5)
Updated: Jun 2019Index
Return to Main Contents
alternatives.eclass - Creates symlink to the latest version of multiple slotted packages.
When a package is SLOT'ed, very often we need to have a symlink to the
latest version. However, depending on the order the user has merged them,
more often than not, the symlink maybe clobbered by the older versions.
This eclass provides a convenience function that needs to be given a
list of alternatives (descending order of recent-ness) and the symlink.
It will choose the latest version it can find installed and create
the desired symlink.
There are two ways to use this eclass. First is by declaring two variables
$SOURCE and $ALTERNATIVES where $SOURCE is the symlink to be created and
$ALTERNATIVES is a list of alternatives. Second way is the use the function
alternatives_makesym() like the example below.
alternatives_makesym "/usr/bin/python" "/usr/bin/python2.3" "/usr/bin/python2.2"
The above example will create a symlink at /usr/bin/python to either
/usr/bin/python2.3 or /usr/bin/python2.2. It will choose python2.3 over
python2.2 if both exist.
Alternatively, you can use this function:
alternatives_auto_makesym "/usr/bin/python" "/usr/bin/python[0-9].[0-9]"
This will use bash pathname expansion to fill a list of alternatives it can
link to. It is probably more robust against version upgrades. You should
consider using this unless you are want to do something special.
automatic deduction based on a symlink and a regex mask
The alternatives pkg_postinst, this function will be exported
The alternatives pkg_postrm, this function will be exported
The symlink to be created
The list of alternatives
Original author: Alastair Tse <email@example.com> (03 Oct 2003)
Please report bugs via https://bugs.gentoo.org/
- ECLASS VARIABLES
- REPORTING BUGS
- SEE ALSO
This document was created by
using the manual pages.
Time: 03:25:02 GMT, June 18, 2019