On Mon 15 August 2011 19:31:37 Sebastian Beßler did opine thusly:
> I just tried
> 
> emerge -DuN @world @system -va
> 
> and got:
> 
> These are the packages that would be merged, in order:
> 
> Calculating dependencies ... done!
> [ebuild     U  ] perl-core/ExtUtils-ParseXS-3.20.0 [2.22.06] 0 kB
> [ebuild     U  ] www-client/firefox-bin-5.0 [3.6.19]
> USE="startup-notification"
> [ebuild  N     ] x11-themes/tango-icon-theme-0.8.90  USE="png" 0 kB
> [ebuild  N     ] media-plugins/kipi-plugins-2.0.0  USE="cdr crypt
> imagemagick mediawiki opengl (-aqua) -calendar -debug -expoblending
> -gpssync -handbook -ipod (-kdeenablefinal) -mjpeg -redeyes -scanner"
> 
> [ebuild  N     ] media-gfx/digikam-2.0.0  USE="gphoto2 handbook
> thumbnails -addressbook (-aqua) -debug -doc (-kdeenablefinal) -mysql
> -semantic-desktop -themedesigner -video"
> 
> [ebuild  N     ] xfce-base/xfce4-meta-4.8  USE="session svg
> -minimal" 0 kB
> 
> Total: 6 packages (2 upgrades, 4 new), Size of downloads: 15,432 kB
> 
> The following keyword changes are necessary to proceed:
> #required by @selected, required by @world (argument)
> 
> >=perl-core/ExtUtils-ParseXS-3.20.0 ~amd64
> 
> NOTE: This --autounmask behavior can be disabled by setting
>       EMERGE_DEFAULT_OPTS="--autounmask=n" in make.conf
> 
> But if I run:
> 
> EMERGE_DEFAULT_OPTS="--autounmask=n" emerge -DuN @world @system -va
> 
> I get:
> 
> These are the packages that would be merged, in order:
> 
> Calculating dependencies                   ... done!
> [ebuild     U  ] www-client/firefox-bin-5.0 [3.6.19]
> USE="startup-notification"
> [ebuild  N     ] x11-themes/tango-icon-theme-0.8.90  USE="png" 0 kB
> [ebuild  N     ] media-plugins/kipi-plugins-2.0.0  USE="cdr crypt
> imagemagick mediawiki opengl (-aqua) -calendar -debug -expoblending
> -gpssync -handbook -ipod (-kdeenablefinal) -mjpeg -redeyes -scanner"
> 
> [ebuild  N     ] media-gfx/digikam-2.0.0  USE="gphoto2 handbook
> thumbnails -addressbook (-aqua) -debug -doc (-kdeenablefinal) -mysql
> -semantic-desktop -themedesigner -video"
> 
> [ebuild  N     ] xfce-base/xfce4-meta-4.8  USE="session svg
> -minimal" 0 kB
> 
> Total: 5 packages (1 upgrade, 4 new), Size of downloads: 15,432 kB
> 
> Would you like to merge these packages? [Yes/No]
> 
> [LINGUAS was stripped by me to remove unneded clutter from this
> post]
> 
> I run ~amd64 but have =perl-core/ExtUtils-ParseXS-3.20.0 -~amd64
> because of a bug with imagemagick [#378383].
> 
> Why is autounmask trying to unmask ExtUtils-ParseXS if it's not
> needed? Should I report this as a bug?

It's not a bug, portage is doing what it should.

In the first case portage will try upgrade all packages to the latest 
version. It sees that you asked it to try autounmask stuff, so it 
wants to override your local mask for ExtUtils-ParseXS. 

In the second case you have told portage to upgrade system and world 
but to leave masking well enough alone. As your current installed 
version of ExtUtils-ParseXS satisfies all needs, it makes no effort to 
try and upgrade it.

The trick to working with autounmask is to realise that it is stupid 
software, it cannot possibly know what you want or intend. So it tries 
a blanket approach for the most part. If you have more complex masking 
than just stable/unstable statistically it will be wrong far more 
often than it is right.

It's possible to come up with an "autounmask ignore" file but that 
gets way too complex really quickly and easily turns into an 
unmaintainable mess. Devs are usually reluctant to go this route, as 
the mess just ends up in their inbox.




-- 
alan dot mckinnon at gmail dot com

Reply via email to