Summary: | emerge should suggest to use --tree for blocker troubleshooting | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Martin Mokrejš <mmokrejs> |
Component: | Enhancement/Feature Requests | Assignee: | Portage team <dev-portage> |
Status: | CONFIRMED --- | ||
Severity: | normal | CC: | esigra, tomwij |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 300071 |
Description
Martin Mokrejš
2011-07-03 12:04:46 UTC
I synced my portage tree and meanwhile I found that in the list of packages to be updated by 'emerge -uN world' is qmailadmin. Although it was not listed as the package causing the block I unmerged qmailadmin (bug #373909) and now I do not get the problem anymore. You could have used the emerge --tree option to find out that qmailadmin was pulling in virtual/qmail. I see I have also installed net-mail/qmail-lint-0.55. # emerge -uNDf --tree world These are the packages that would be fetched, in order: Calculating dependencies... done! emerge: there are no ebuilds to satisfy "mail-mta/qmail". (dependency required by "net-mail/qmail-lint-0.55" [installed]) (dependency required by "@selected" [set]) (dependency required by "@world" [argument]) # emerge -uNDpv --tree world These are the packages that would be merged, in reverse order: Calculating dependencies... done! emerge: there are no ebuilds to satisfy "mail-mta/qmail". (dependency required by "net-mail/qmail-lint-0.55" [installed]) (dependency required by "@selected" [set]) (dependency required by "@world" [argument]) # Maybe we should make the unsolved blocker message suggest to use the --tree option for troubleshooting purposes. On another machine am giving rid of qmail. The emerge output is still not helpful as it does not mention in the error message those package which were tagged with "nomerge", whatever that means. ;) # emerge -uND --keep-going world --tree * IMPORTANT: 1 news items need reading for repository 'gentoo'. * Use eselect news to read news items. These are the packages that would be merged, in reverse order: Calculating dependencies... done! [cut] [nomerge ] net-mail/qmail-qfilter-2.1-r1 [ebuild N ] virtual/qmail-1.03 [cut] [nomerge ] net-mail/qmail-notify-0.93-r1 [nomerge ] virtual/qmail-1.03 [ebuild N ] mail-mta/netqmail-1.06-r1 USE="ssl -authcram -gencertdaily -highvolume -mailwrapper -qmail-spp -vanilla" [cut] [blocks B ] mail-mta/netqmail ("mail-mta/netqmail" is blocking mail-mta/sendmail-8.14.5) [blocks B ] mail-mta/netqmail ("virtual/mta" is blocking mail-mta/netqmail-1.06-r1) * Error: The above package list contains packages which cannot be * installed at the same time on the same system. (mail-mta/sendmail-8.14.5::gentoo, installed) pulled in by mail-mta/sendmail required by @selected mail-mta/sendmail required by (virtual/mta-0::gentoo, ebuild scheduled for merge) (mail-mta/netqmail-1.06-r1::x-portage, ebuild scheduled for merge) pulled in by ~mail-mta/netqmail-1.06 required by (virtual/qmail-1.03::gentoo, ebuild scheduled for merge) mail-mta/netqmail required by (virtual/mta-0::gentoo, ebuild scheduled for merge) (virtual/mta-0::gentoo, ebuild scheduled for merge) pulled in by =virtual/mta-0 required by (mail-client/mailx-8.1.2.20050715-r3::gentoo, installed) virtual/mta required by (mail-client/mailx-8.1.2.20050715-r3::gentoo, installed) =virtual/mta-0 required by (dev-lang/php-5.2.17::gentoo, installed) virtual/mta required by (dev-lang/php-5.2.17::gentoo, installed) virtual/mta required by (sys-process/vixie-cron-4.1-r11::gentoo, installed) =virtual/mta-0 required by (sys-process/vixie-cron-4.1-r11::gentoo, installed) =virtual/mta-0 required by (app-crypt/gnupg-2.0.18::gentoo, ebuild scheduled for merge) virtual/mta required by (app-crypt/gnupg-2.0.18::gentoo, ebuild scheduled for merge) virtual/mta required by (app-admin/sudo-1.8.2::gentoo, ebuild scheduled for merge) =virtual/mta-0 required by (app-admin/sudo-1.8.2::gentoo, ebuild scheduled for merge) Second, I would like emerge to print those packages in red color in the initial listing of packages, not only in the "Error" section. It is hard to find where those blocked packages appear in the long listing and the Error output is useless as it seems the culprit now are those "nomerge" packages already installed. Portage 2.1.10.4 here. (In reply to comment #5) > On another machine am giving rid of qmail. The emerge output is still not > helpful as it does not mention in the error message those package which were > tagged with "nomerge", whatever that means. ;) The "nomerge" indicates that the package is being displayed as a dependency (or reverse dependency) that will not be merged. > These are the packages that would be merged, in reverse order: > > Calculating dependencies... done! > [cut] > [nomerge ] net-mail/qmail-qfilter-2.1-r1 > [ebuild N ] virtual/qmail-1.03 > [cut] > [nomerge ] net-mail/qmail-notify-0.93-r1 > [nomerge ] virtual/qmail-1.03 > [ebuild N ] mail-mta/netqmail-1.06-r1 USE="ssl -authcram -gencertdaily > -highvolume -mailwrapper -qmail-spp -vanilla" If you want to remove qmail then you have to remove it at the roots. You can see net-mail/qmail-qfilter-2.1-r1 and net-mail/qmail-notify-0.93-r1 displayed as roots in the above output. Make sure you don't have those in /var/lib/portage/world. You can use emerge --deselect to remove them from world. If it's not world pulling them in, then you should check for reverse dependencies like this: emerge -pv --depclean net-mail/qmail-qfilter net-mail/qmail-notify (In reply to comment #6) > (In reply to comment #5) > > On another machine am giving rid of qmail. The emerge output is still not > > helpful as it does not mention in the error message those package which were > > tagged with "nomerge", whatever that means. ;) > > The "nomerge" indicates that the package is being displayed as a dependency (or > reverse dependency) that will not be merged. > > > These are the packages that would be merged, in reverse order: > > > > Calculating dependencies... done! > > [cut] > > [nomerge ] net-mail/qmail-qfilter-2.1-r1 > > [ebuild N ] virtual/qmail-1.03 > > [cut] > > [nomerge ] net-mail/qmail-notify-0.93-r1 > > [nomerge ] virtual/qmail-1.03 > > [ebuild N ] mail-mta/netqmail-1.06-r1 USE="ssl -authcram -gencertdaily > > -highvolume -mailwrapper -qmail-spp -vanilla" > > If you want to remove qmail then you have to remove it at the roots. You can > see > net-mail/qmail-qfilter-2.1-r1 and net-mail/qmail-notify-0.93-r1 displayed as > roots in the above output. Make sure you don't have those in > /var/lib/portage/world. You can use emerge --deselect to remove them from > world. If it's not world pulling them in, then you should check for reverse > dependencies like this: > > emerge -pv --depclean net-mail/qmail-qfilter net-mail/qmail-notify Hmm, so why doesn't emerge include those "roots" automagically in the Error section? This is exactly why something got pulled in and the knowledge how to figure out is left upon the user to figure out why is something included. And of course, emerge could also inspect /var/lib/portage/world for me then, right? ;-) Too late, I did emerge --unmerge to get rid of those two "root" packages meanwhile. I am getting into same issues on different machines where I installed qmail in the past. For example, now I have:
[nomerge ] virtual/qmail-1.03 [0]
[ebuild N ] mail-mta/netqmail-1.06-r1 USE="ssl -authcram -gencertdaily -highvolume -mailwrapper -qmail-spp -vanilla" 332 kB [2]
[ebuild N ] sys-process/daemontools-0.76-r7 USE="(-selinux) -static" 44 kB [0]
[blocks B ] mail-mta/netqmail ("mail-mta/netqmail" is blocking mail-mta/sendmail-8.14.5-r1)
[blocks B ] virtual/mta ("virtual/mta" is blocking mail-mta/netqmail-1.06-r1)
I unmerged virtual/daemontools, sys-apps/ucspi-tcp, sys-apps/ucspi-ssl, ...
Well, in the end, net-mail/qmhandle was the other culprit on another machine. :(
[nomerge ] net-mail/qmhandle-1.3.2 [0]
[ebuild N ] virtual/qmail-1.03 0 kB [0]
The following did not help me out, probably I still don't understand what you told me:
# emerge --depclean sys-apps/ucspi-tcp sys-apps/ucspi-ssl sys-process/daemontools
--- Couldn't find 'sys-apps/ucspi-ssl' to depclean.
--- Couldn't find 'sys-process/daemontools' to depclean.
--- Couldn't find 'sys-apps/ucspi-tcp' to depclean.
>>> No packages selected for removal by depclean
#
(In reply to comment #4) > Maybe we should make the unsolved blocker message suggest to use the --tree > option for troubleshooting purposes. Yes, but since the syntax may be unknown to the user you may need to include a short explanation (or point to relevant documentation) that shows how they need to read it. |