Summary: | portage has issues with meta packages | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Thomas Scheffler <thomas_scheffler> |
Component: | [OLD] Core system | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED DUPLICATE | ||
Severity: | major | CC: | gentoo-bugzilla, radek |
Priority: | High | ||
Version: | 2005.0 | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Thomas Scheffler
2005-06-01 04:47:52 UTC
Please give the output of the following: # grep kde -E '(kdm|kdebase-meta)' /var/lib/portage/world # emerge -ep world | grep kde -E '(kdm|kdebase-meta)' # emerge depclean | grep kde -E '(kdm|kdebase-meta)' (In reply to comment #1) > Please give the output of the following: > > # grep kde -E '(kdm|kdebase-meta)' /var/lib/portage/world I assume you mean # grep -E '(kdm|kdebase-meta)' /var/lib/portage/world kde-base/kdebase-meta > # emerge -ep world | grep kde -E '(kdm|kdebase-meta)' # emerge -ep world | grep -E '(kdm|kdebase-meta)' [nada] > # emerge depclean | grep kde -E '(kdm|kdebase-meta)' # emerge -p depclean | grep -E '(kdm|kdebase-meta)' kde-base/kdm Does emerge have a problem if I remove entries of package.keywords? I just want to clean sometimes the package.keywords file, so it doesn't get to big. Because the kdebase-meta dependecies are not met (they are all in ~x86 now) it fails. It rather should look for the dependencies that where met during the install. This method now removes to much packages. Hmm, is kdebase-meta actually installed? What does `emerge -pv kdebase-meta` or `ls -ld /var/db/pkg/kde-base/*-meta` say? # emerge -pv kdebase-meta These are the packages that I would merge, in order: Calculating dependencies !!! All ebuilds that could satisfy "kdebase-meta" have been masked. !!! One of the following masked packages is required to complete your request: - kde-base/kdebase-meta-3.4.1 (masked by: ~x86 keyword) - kde-base/kdebase-meta-3.4.0 (masked by: ~x86 keyword) For more information, see MASKED PACKAGES section in the emerge man page or section 2.2 "Software Availability" in the Gentoo Handbook. # ls -ld /var/db/pkg/kde-base/*-meta ls: /var/db/pkg/kde-base/*-meta: No such file or directory # ls -ld /var/db/pkg/kde-base/*-meta* drwxr-xr-x 2 root root 920 Mar 21 12:20 /var/db/pkg/kde-base/kdeaddons-meta-3.4.0 drwxr-xr-x 2 root root 920 Mar 20 14:23 /var/db/pkg/kde-base/kdeartwork-meta-3.4.0 drwxr-xr-x 2 root root 920 Mar 20 11:29 /var/db/pkg/kde-base/kdebase-meta-3.4.0 drwxr-xr-x 2 root root 920 Mar 20 17:05 /var/db/pkg/kde-base/kdegraphics-meta-3.4.0 drwxr-xr-x 2 root root 920 Mar 20 19:03 /var/db/pkg/kde-base/kdemultimedia-meta-3.4.0 drwxr-xr-x 2 root root 920 Mar 20 21:13 /var/db/pkg/kde-base/kdenetwork-meta-3.4.0 drwxr-xr-x 2 root root 920 Mar 21 10:25 /var/db/pkg/kde-base/kdewebdev-meta-3.4.0 It really seems to me that that for the --depclean internally something like the simple "emerge -ep kdebase-meta" is used. It should look in the database if the package that is now masked ~x86 was installed before. And use this as a matched dependecy to rebuild the dependency graph. This would result in a more correct "--depclean" and won't remove half of the system. That's exactly what it does. It builds --emptytree and then removes anything that's not in it. However, if you're not managing your system within recommended guidelines (with regard to masked packages), you can't really expect a feature that covered in warnings and caution messages to work properly. I have seen it several times that packages where masked ~x86 or -* after release. This would cause the error, too! Guidelines used or not. I still think that the behaviour is not correct and pointed out, how it should be. All that needs to be done is something like "emerge -ep --use-installed world", where --use-installed takes all installed packages automatically as stable. Wouldn't this solve the issue? Would it make my system more unstable? I don't think, that "RESOLVED LATER" will help to track that bug. Reopening for duping *** This bug has been marked as a duplicate of bug 48195 *** (In reply to comment #6) > I have seen it several times that packages where masked ~x86 or -* after > release. This would cause the error, too! Guidelines used or not. I still think > that the behaviour is not correct and pointed out, how it should be. All that > needs to be done is something like > "emerge -ep --use-installed world", where --use-installed takes all installed > packages automatically as stable. > Wouldn't this solve the issue? > Would it make my system more unstable? > I don't think, that "RESOLVED LATER" will help to track that bug. I think that --depclean should remove any masked packages.... there is a reason for them to be masked, sometimes security issues. A 'emerge -uDN --world' will always downgrade any package to the latest stable version (if there is one -- if it isn't it will fail with an error telling you so), and you should always do this prior --depclean. If you wont to have a masked package installed add it to packages.keywords or packages.unmask |