Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 456270

Summary: Expand portage acceptable version specifiers
Product: Portage Development Reporter: ta2002 <throw_away_2002>
Component: Enhancement/Feature RequestsAssignee: Portage team <dev-portage>
Status: UNCONFIRMED ---    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description ta2002 2013-02-09 09:35:53 UTC
I tried to put ">~app-misc/foo-1.23" in /etc/portage/package.mask to reflect what I want (accept any 1.23-r* version, but mask anything greater than that).

This returned a "--- Invalid atom in /etc/portage/package.mask:" error message.

The logic seems straightforward and not difficult to program, so I believe it would be a reasonable enhancement to make this valid syntax.
Comment 1 Diego Elio Pettenò (RETIRED) gentoo-dev 2013-02-09 13:24:33 UTC
Just use

=app-misc/foo-1.23*

Portage is not Rubygems.
Comment 2 ta2002 2013-02-09 22:00:57 UTC
I am trying to mask anything GREATER THAN 1.23-r*.

It doesn't seem that there is any way (with the current syntax) of doing this.

And no, I cant use >=app-misc/foo-1.24, because that would be foiled by a 1.23.1.
Comment 3 Zac Medico gentoo-dev 2013-02-12 14:53:38 UTC
This should achieve the desired effect:

   echo app-misc/foo >> /etc/portage/package.mask
   echo =app-misc/foo-1.23* >> /etc/portage/package.unmask
Comment 4 ta2002 2013-02-18 04:19:12 UTC
(In reply to comment #3)
> This should achieve the desired effect:
> 
>    echo app-misc/foo >> /etc/portage/package.mask
>    echo =app-misc/foo-1.23* >> /etc/portage/package.unmask

Wouldn't that also handle a 1.23.1 incorrectly (I only want to accept 1.23-r*, but not 1.23.*)?
Comment 5 Zac Medico gentoo-dev 2013-02-18 04:33:36 UTC
(In reply to comment #4)
> Wouldn't that also handle a 1.23.1 incorrectly (I only want to accept
> 1.23-r*, but not 1.23.*)?

Yes, you'd have to use ~app-misc/foo-1.23 instead. The ~ operator matches any revision.