1 |
On Sunday 29 October 2006 15:17, Hans de Hartog wrote: |
2 |
[SNIP] |
3 |
> > I guess you've learned by now that you should never run |
4 |
> > --depclean blindly. Always run it with --pretend first and ensure that it |
5 |
> > doesn't do something stupid. Unfortunately this is a little late for that |
6 |
> > though... :( |
7 |
> |
8 |
> At the time that emerge --depclean was unsafe I used to do: |
9 |
> |
10 |
> emerge --pretend --depclean | grep / > dc2 |
11 |
> remove the first line from dc2 |
12 |
> for p in `cat dc2` |
13 |
> do echo --------- $p ---------- |
14 |
> equery depends $p |
15 |
> done > dc3 |
16 |
> And I could see what realy could be unmerged. |
17 |
> Then I learned from this mailing list that dep -d |
18 |
> would take my USE flags into account so I did "dep -d". |
19 |
> It showed me the list of things it was going to unmerge |
20 |
> and I saw the gcc.3.4 but thought: well, I know I have |
21 |
> gcc.4.something and what's the use of having an old |
22 |
> C compiler hanging around? So I let it go.... :-( |
23 |
[SNIP] |
24 |
|
25 |
Ugh..! You've got this completely wrong. As of >=portage-2.1.1 |
26 |
`emerge --depclean` is quite safe (yet you still need to use --ask |
27 |
or --pretend as with any other emerge operation!) and it has always taken the |
28 |
use flags into account. I've never said anything about the reliability of |
29 |
`dep -d` (as I've never tried it and don't plan to try it either) and I think |
30 |
your experience goes to show that it is far from as safe as |
31 |
`emerge --depclean`. I'm pretty sure that `emerge --depclean` would never |
32 |
remove gcc... |
33 |
|
34 |
`equery depends` is what I've said doesn't take your use flags into account |
35 |
(and it doesn't). This means that if `equery depends` says foo doesn't need |
36 |
bar then foo doesn't need bar. But if it says foo needs bar then there is the |
37 |
possibility that due to the state of some use flag foo doesn't need bar on |
38 |
your system... That is entirely unrelated to the reliability of |
39 |
`emerge --depclean`. This only relates to querying for reverse dependencies |
40 |
with equery. |
41 |
|
42 |
And for querying for reverse dependencies `dep -L` is quite reliable. As is |
43 |
pquery from pkgcore and adjutrix from paludis. That says nothing about the |
44 |
reliability of `dep -d`, `dep -w` or `dep -s` etc. I don't know if either of |
45 |
those other options for dep are reliable or not (and quite frankly I don't |
46 |
care as I don't need them). IMO `emerge --depclean` is doing and excellent |
47 |
job! |
48 |
|
49 |
-- |
50 |
Bo Andresen |