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

Bug 694164

Summary: emerge -u <package> does not consider masked versions
Product: Portage Development Reporter: Simon <sur3>
Component: Core - Interface (emerge)Assignee: Portage team <dev-portage>
Status: RESOLVED DUPLICATE    
Severity: major CC: bkohler
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Simon 2019-09-12 16:17:27 UTC
I had an old signal-desktop-bin installed in world and this didn't get updated with world and not even when calling update on the package explicitly but only when forcing the merge: https://nopaste.xyz/?34f348f8f366e8e1#dgYfi3VfawGVgo0+OqDhASWuD9xRdN9Lm6gyRlVKkdQ=

Reproducible: Always
Comment 2 Simon 2019-09-12 16:19:28 UTC
That no paste link is broken somehow, here a pastebin link instead: https://pastebin.com/raw/83ysnXgN
Comment 3 Ben Kohler gentoo-dev 2019-09-12 16:20:38 UTC
Autounmask is telling you that you need a new package.accept_keywords entry to allow this upgrade.

To see it another way, try "emerge -pv --autounmask=n signal-desktop-bin"

In the future, please attach logs to the bug (or just put the text in a comment), do not use external pastebins.
Comment 4 Simon 2019-09-13 09:41:10 UTC
But normally emerge -upv is also telling me to unmask, why didnt it do this for this package?!
Comment 5 Simon 2019-09-13 09:52:48 UTC
I changed it back from resolved to unconfirmed as your explanation does not apply because --autounmask is enabled by default and there is no reason why -u should disable it?!
Comment 6 Ben Kohler gentoo-dev 2019-09-13 14:53:25 UTC
Because you already had it installed.  It chose to stick with the installed version, no unmask was needed to stay at that version.
Comment 7 Simon 2019-09-13 16:44:39 UTC
This is flawed as the installed version was not even in portage anymore it should therefore have a lower priority than a ~arch version if no stable is in portage!
Comment 8 Zac Medico gentoo-dev 2019-09-13 17:11:18 UTC
(In reply to Simon from comment #2)
> That no paste link is broken somehow, here a pastebin link instead:
> https://pastebin.com/raw/83ysnXgN

Copied here:

> # emerge -upv signal-desktop-bin
> 
>  * IMPORTANT: config file '/etc/portage/package.use/packages' needs updating.
>  * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
>  * sections of the emerge man page to learn how to update config files.
> 
> These are the packages that would be merged, in order:
> 
> Calculating dependencies... done!
> 
> Total: 0 packages, Size of downloads: 0 KiB
> 
>  * IMPORTANT: 2 news items need reading for repository 'gentoo'.
>  * Use eselect news read to view new items.
> 
> # emerge -pv signal-desktop-bin
> 
>  * IMPORTANT: config file '/etc/portage/package.use/packages' needs updating.
>  * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
>  * sections of the emerge man page to learn how to update config files.
> 
> These are the packages that would be merged, in order:
> 
> Calculating dependencies... done!
> [ebuild     U ~] net-im/signal-desktop-bin-1.27.2::gentoo [1.25.1::gentoo] 83.525 KiB
> 
> Total: 1 package (1 upgrade), Size of downloads: 83.525 KiB
> 
> The following keyword changes are necessary to proceed:
>  (see "package.accept_keywords" in the portage(5) man page for more details)
> # required by signal-desktop-bin (argument)
> =net-im/signal-desktop-bin-1.27.2 ~amd64
> 
>  * IMPORTANT: 2 news items need reading for repository 'gentoo'.
>  * Use eselect news read to view new items.
> 
> # emerge -DNupv world
> 
>  * IMPORTANT: config file '/etc/portage/package.use/packages' needs updating.
>  * See the CONFIGURATION FILES and CONFIGURATION FILES UPDATE TOOLS
>  * sections of the emerge man page to learn how to update config files.
> 
> These are the packages that would be merged, in order:
> 
> Calculating dependencies... done!
> 
> Total: 0 packages, Size of downloads: 0 KiB
> 
> !!! The following update(s) have been skipped due to unsatisfied dependencies
> !!! triggered by backtracking:
> 
> virtual/perl-File-Path:0
> virtual/perl-Time-Local:0
> 
>  * IMPORTANT: 2 news items need reading for repository 'gentoo'.
>  * Use eselect news read to view new items.
> 
> # grep signal /var/lib/portage/world
> net-im/signal-desktop-bin
> #
Comment 9 Zac Medico gentoo-dev 2019-09-13 17:37:38 UTC
(In reply to Simon from comment #5)
> I changed it back from resolved to unconfirmed as your explanation does not
> apply because --autounmask is enabled by default and there is no reason why
> -u should disable it?!

The thing is, the -u flag makes emerge happy with the installed instance, so there's no reason for it to trigger --autounmask logic here. This behavior is intended for cases where users might be using binary packages for which corresponding ebuilds are not available. Bug 452732 and/or bug 250418 are possibly related.
Comment 10 Simon 2019-09-13 18:00:39 UTC
Ahh thx for the hints, looks like a duplicate of https://bugs.gentoo.org/452732 then..
I tried the -e option suggested there and with emerge -DNeupv world I really get some additional updates compared to without -e, but sadly I also get a lot of rebuilds as well, it should only update -eu is specified I think, otherwise the -u makes no difference there right..?
Comment 11 Zac Medico gentoo-dev 2019-09-13 18:05:28 UTC

*** This bug has been marked as a duplicate of bug 452732 ***
Comment 12 Zac Medico gentoo-dev 2019-09-13 18:07:57 UTC
(In reply to Simon from comment #10)
> I tried the -e option suggested there and with emerge -DNeupv world I really
> get some additional updates compared to without -e, but sadly I also get a
> lot of rebuilds as well, it should only update -eu is specified I think,
> otherwise the -u makes no difference there right..?

The -e option overrides the -u right here were it disables the "selective" flag that -u implies:

https://gitweb.gentoo.org/proj/portage.git/tree/lib/_emerge/create_depgraph_params.py?h=portage-2.3.76#n102