Summary: | 'emerge --depclean' from sys-apps/portage-2.1.10 deletes blas-reference, sci-libs/lapack-reference and sci-libs/cblas-reference not recognizing that they are needed by other packages. | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Juergen Rose <rose> |
Component: | Core - Dependencies | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED DUPLICATE | ||
Severity: | normal | CC: | bkohler, mlspamcb, tomka |
Priority: | Normal | ||
Version: | 2.1 | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 283587, 41417, 192319 | ||
Bug Blocks: |
Description
Juergen Rose
2011-06-07 10:54:23 UTC
It also trys to remove nano system package unless you reemerge it in to world. But there are dependencies and the package is eselected:
root@lynx:/root(5)# equery d blas-reference
* These packages depend on blas-reference:
virtual/blas-1.0 (sci-libs/blas-reference)
root@lynx:/root(6)# eselect blas list
Installed BLAS for library directory lib64
[1] atlas
[2] atlas-threads
[3] reference *
root@lynx:/root(7)# emerge -p --depclean
...
>>> These are the packages that would be unmerged:
sci-libs/blas-reference
selected: 20070226-r2
protected: none
omitted: none
I can confirm that depclean is broken and wants to remove needed packages Wrong product. (In reply to comment #2) > But there are dependencies and the package is eselected: > > root@lynx:/root(5)# equery d blas-reference > * These packages depend on blas-reference: > virtual/blas-1.0 (sci-libs/blas-reference) > root@lynx:/root(6)# eselect blas list > Installed BLAS for library directory lib64 > [1] atlas > [2] atlas-threads > [3] reference * It's likely related to this commit: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=4f66159887fc4e3ec8bd87ae0f08ba249f98631b As discussed in bug 370295, this commit (included in portage-2.1.0) makes --depclean eliminate redundant packages more effectively. The nature of anything that's eselected like this is that there are redundant choices, so you'd expect --depclean to remove the ones that aren't in your world file. The established solution is to add them to your world file, like this: emerge --noreplace blas-reference If you want emerge to look at your eselect settings, that's already been requested in bug 198200 and bug 283587, but not implemented yet. (In reply to comment #1) > It also trys to remove nano system package unless you reemerge it in to world. I've added a new FAQ entry about this. See bug #370295, comment #28. (In reply to comment #3) > I can confirm that depclean is broken and wants to remove needed packages The explanation for your case is likely similar to that given in comment #5. (In reply to comment #6) > (In reply to comment #1) > > It also trys to remove nano system package unless you reemerge it in to world. > > I've added a new FAQ entry about this. See bug #370295, comment #28. > > (In reply to comment #3) > > I can confirm that depclean is broken and wants to remove needed packages > > The explanation for your case is likely similar to that given in comment #5. Thats not the case. For example my depclean wants to uninstall : gnome-extra/gnome-utils selected: 3.0.1 protected: none omitted: none but : equery d gnome-utils * These packages depend on gnome-utils: gnome-base/gnome-extra-apps-3.0.0 (>=gnome-extra/gnome-utils-3.0.0) This is no virtual/eselected/whatever packege. It is normal package merged as dependency of other package. Same unrar, merged as dependency of packages with rar flag. There is something more wrong... (In reply to comment #7) > This is no virtual/eselected/whatever packege. It is normal package merged as > dependency of other package. Same unrar, merged as dependency of packages with > rar flag. There is something more wrong... Alright, clearly that's a different issue. Please file a new bug. For me, with portage 2.2_alpha41, the --depclean wants to suddenly remove nano: # emerge --depclean * 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! >>> Calculating removal order... !!! 'app-editors/nano' (virtual/editor) is part of your system profile. !!! Unmerging it may be damaging to your system. >>> Waiting 10 seconds before starting... >>> (Control-C to abort)... Press Ctrl-C to Stop in: 10 9 Why is this occurring? I mean, it *is* part of the system profile, right? (In reply to comment #9) > Why is this occurring? I mean, it *is* part of the system profile, right? Only indirectly via virtual/editor. You must have another editor installed. See bug 370295, comment #24. (In reply to comment #10) > (In reply to comment #9) > > Why is this occurring? I mean, it *is* part of the system profile, right? > > Only indirectly via virtual/editor. You must have another editor installed. See > bug 370295, comment #24. Apparently I had ed installed. I still don't understand the warnings about removing system packages - if virtual/editor is a system package, it shouldn't warn me about nano, right? So is this a problem with the @system or portage? (In reply to comment #11) > Apparently I had ed installed. I still don't understand the warnings about > removing system packages - if virtual/editor is a system package, it shouldn't > warn me about nano, right? Well, virtual/editor makes the system set ambiguous, therefore there's ambiguity in deciding whether or not it should warn. Maybe it's a good idea to err on the safe side and show the warning even though it's ambiguous? I think so. Also, note that the warning message includes virtual/editor in parenthesis. This is intended to denote the ambiguity. > So is this a problem with the @system or portage? I don't think it's a problem, though it may take some time for people to grow accustomed to editors being removed by --depclean like this. Some have argued that app-editors/nano should be added to the system set in order to prevent --depclean from removing it, which is debatable. Some would argue that anything satisfying virtual/editor should suffice. There are several issues going on in this bug and I believe they are all better covered in another existing bug. There's bug #283587 for removing currently "active" or "eselected" packages, and bug #375115 for ambiguity with virtuals. *** This bug has been marked as a duplicate of bug 283587 *** |