Gentoo Archives: gentoo-user

From: covici@××××××××××.com
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] preserved-rebuild will not run at all
Date: Sun, 12 Dec 2010 23:14:03
Message-Id: 14221.1292195528@ccs.covici.com
In Reply to: Re: [gentoo-user] preserved-rebuild will not run at all by Mark Knecht
1 Mark Knecht <markknecht@×××××.com> wrote:
2
3 > On Sun, Dec 12, 2010 at 1:41 PM, Alan McKinnon <alan.mckinnon@×××××.com> wrote:
4 > > Apparently, though unproven, at 23:10 on Sunday 12 December 2010,
5 > > covici@××××××××××.com did opine thusly:
6 > >
7 > >> Alan McKinnon <alan.mckinnon@×××××.com> wrote:
8 > >> > Apparently, though unproven, at 22:35 on Sunday 12 December 2010,
9 > >> >
10 > >> > covici@××××××××××.com did opine thusly:
11 > >> > > Mark Knecht <markknecht@×××××.com> wrote:
12 > >> > > > On Sun, Dec 12, 2010 at 10:48 AM,  <covici@××××××××××.com> wrote:
13 > >> > > > > I have a fair number of preserved-libs, but it will not run at all
14 > >> > > > > and gives the rather strange message:
15 > >> > > > > Calculating dependencies... done!
16 > >> > > > >
17 > >> > > > > emerge: there are no ebuilds to satisfy "dev-tex/mplib:0".
18 > >> > > > > (dependency required by "@preserved-rebuild")
19 > >> > > > >
20 > >> > > > > Now I have no such package and an eix seems to indicate that there
21 > >> > > > > is no such, so how do I get this rebuild going again?
22 > >> > > > >
23 > >> > > > > Thanks in advance for all your help.
24 > >> > > > >
25 > >> > > > > --
26 > >> > > > > Your life is like a penny.  You're going to lose it.  The question
27 > >> > > > > is: How do
28 > >> > > > > you spend it?
29 > >> > > > >
30 > >> > > > >         John Covici
31 > >> > > > >         covici@××××××××××.com
32 > >> > > >
33 > >> > > > Probably searching for packages that depend on mplib, (equery) then
34 > >> > > > emerge -C them (it's what I'd probably do - depends...) then
35 > >> > > > re-emerge them if you still use them? Note that I'd go back to
36 > >> > > > finding what members of the world file need all this stuff and
37 > >> > > > emerge that with -DuN, maybe even doing a -depclean after the emerge
38 > >> > > > -C. It's all a guess though.
39 > >> > > >
40 > >> > > > Seems like this sort of thing happens when a package gets dumped in
41 > >> > > > an upgrade but somehow the ebuilds or package manager don't get
42 > >> > > > updated or just don't work perfectly.
43 > >> > > >
44 > >> > > > Again, all a guess but I can usually figure it out looking at equery
45 > >> > > > output, etc.
46 > >> > >
47 > >> > > Well, there was a package, but no ebuild, so I deleted the package and
48 > >> > > its going, but someone broke something.  I wish you could not delete an
49 > >> > > ebuild if you have the package, or it would put it somewhere to prevent
50 > >> > > this kind of thing.
51 > >> >
52 > >> > That will make portage store gigantic numbers of old and since upgraded
53 > >> > versions just in case maybe you might need it perhaps. Sounds like a lot
54 > >> > of pain for no gain. Sounds like exactly the kind of thing any decent
55 > >> > dev will reject.
56 > >> >
57 > >> > Besides, you can always get the old ebuild back from the Attic, or you
58 > >> > could copy it somewhere safe from /var/db/pkg/ before you delete it.
59 > >> >
60 > >> > Mark has the correct solution. mplib is not needed and was deleted.
61 > >> > However, it's in preserved-rebuild as being used by something. In all
62 > >> > likelyhood that something uses mplib purely optionally and you should
63 > >> > just rebuild that something. You provided no output so no-one here knows
64 > >> > how to fix your problem.
65 > >>
66 > >> There was no output, but what I sent and the only thing depended on
67 > >> mplib was the package with no ebuild, so I guess its fixed.  But
68 > >> something seems wrong here that you should have a package and the ebuild
69 > >> would go away like that.  I am not sure of the best solution.
70 > >
71 > > But you *don't* have the package, or it didn't uninstall cleanly. It's not in
72 > > the tree, it's not in eix, so it no longer exists. There would have been at
73 > > least 30 days notice in $PORTDIR/profiles/package.mask that it was going away,
74 > > and emerge gives output that there is a package present without an ebuild.
75 > >
76 > > Or maybe you deleted the ebuild yourself out of a local overlay.
77 > >
78 > > There's lots of ways this can happen. preserved-rebuild tracks that some part
79 > > of mplib is bieng used somehow, and it told you. Now you as the human being
80 > > get to decide how to proceed because the software cannot decide for you.
81 > >
82 > > The software is working as designed. What else did you expect it to do?
83 > >
84 > > One thing that is NOT a solution is to not delete the ebuild. That results in
85 > > your tree being out of sync with upstream. That is not allowed.
86 >
87 > covici,
88 > It strikes me that maybe I wasn't totally clear about this sort of fix. My bad.
89 >
90 > I _think_ that if you had a totally up to date system and a recent set
91 > of ebuilds on the system then likely none of them would depend on
92 > mplib. (Assuming it's been dropped for some reason.)
93 >
94 > The issue you need to sort of get your head around is that you are
95 > searching from some _older_, currently installed package that depends
96 > on this dropped library. Once you know the name of that package, if
97 > you emerge -C it then the system no longer requires it and complaints
98 > should go away. Assuming they do then I would likely do an emerge -p
99 > --depclean, which gets the system clean without the program you want,
100 > then I would emerge the newest version of that program which doesn't
101 > require mplib.
102 >
103 > Again, it's sort of an Easter Egg Hunt getting to all the older
104 > programs that required the library that's been removed. There may be
105 > more than one program that used it.
106 >
107 > One other possibility, I think, is that everything is OK with your
108 > programs but some mplib executable (possibly a *.so file or something)
109 > was left laying around and now revdep-rebuild is complaining that it
110 > cannot fix it. That one is relatively easy as you can search, using
111 > equery, for the package that provided it and if it's not on the system
112 > then just delete the *.so that it's complaining about.
113 >
114 > Whatever, do make sure that you double check the system with
115 > revdep-rebuild and emerge -pvDuN @world at the end to make sure your
116 > clean.
117 >
118 > Hope that helps,
119
120 I think I wound up doing what you said -- there was only one package and
121 that had no ebuild, but portage managed to unmerge it anyway and I did a
122 full update after that, so all should be working now.
123
124 Thanks.
125
126 --
127 Your life is like a penny. You're going to lose it. The question is:
128 How do
129 you spend it?
130
131 John Covici
132 covici@××××××××××.com