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

Bug 626558

Summary: sys-apps/portage ignores updates for packages that are not dependencies and not in world file
Product: Portage Development Reporter: teefax <iskatu>
Component: Core - DependenciesAssignee: Portage team <dev-portage>
Status: RESOLVED WORKSFORME    
Severity: normal CC: tsmksubc
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description teefax 2017-07-29 20:54:10 UTC
I'am currently unable to update app-emulation/wine-vanilla from 2.12 to 2.13 with the following command:

$ emerge -auDNv --with-bdeps=y @world

There is no error message, the output is:

---
These are the packages that would be merged, in order:

Calculating dependencies... done!

Total: 0 packages, Size of downloads: 0 KiB

Nothing to merge; quitting.
---

Trying to update the package manually correctly discovers the update and the package builds without errors:

---

$ emerge -vqa1 app-emulation/wine-vanilla

[ebuild  NS   ] app-emulation/wine-vanilla-2.13 [2.12] USE="X alsa cups fontconfig gecko jpeg lcms ldap mono mp3 ncurses nls opengl perl png pulseaudio realtime run-exes ssl threads truetype udev udisks xcomposite xinerama xml -capi -custom-cflags -dos -gphoto2 -gsm -gstreamer -netapi -odbc -openal -opencl -osmesa -oss -pcap -prelink -samba -scanner (-selinux) {-test} -v4l" ABI_X86="32 64 (-x32)" LINGUAS="de en -ar -bg -ca -cs -da -el -en_US -eo -es -fa -fi -fr -he -hi -hr -hu -it -ja -ko -lt -ml -nb_NO -nl -or -pa -pl -pt_BR -pt_PT -rm -ro -ru -sk -sl -sr_RS@cyrillic -sr_RS@latin -sv -te -th -tr -uk -wa -zh_CN -zh_TW" 

---
Comment 1 Jouni Kosonen 2017-07-29 23:26:00 UTC
This may be a silly question, but is app-emulation/wine-vanilla actually in your @world (/var/lib/portage/world or some set referenced in /var/lib/portage/world_sets) ?
Comment 2 teefax 2017-07-30 04:51:05 UTC
virtual/wine is in my world and it depends on app-emulation/wine-vanilla.

 * Searching for wine in virtual ...
 * dependency graph for virtual/wine-0-r4
 `--  virtual/wine-0-r4  ~amd64 
   `--  app-emulation/wine-staging-2.12  (app-emulation/wine-staging) ~amd64  [staging]
   `--  app-emulation/wine-any-9999  (app-emulation/wine-any) [missing keyword]  [staging]
   `--  app-emulation/wine-d3d9-2.12  (app-emulation/wine-d3d9) ~amd64  [d3d9]
   `--  app-emulation/wine-vanilla-2.13  (app-emulation/wine-vanilla) ~amd64 
[ virtual/wine-0-r4 stats: packages (5), max depth (1) ]
Comment 3 teefax 2017-07-30 09:31:49 UTC
Ok, the reason seems indeed to be that wine-vanilla is not in world. virtual/wine depends on any of wine-d3d9 / wine-any / wine-staging / wine-vanilla. I have the d3d9 and staging USE flag enabled on virtual/wine, so wine-d3d9 and wine-staging are pulled in and the dependencies for virtual/wine are resolved. Because wine-vanilla was already installed before enabling those USE flags, I just assumed that with USE="d3d9 staging" I would get all three of vanilla/staging/d3d9. I have now explicitly selected wine-vanilla and portage offered the update.

However, wine-vanilla was also not being removed when I ran `emerge -ac`. So I ended up in the situation that this package was neither removed nor updated by portage.

I would have expected that portage either removes the package, updates it or at least gives some hint that this particular package is not required anymore.