7

I need to install an older version of x11-libs/bamf package , as you can see below there are different versions available I want to install 0.5.0[2], but it always go to 9999 version using "emerge bamf" i even used "emerge bamf-0.5.2" but no luck, how can I tell the portage which version I need?

USER ~ # eix bamf
* x11-libs/bamf
     Available versions:  
     (0)    ~0.3.6-r200[1] 0.5.0[2] (**)9999[2]
     (3)    (~)0.3.6-r300[1]
       {doc +introspection static-libs}
     Homepage:            https://launchpad.net/bamf
     Description:         BAMF Application Matching Framework

[1] "angelos" /var/lib/layman/angelos
[2] "elementary" /var/lib/layman/elementary

2 Answers 2

6

As jimmij pointed out, you can select a particular version by prefixing the package atom with an equals ('=') sign. But you can also tell emerge which overlay to use.

I we assume that there exists an ebuild for x11-libs/bamf-0.5.0 in two or more overlays, you could select an particular overlay by appending ::<overlayName> to the end of the package atom.

For example

emerge -a x11-libs/bamf::elementary

or with the version specified

emerge -a =x11-libs/bamf-0.5.0::elementary
3

You need to add = at the beginning of the package name, so try

emerge -a =x11-libs/bamf-0.5.0

You can also add a line to /etc/portage/package.mask in order to prevent emerge installing higher version:

>x11-libs/bamf-0.5.0
1
  • 2
    Using the = is dangerous, as the next time the package is upgraded, the specific version will be ignored. As such, add the package atom to /etc/portage/package.mask first then emerge the package without the =.
    – eyoung100
    Commented Mar 2, 2015 at 17:25

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .