* [gentoo-user] Re: System maintainance, "emerge --depclean", "revdep-rebuild"
2006-07-19 0:05 [gentoo-user] System maintainance, "emerge --depclean", "revdep-rebuild" Alan E. Davis
@ 2006-07-19 5:54 ` Francesco Talamona
2006-07-19 7:32 ` Alan E. Davis
2006-07-19 7:35 ` [gentoo-user] " Richard Fish
1 sibling, 1 reply; 4+ messages in thread
From: Francesco Talamona @ 2006-07-19 5:54 UTC (permalink / raw
To: gentoo-user
On Wednesday 19 July 2006 02:05, Alan E. Davis wrote:
> updates. My laptop, with only a 50GB HDD, requires to download 700GB
> to emerge -uDv world.
It's very odd... I had a common repository for four gentoo boxes,
(various arches) and after months of upgrade it was less than 13 GB.
Packages installed in main system: 1225.
> It's time to thin down.
It's time to rationalize :-)
I have ${DISTDIR} (see /etc/make.conf) on an external disk, common to
all systems.
Ciao
Francesco
--
Linux Version 2.6.17-gentoo-r2, Compiled #1 PREEMPT Sat Jul 8 07:47:35
CEST 2006
One 2.2GHz AMD Athlon 64 Processor, 2GB RAM, 4410.81 Bogomips Total
aemaeth
--
gentoo-user@gentoo.org mailing list
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [gentoo-user] System maintainance, "emerge --depclean", "revdep-rebuild"
2006-07-19 0:05 [gentoo-user] System maintainance, "emerge --depclean", "revdep-rebuild" Alan E. Davis
2006-07-19 5:54 ` [gentoo-user] " Francesco Talamona
@ 2006-07-19 7:35 ` Richard Fish
1 sibling, 0 replies; 4+ messages in thread
From: Richard Fish @ 2006-07-19 7:35 UTC (permalink / raw
To: gentoo-user
On 7/18/06, Alan E. Davis <lngndvs@gmail.com> wrote:
> I have avoided "emerge --depclean" in spite of the recommendations of
> several list members both to me and as a matter of course in day to
> day messages. However, I am reluctant because of none other than the
> initial messages when trying to do so:
Depclean can be a problem if you have not fully updated your system.
There are two things required for depclean to be "safe":
1. "emerge -DNuvp world" must produce nothing.
2. revdep-rebuild must not want to rebuild anything.
But even if these 2 things are satisfied, depclean could still remove
packages that you really want installed, so it is always best to
review the list to watch for unwanted removals.
> It's time to thin down. I have installed kde and gnome, and a bunch
> of other display/window managers. I now use enlightenment 17
> exclusively, so I could do away with a lot of cruft. But emerge
> --depclean is removing quite a few programs that are useful to me.
If there is something in the --depclean output that you want to keep, use
emerge --noreplace <pkg>
to add it to the world file and prevent depclean from removing it or
any of its dependancies.
> I am still being bitten by libexpat.so.0 quite frequently. One of two
> of the programs involved are serious problems, since the offenders are
> other libraries or dependencies. Usually I can just re-emerge the
> affected package, and the problem is temporarily solved. Some
> programs that I have done that for, are now, after a couple of months,
> doing it again.
You use revdep-rebuild to rebuild any packages that depend on a
specific library. In this case, you should be able to solve these
problems permanently with:
revdep-rebuild --library=libexpat.so.0
> Should I go ahead and "emerge --depclean"? How about revdep-rebuild?
> I am spending my entire summer trying to deal with these systems. I
> loathe to do this process package by package.
What I would recommend at this point:
1. review your world file (/var/lib/portage/world). Take out any
packages (like KDE or Gnome) that you no longer care about having
installed.
2. Review the output of "emerge --depclean --pretend world". For any
packages that you do not want removed, use "emerge --noreplace" to add
them to world. This is actually optional, you can always re-merge
stuff later if you need it.
3. Review your /etc/make.profile link. Now is as good a time as any
to update your profile if you are not using 2006.0. (assuming you are
using the default-linux/x86 profiles):
cd /etc
rm make.profile
ln -s ../usr/portage/profiles/default-linux/x86/2006.0 make.profile
4. From your local internet cafe, "emerge -DNuv --fetchonly world".
This will download the distfiles needed to get your system up-to-date.
No compiling at this point, although you might want to pick up some
coffee! :-)
5. Run "emerge -DNuv system", followed by etc-update, python-updater,
and perl-cleaner. This should get your required system packages fully
current, and should ensure that python (really critical!) and perl
keep working.
6. If you have not yet updated to gcc-3.4.6, you will want to follow
the gcc upgrade guide [1] at this point. You can choose between the
revdep-rebuild route or the emerge -e system; emerge -e world route.
The revdep-rebuild is usually faster, but probably works best on an
otherwise up-to-date and clean system. Actually for the number of
packages you have installed, and the number of things depclean wants
to remove, the revdep-rebuild method might be slower than "emerge -e
system ; emerge -e world"! So I would probably recommend the emerge
-e steps, and if you do that you can skip to step 9 below.
7. Run "emerge -e system". This is probably not necessary, but just
in case the depclean would remove something that would break dynamic
linking, this will make sure you maintain a system that works well
enough to complete the rest of steps.
8. Run "emerge -DNuv world". This should get the rest of your system
up to date.
9. Run "emerge --depclean world".
10. Run "revdep-rebuild".
That should get you fully up to date with a consistent system.
At this point, you may want to do something a bit dangerous, and look
at the output of "emerge --prune --pretend world". Prune *is* a
dangerous command, and should *never* be run against world without the
pretend option. It's main use here is to identify obsolete slotted
packages (like old KDE versions, old kernel sources, old gcc versions,
etc) that you can safely remove. For these, you can do "emerge
--prune gcc", "emerge --prune gentoo-sources", etc. Do not prune any
autoconf or automake packages. Glib, gtk, and qt packages should
probably be left alone as well. It is always a good idea to quickpkg
things before pruning, and follow a prune with "emerge -Dv
--usepkgonly world" to re-install anything that really is required.
[1] http://www.gentoo.org/doc/en/gcc-upgrading.xml
HTH,
-Richard
--
gentoo-user@gentoo.org mailing list
^ permalink raw reply [flat|nested] 4+ messages in thread