When pam is not installed (and it's useflag previously disabled) and you want to install pam with use consolekit and use gnome-keyring it will fail because consolekit and gnome-keyring first need to be compiled with pam support. In order for gnome-keyring and consolekit to be compiled with pam support, pam needs to be installed. A workaround is to install pam (don't install stuff like pambase (which will fail anyway) yet), then install consolekit and gnome-keyring with pam support (they will be able to compile now that pam is installed) and then finish up installation of pam or world or whatever... Reproducible: Always Steps to Reproduce: 1. disable use pam 2. remerge world 3. enable use pam, use consolekit, use gnome-keyring 4. update world (rebuild packages with new use flags) Actual Results: installation will fail on sys-auth/pambase because it wants consolekit and gnome-keyring with pam support, but because of the circular deps it decides to go for pambase first. Expected Results: If the circular dep is resolved, the expected result is that first pam will be installed, then consolekit and gnome-keyring and after that pambase Tried with paludis only.
Please post your `emerge --info' too.
Hm this is strange, since pambase is, for the right reasons a PDEPEND. This means that the order would be sys-libs/pam then sys-auth/pambase and as pambase requires consolekit sys-libs/pam then consolekit then sys-auth/pambase at which point consolekit does have sys-libs/pam available.
In order to solve cases like bug #180045, PDEPEND behaves more like RDEPEND than it has in the past. In order to ensure correct merge order in cases like this, USE dependencies are the best solution (and those require a bump to EAPI 2).
Okay, Michael which version of pambase are you using? Latest ~arch _is_ using USE deps (EAPI=2).
I'm using the stable (x86) version, I already noticed the EAPI 2 ebuilds when filing the bug, but it didn't come to mind that they'd change the behaviour in this case. So my guess is it's fixed already when using the newer ebuilds. Thanks for all the comments!
I don't use PAM and have it uninstalled for quite a few years. This is the first time I have had to do something to work around that. Not sure why I am being required to install pam just for consolekit? Part of the reason for USE Flags is to customize your install. So am I to understand I must install Pam on all my boxes just because of this? Okay this is weird: If do a emerge -upDN world it requires me to install pambase If do a emerge -up world it doesn't. First got this info from someone else cause I usually just do '-u' to emerge and not '-uDN', they ran into it and now I have when started testing it out. Guess will do just -u world so don't have to install pambase. Is the future of consolekit? You can't use the USE Flags to not install PAM?
(In reply to comment #6) > I don't use PAM and have it uninstalled for quite a few years. This is the > first time I have had to do something to work around that. Not sure why I am > being required to install pam just for consolekit? Part of the reason for USE > Flags is to customize your install. File another bug for it, don't abuse this one.
I think saying, "File a new bug report on this.", would have been sufficient. Have a good day.
I haven't seen this reported in a while, so I'll suppose it's fixed.
(In reply to comment #9) > I haven't seen this reported in a while, so I'll suppose it's fixed. What kind of comment is this? How can you argue about QA on your blog all the time, and close this bug because it hasn't been reported in a while? Have you tried the listed steps and validated it's working correctly right now?
No, I can only see that yes there is a circular dep but no, I cannot change it any other way, so I assume either people can deal with that or Portage is doing so. It's also very low priority because it does not involve stages (they have pam enabled) and I'M STILL FRIGGING ONE MAN TRYING TO DEAL WITH THE F*CKING MESS THAT PAM IS IN GENTOO. So no, if nobody else but you and Decibels hit this bug in two years, I consider this worked around or at the best of its state.
All versions of sys-auth/pambase in the tree see to have the appropriate USE dependencies now. For example, the oldest version is sys-auth/pambase-20090620.1-r1 and it has the following relevant dependencies: consolekit? ( >=sys-auth/consolekit-0.3[pam] ) gnome-keyring? ( >=gnome-base/gnome-keyring-2.20[pam] )