Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 456078 - Allow to automatically run emerge --ask --update --newuse --deep --with-bdeps=y @world from depclean
Summary: Allow to automatically run emerge --ask --update --newuse --deep --with-bdeps...
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Interface (emerge) (show other bugs)
Hardware: All Linux
: Normal enhancement (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-02-07 19:29 UTC by Pacho Ramos
Modified: 2013-08-26 04:23 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pacho Ramos gentoo-dev 2013-02-07 19:29:02 UTC
I usually run a bunch of commands for updating but I noticed the following:
 * Always study the list of packages to be cleaned for any obvious
 * mistakes. Packages that are part of the world set will always
 * be kept.  They can be manually added to this set with
 * `emerge --noreplace <atom>`.  Packages that are listed in
 * package.provided (see portage(5)) will be removed by
 * depclean, even if they are part of the world set.
 * 
 * As a safety measure, depclean will not remove any packages
 * unless *all* required dependencies have been resolved.  As a
 * consequence, it is often necessary to run `emerge --update
 * --newuse --deep @world` prior to depclean.

Calculating dependencies... done!
 * Dependencies could not be completely resolved due to
 * the following required packages not being installed:
 * 
 *   virtual/awk pulled in by:
 *     app-text/yelp-tools-3.6.1
 * 
 * Have you forgotten to do a complete update prior to depclean? The
 * most comprehensive command for this purpose is as follows:
 * 
 *   emerge --update --newuse --deep --with-bdeps=y @world
 * 
 * Note that the --with-bdeps=y option is not required in many
 * situations. Refer to the emerge manual page (run `man emerge`)
 * for more information about --with-bdeps.
 * 
 * Also, note that it may be necessary to manually uninstall
 * packages that no longer exist in the portage tree, since it may
 * not be possible to satisfy their dependencies.

Would be possible to add an option (that I could append to my EMERGE_DEFAULT_OPTS) to automatically run that command when this kind of error is triggered?

Thanks a lot

Reproducible: Always
Comment 1 Zac Medico gentoo-dev 2013-02-07 19:32:26 UTC
I'd rather not automate this, since you can just copy and paste the command.

If you're looking to automate it yourself, you could just run that command before you call emerge --depclean.
Comment 2 Pacho Ramos gentoo-dev 2013-02-07 19:39:36 UTC
I thought on that but, as the information shown by portage says, it's usually not needed to update bdeps too :/
Comment 3 Tom Lloyd 2013-02-10 19:56:00 UTC
I got this message too; it appears to reveal a bug in Portage.

emerge -DuN world says nothing to merge, but if I explicitly tell it to remerge yelp-tools, it pulls in the awk meta-ebuild.  If that's a dependancy, why isn't it part of the world tree?


splig ~ # emerge -pv app-text/yelp-tools

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

Calculating dependencies... done!
[ebuild  N     ] virtual/awk-0  0 kB
[ebuild   R    ] app-text/yelp-tools-3.4.1  0 kB

Total: 2 packages (1 new, 1 reinstall), Size of downloads: 0 kB
Comment 4 Zac Medico gentoo-dev 2013-02-10 20:02:06 UTC
(In reply to comment #3)
app-text/yelp-tools is probably a build-time only dependency, so it will only be pulled in if you specify --with-bdeps=y. Please refer to the "Why is it that emerge does not update all packages?" part of the FAQ:

  http://www.gentoo.org/proj/en/portage/doc/faq.xml
Comment 5 Zac Medico gentoo-dev 2013-02-10 20:04:49 UTC
Also, not that the emerge --dynamic-deps option is enabled by default, so the virtual/awk dependency was likely add *after* your current version of app-text/yelp-tools was installed.
Comment 6 Tom Lloyd 2013-02-10 20:12:30 UTC
I see, Portage doesn't pull it in because it isn't rebuilding yelp-tools.  I'll just --oneshot it then and everything should be OK.  Thanks for the explanation :)