View previous topic :: View next topic |
Author |
Message |
lojack n00b
Joined: 24 Jun 2004 Posts: 28 Location: Newark, DE (USA)
|
Posted: Thu Jul 01, 2004 12:54 pm Post subject: |
|
|
meowsqueak wrote: | I recognise and sympathise with the conflict, but I really must stress the benefit of personal experience. It hurts to break Gentoo I know, but a lot of what you ask can only be answered through exploring those dark places yourself (often with the Gentoo Forums as your guiding light). I've been through my own personal hell with Gentoo and Debian, and the result is I now have a good 'feel' for what's right and what's wrong. That doesn't make my way right, but it's the way that makes the most sense to me based on everything I've seen during my journey. For Gentoo, this includes making good use of /etc/portage/package.keywords, keeping my world file maintained, and recently making careful use of scripts like 'dep' to investigate redundant packages. However I've still managed to break things (mostly because the dependencies in the ebuilds aren't always forward compatible) but if you take notes about what you did, you can usually reverse anything bad as long as you have time to do it. So I finish with my last personal rule - I don't try anything new or risky with Gentoo unless I have a lot of spare time ahead of me... |
I'm just finishing my second install for the week on a desktop PC. After spending a considerable amount of time building a basic system, with some kde packages, I updated world and ran dispatch-conf. Somewhere in the subsequent updates I lost all use of X (Xorg). I looked for more than a day but couldn't find the problem. I reinstalled. <sigh>
Code: | emerge sync
emerge -uDav world
emerge -uDv world
dispatch-conf |
Now that my system is back up and running--the basics--I'm gonna dd the partitions and send the images to an alt drive. If I mess up my system again in the next few weeks, while I learn by example--baptism by fire?--I can just dd the images back to their respective partitions and start again from a basic running system. Much faster than starting from scratch.
Thanks for the advice.
Chris/CMS |
|
Back to top |
|
|
robmoss Retired Dev
Joined: 27 May 2003 Posts: 2634 Location: Jesus College, Oxford
|
Posted: Thu Jul 01, 2004 4:31 pm Post subject: |
|
|
lojack, it depends on your system. If it's a server, be conservative, and if it's a desktop, don't. So those two posts you reference up there are respectively for a server and a desktop environment. The reason for this is that this is what the devs in question do with their machines: it is the most tested method. _________________ Reality is for those who can't face Science Fiction.
emerge -U will kill your Gentoo
ecatmur, Lord of Portage Bash Scripts |
|
Back to top |
|
|
C0deM0nkey n00b
Joined: 09 Dec 2003 Posts: 36 Location: Manchester, UK
|
Posted: Thu Jul 15, 2004 7:50 pm Post subject: |
|
|
Hi,
Having just found this thread whilst looking for a way to do a relatively safe emerge world, I decided to adopt the method as posted here by robmoss2k espcially since it seems to have become the de-facto standard by all accounts.
Code: | emerge sync
emerge -uDpv world
emerge -uDv world
emerge -pv depclean
emerge -v depclean
revdep-rebuild -pv
revdep-rebuild -v
dispatch-conf |
My issue is I noticed a package in the list that I wanted to keep as-is unstable. But emerge-uDpv world was going to revert it back a version number to a more stable package. So I went to add the packages name to the /etc/portage/package.keywords but I dont have a portage directory inside of etc. Has later versions of portage removed or moved this config file? Where can I find this now?
Many Thanks - Code Monkey |
|
Back to top |
|
|
spb Retired Dev
Joined: 02 Jan 2004 Posts: 2135 Location: Cambridge, UK
|
Posted: Thu Jul 15, 2004 8:56 pm Post subject: |
|
|
Create it yourself. |
|
Back to top |
|
|
C0deM0nkey n00b
Joined: 09 Dec 2003 Posts: 36 Location: Manchester, UK
|
Posted: Fri Jul 16, 2004 8:40 am Post subject: |
|
|
Sounds like a plan, i'll give it a go later when I get round to it.
Thanks - Code Monkey |
|
Back to top |
|
|
flindt Tux's lil' helper
Joined: 10 Dec 2003 Posts: 112 Location: Denmark
|
Posted: Mon Jul 26, 2004 1:47 pm Post subject: |
|
|
Hi im trying to update my system like robmoss suggest and after adding a couple of lines to /etc/portage/packages.mask and /etc/portage/packages.keywords to keep my one unstable package and avoid updating two others, I got all the way to revdep-rebuild.
At the end of revdev-rebuild the emerge line looks like this
Code: | emerge --oneshot --nodeps -av =gnome-base/gconf-1.0.8-r5 =media-gfx/pixieplus-kde-0.5.4 =net-www/opera-7.53 |
however, there seems to be no pixieplus-kde in portage (maybe it has changed it name ..?) so emerge complains:
Code: | These are the packages that I would merge, in order:
Calculating dependencies \
emerge: there are no masked or unmasked ebuilds to satisfy "=media-gfx/pixieplus-kde-0.5.4".
!!! Error calculating dependencies. Please correct.
|
How do I figure out who needs pixieplus? |
|
Back to top |
|
|
00tux n00b
Joined: 30 May 2004 Posts: 27 Location: British Columbia, Canada
|
Posted: Fri Jul 30, 2004 5:16 am Post subject: |
|
|
What would the code be to make it so that I can exclude certain packages from being taken out during depclean and in what file do I place it. _________________ "But I don't wanna be a pirate" |
|
Back to top |
|
|
_GeG_ n00b
Joined: 28 Jun 2004 Posts: 36
|
Posted: Fri Jul 30, 2004 11:06 am Post subject: |
|
|
Hi, I am a gentoo newbie (linux not anymore ). Maybe I miss the point but this is what I don't understand:
I have installed a few masked builds with
ACCEPT_KEYWORDS="~x86" emerge ...
because there was no unmasked version.
Now I found out that some of them are not masked anymore. Some are still.
So how do I find out which programs that are masked are installed on my computer?
And how can I keep my package.keywords file up to date, not full of programs where I don't need the masked version any more. _________________ Don't like your neighbor? --> https://tips.fbi.gov/ |
|
Back to top |
|
|
eike.com n00b
Joined: 12 Mar 2004 Posts: 25 Location: Hamburg, GERMANY
|
Posted: Tue Aug 03, 2004 5:22 pm Post subject: glsa-check -f all: command not found |
|
|
how come that my system replies glsa-check -f all: command not found |
|
Back to top |
|
|
_GeG_ n00b
Joined: 28 Jun 2004 Posts: 36
|
Posted: Tue Aug 03, 2004 6:52 pm Post subject: |
|
|
try emerge gentoolkit _________________ Don't like your neighbor? --> https://tips.fbi.gov/ |
|
Back to top |
|
|
mianka n00b
Joined: 30 Mar 2004 Posts: 64 Location: Leuven Belgium
|
Posted: Thu Aug 05, 2004 7:47 am Post subject: depclean and co |
|
|
What has changed concerning this thread for 2004.2? |
|
Back to top |
|
|
rush_ad l33t
Joined: 22 Jul 2004 Posts: 863 Location: New Jersey, USA
|
Posted: Thu Aug 05, 2004 12:06 pm Post subject: |
|
|
revdep-rebuild -pv
revdep-rebuild command not found |
|
Back to top |
|
|
hepta_sean Apprentice
Joined: 27 Apr 2004 Posts: 246 Location: Berlin, Germany
|
Posted: Thu Aug 05, 2004 12:42 pm Post subject: Re: depclean and co |
|
|
mianka wrote: | What has changed concerning this thread for 2004.2? |
Nothing, I suppose. Why should anything change just because of a new distribution? They did not change Portage and related tools much.
rush_ad wrote: | revdep-rebuild -pv
revdep-rebuild command not found |
revdep-rebuild is part of the gentoolkit-package, so do:
|
|
Back to top |
|
|
SerfurJ l33t
Joined: 10 Apr 2004 Posts: 824 Location: Texas
|
Posted: Thu Aug 05, 2004 2:18 pm Post subject: |
|
|
00tux,
put it in /var/cache/edb/world. |
|
Back to top |
|
|
T-Bird n00b
Joined: 28 Mar 2003 Posts: 71
|
Posted: Sun Aug 08, 2004 1:14 am Post subject: |
|
|
For one reason or another when I add packages that I don't want updated to the /etc/portage/package.mask and then
...it still has those packages slated for a downgrade. What am I doing wrong...I'm following the guide to assigning particular packages to this file, but for one reason or another it isn't working...any help? |
|
Back to top |
|
|
hepta_sean Apprentice
Joined: 27 Apr 2004 Posts: 246 Location: Berlin, Germany
|
Posted: Tue Aug 10, 2004 10:45 am Post subject: |
|
|
T-Bird wrote: | For one reason or another when I add packages that I don't want updated to the /etc/portage/package.mask and then
...it still has those packages slated for a downgrade. What am I doing wrong...I'm following the guide to assigning particular packages to this file, but for one reason or another it isn't working...any help? |
Could you give a more detailed example, please.
Anyway, you probably don't want to mask the package it wants to downgrade to, but unmask the package it wants to replace, so these ones are kept.
If they are masked by a keyword (~x86 or similar), put a line with the package (and version, if you only want to keep that unstable version and return to stable later) and the keyword in /etc/portage/package.keywords.
If they are hardmasked (by /usr/portage/profiles/package.mask), think twice (they are hardmasked for a reason, see the mask file for that reason) and put them into /etc/portage/package.unmask, if you are really sure you want to keep the hardmasked version.
HTH, sean |
|
Back to top |
|
|
roterl n00b
Joined: 25 Oct 2003 Posts: 32
|
Posted: Mon Aug 16, 2004 12:29 pm Post subject: |
|
|
I try the
robmoss wrote: |
Code: | emerge sync
emerge -uDpv world
emerge -uDv world
emerge -pv depclean
emerge -v depclean
revdep-rebuild -pv
revdep-rebuild -v
dispatch-conf |
|
but when U run the revdep-rebuild -pv i got the following error:
Code: | mobile root # revdep-rebuild -va
Checking reverse dependencies...
Packages containing binaries and libraries broken by any package update,
will be recompiled.
Collecting system binaries and libraries... using existing /root/.revdep-rebuild.1_files.
Collecting complete LD_LIBRARY_PATH... using existing /root/.revdep-rebuild.2_ldpath.
Checking dynamic linking consistency... using existing /root/.revdep-rebuild.3_rebuild.
Assigning files to ebuilds... using existing /root/.revdep-rebuild.4_ebuilds.
Evaluating package order... using existing /root/.revdep-rebuild.5_order.
All prepared. Starting rebuild...
emerge --oneshot --nodeps -va =dev-php/php-4.3.8 =dev-libs/cyrus-sasl-2.1.18-r2 =gnome-base/gconf-1.0.9 =gnome-base/gnome-vfs-1.0.5-r3 =gnome-base/control-center-1.4.0.5-r1 =net-fs/samba-3.0.5 =gnome-base/gnome-vfs-2.6.1.1 =gnome-base/libglade-0.17-r6 =kde-base/kdebase-3.2.3-r1 =net-libs/gnutls-1.0.17 =net-libs/libsoup-1.99.28 =mail-client/evolution-1.4.6 =net-misc/openssh-3.8.1_p1-r1 =net-www/mozilla-1.7
..........
These are the packages that I would merge, in order:
Calculating dependencies ...done!
[ebuild R ] dev-php/php-4.3.8 16 kB
[ebuild R ] dev-libs/cyrus-sasl-2.1.18-r2 +gdbm +java -kerberos +ldap +mysql +pam -pam-mysql +postgres +ssl -static 0 kB
[ebuild R ] gnome-base/gconf-1.0.9 +nls 0 kB
[ebuild R ] gnome-base/gnome-vfs-1.0.5-r3 +doc +nls +ssl 0 kB
[ebuild R ] gnome-base/control-center-1.4.0.5-r1 +nls 0 kB
[ebuild R ] net-fs/samba-3.0.5 -acl +cups +doc -kerberos +ldap +mysql -oav +pam +postgres +python +readline +xml +xml2 15,161 kB
[ebuild R ] gnome-base/gnome-vfs-2.6.1.1 +doc +gnutls +ipv6 +samba +ssl 0 kB
[ebuild R ] gnome-base/libglade-0.17-r6 -bonobo +nls 0 kB
[ebuild R ] kde-base/kdebase-3.2.3-r1 +cups +encode +java +ldap +motif +opengl +pam +samba +ssl 0 kB
[ebuild R ] net-libs/gnutls-1.0.17 +crypt +doc +zlib 0 kB
[ebuild R ] net-libs/libsoup-1.99.28 +gnutls 0 kB
[ebuild R ] mail-client/evolution-1.4.6 +crypt +doc +ipv6 -kerberos +ldap +mozilla +pda +spell +ssl 0 kB
[ebuild R ] net-misc/openssh-3.8.1_p1-r1 -X509 -chroot +ipv6 -kerberos +ldap +pam -(selinux) -skey -smartcard -static +tcpd -(uclibc) 939 kB
[ebuild R ] net-www/mozilla-1.7 +crypt -debug -debug +gnome +gtk2 +ipv6 +java +ldap -mozcalendar -moznocompose -moznoirc -moznomail -moznoxft -mozsvg +ssl +xinerama -xprint 34,766 kB
Total size of downloads: 50,883 kB
Do you want me to merge these packages? [Yes/No] Traceback (most recent call last):
File "/usr/bin/emerge", line 2566, in ?
if userquery(prompt)=="No":
File "/usr/bin/emerge", line 49, in userquery
response=raw_input("["+string.join([colours[i](responses[i]) for i in range(len(responses))],"/")+"] ")
EOFError: EOF when reading a line
Result is not OK, you have following choices:
- if emerge failed during build, fix the problems and re-run revdep-rebuild
or
- use -X or --package-names as first argument (try to rebuild package, not exact
ebuild - ignores SLOT!)
or
- set ACCEPT_KEYWORDS="~<your platform>" and/or /etc/portage/package.unmask
(and remove /root/.revdep-rebuild.5_order to be evaluated again)
or
- modify the above emerge command and run it manually
or
- compile or unmerge unsatisfied packages manually, remove temporary files and
try again (you can edit package/ebuild list first)
To remove temporary files, please run:
rm /root/.revdep-rebuild*.?_* |
what can I do?
note: I dont know if it the reason, but before I read this thread I installed packages using ACCEPT_KEYWORDS.
thanks,
Rotem. |
|
Back to top |
|
|
roterl n00b
Joined: 25 Oct 2003 Posts: 32
|
Posted: Tue Aug 17, 2004 6:36 pm Post subject: I successed to fix my system |
|
|
It seem that the [i]emerge -va depclean[u] remove needed packages (well - I didnt recognize that the packages it display are necessary... ) and break my system at all.
One of the packages was the decfsd. Using the live CD I emerge it again, and more few packages and now every thing is ok.
I also run again the Code: | emerge sync
emerge -uDpv world
emerge -uDv world
emerge -pv depclean
emerge -v depclean
revdep-rebuild -pv
revdep-rebuild -v
dispatch-conf |
and this time every thing was ok.
I dont know what was wrong before, and why it happend, but at least it work.
BTW: robmoss - thanks for this thread. It very helpful.
Rotem. |
|
Back to top |
|
|
rush_ad l33t
Joined: 22 Jul 2004 Posts: 863 Location: New Jersey, USA
|
Posted: Tue Aug 17, 2004 6:41 pm Post subject: |
|
|
Code: | emerge sync
emerge -uDpv world
emerge -uDv world
emerge -pv depclean
emerge -v depclean
revdep-rebuild -pv
revdep-rebuild -v
dispatch-conf |
i ran this couple times in my less than one month old installation. it worked perfecty both times. actually, i've been with gentoo less than a month. |
|
Back to top |
|
|
hjnenc Veteran
Joined: 15 Aug 2004 Posts: 1599 Location: Vienna, Austria
|
Posted: Tue Aug 17, 2004 7:20 pm Post subject: |
|
|
roterl,
I had a similar problem. The reason is that
does not seem to work. When I used
Code: | revdep-rebuild -vp
revdep-rebuild -v |
everything ran fine. |
|
Back to top |
|
|
flickerfly l33t
Joined: 08 Nov 2002 Posts: 677 Location: Lanham, MD
|
Posted: Tue Sep 07, 2004 6:11 pm Post subject: GWN Tips & Tricks |
|
|
robmoss wrote: |
Okay. As you're probably aware, there are two different sorts of packages which you can use ... and only two or three on my unstable/testing "~x86" box. |
I nominate that comment referenced above for the GWN Tips & Tricks section. Anyone know where to send that? Maybe they could interview robmoss for the same issue. _________________ An Evil Genious' Guide to Sheeple and How To Avoid Becoming One | 0x4C9EF4A |
|
Back to top |
|
|
robmoss Retired Dev
Joined: 27 May 2003 Posts: 2634 Location: Jesus College, Oxford
|
Posted: Tue Sep 07, 2004 6:18 pm Post subject: Re: GWN Tips & Tricks |
|
|
flickerfly wrote: | Anyone know where to send that? |
Sure: gwn-feedback@gentoo.org.
flickerfly wrote: | Maybe they could interview robmoss for the same issue. |
Heh, not yet, wait at least a week, I'm a bit busy with gcc-3.5 at the moment thanks... _________________ Reality is for those who can't face Science Fiction.
emerge -U will kill your Gentoo
ecatmur, Lord of Portage Bash Scripts |
|
Back to top |
|
|
skunkworx Guru
Joined: 02 Feb 2003 Posts: 420 Location: Planet Houston
|
Posted: Tue Sep 14, 2004 10:55 pm Post subject: |
|
|
First of all, let me add my kudos to a very informative and helpful thread.
I seem to be caught in something of a vicious cycle on one of my Gentoo installations, and I'm hoping someone can shed some light on it.
After following the steps recommended by robmoss in this thread, running emerge sync, emerge -auD world and then emerge -a depclean, I then finish with revdep-rebuild. revdep-rebuild attempts to run this command:
Code: | emerge --oneshot --nodeps =gnome-base/gnome-vfs-1.0.5-r3 =gnome-base/control-center-1.4.0.5-r1 =gnome-base/gconf-1.0.8-r3 =gnome-base/libglade-0.17-r6 =gnome-base/gnome-panel-1.4.2-r2 |
My understanding is that these ebuilds are attempted in order, which is why revdep-rebuild re-orders the list before emerging. If that is correct, then gnome-vfs is being attempted before gconf. This is a problem because gnome-vfs will not compile without gconf. The revdep-rebuild command therefore fails.
While trying to figure out why revdep-rebuild orders gnome-vfs before gconf, I looked at the gnome-vfs-1.0.5-r3 ebuild, and saw these curious RDEPEND and DEPEND definitions:
Code: | RDEPEND="( =gnome-base/gconf-1.0* )
>=gnome-base/gnome-libs-1.4.1.2
>=gnome-base/gnome-mime-data-1.0.1
>=app-arch/bzip2-1.0.2
ssl? ( dev-libs/openssl )"
DEPEND="${RDEPEND}
>=dev-util/pkgconfig-0.8.0
>=dev-util/intltool-0.11
>=gnome-base/gnome-common-1.2.4
nls? ( sys-devel/gettext )
doc? ( dev-util/gtk-doc )" |
The gconf dependency is surrounded by parentheses, but there is no USE variable used as a conditional. I looked at the ebuild(5) man page, and could not find any defintion of DEPEND variable formatting that this matches. Is this a bug that's causing revdep-rebuild to order the ebuild list incorrectly, or is it just a red herring? Whichever the case, what does surrounding a dependency by parantheses like this do, and why did revdep-rebuild order these incorrectly?
Because revdep-rebuild fails, I try a slightly different command myself:
Code: | emerge --oneshot --nodeps =gnome-base/gconf-1.0.8-r3 =gnome-base/gnome-vfs-1.0.5-r3 =gnome-base/control-center-1.4.0.5-r1 =gnome-base/libglade-0.17-r6 =gnome-base/gnome-panel-1.4.2-r2 |
This also fails, because it turns out that gconf wants oaf, gnome-vfs wants gnome-libs and gnome-common, and control-center wants gdk-pixbuf (discovered by running emerge -p on the relevant packages). How come these dependencies aren't tagged as necessary for installation by revdep-rebuild? More generally, why does revdep-rebuild use emerge --nodeps?
Wanting to stay as close as possible to revdep-rebuild's output, I then try this:
Code: | emerge --oneshot --nodeps =gnome-base/oaf-0.6.10 =gnome-base/gconf-1.0.8-r3 =gnome-base/gnome-libs-1.4.2 =gnome-base/gnome-common-2.4.0 =gnome-base/gnome-vfs-1.0.5-r3 =media-libs/gdk-pixbuf-0.22.0-r2 =gnome-base/control-center-1.4.0.5-r1 =gnome-base/libglade-0.17-r6 =gnome-base/gnome-panel-1.4.2-r2 |
This works for all packages except the last one, gnome-panel-1.4.2-r2. It won't even compile. This is part of the output I see:
Code: | >>> emerge (9 of 9) gnome-base/gnome-panel-1.4.2-r2 to /
>>> md5 src_uri ;-) gnome-core-1.4.2.tar.bz2
>>> Unpacking source...
>>> Unpacking gnome-core-1.4.2.tar.bz2 to /var/tmp/portage/gnome-panel-1.4.2-r2/work
* Patching ${S}/ltmain.sh...
* Applying portage-1.4.1.patch...
* Applying relink-1.4.1.patch...
* Applying sed-1.4.3.patch...
automake-1.5: configure.in: installing `./depcomp'
/usr/share/automake-1.5/am/depend2.am: AMDEP does not appear in AM_CONDITIONAL
/usr/share/automake-1.5/am/depend2.am: AMDEP does not appear in AM_CONDITIONAL
/usr/share/automake-1.5/am/depend2.am: AMDEP does not appear in AM_CONDITIONAL
/usr/share/automake-1.5/am/lang-compile.am: AMDEP does not appear in AM_CONDITIONAL
63: bad macro name `-ourdir'
63: bad macro name `-ourdir'
63: bad macro name `-ourdir'
63: bad macro name `-ourdir'
63: bad macro name `-ourdir'
...
[more of the same]
...
[various config.status messages]
...
make: Entering directory `/var/tmp/portage/gnome-panel-1.4.2-r2/work/gnome-core-1.4.2/panel'
Makefile:694: *** missing separator. Stop.
make: Leaving directory `/var/tmp/portage/gnome-panel-1.4.2-r2/work/gnome-core-1.4.2/panel'
>>> Install gnome-panel-1.4.2-r2 into /var/tmp/portage/gnome-panel-1.4.2-r2/image/ category gnome-base
make: Entering directory `/var/tmp/portage/gnome-panel-1.4.2-r2/work/gnome-core-1.4.2/panel'
Makefile:694: *** missing separator. Stop.
make: Leaving directory `/var/tmp/portage/gnome-panel-1.4.2-r2/work/gnome-core-1.4.2/panel'
!!! ERROR: gnome-base/gnome-panel-1.4.2-r2 failed.
!!! Function src_install, Line 80, Exitcode 2
!!! (no error message) |
I'm wondering if this is similar to a bug filed against gnome-panel-2.5.93 (#45295). At any rate, I'm not experienced in troubleshooting problems of this sort.
Despite the fact that it currently won't compile, gnome-panel-1.4.2-r2 is installed on my system. I would assume that an outdated set of USE flags or similar problem is what prompted revdep-rebuild to try and recompile it, however, running revdep-rebuild again at this point (cleanly, after removing the /root/.revdep-rebuild* files created by the last run) finds nothing to be reinstalled. So, it would seem my system is now clean, with all dependencies again satisfied and accounted for. However, if I were to run emerge depclean either now or later (such as after another portage sync), the following packages would be removed:
Code: | gnome-base/gnome-common
selected: 2.4.0
protected: none
omitted: none
media-libs/gdk-pixbuf
selected: 0.22.0-r2
protected: none
omitted: none
gnome-base/oaf
selected: 0.6.10
protected: none
omitted: none
gnome-base/gnome-libs
selected: 1.4.2
protected: none
omitted: none |
It seems the whole process would start over again. Is this an effect of depclean not being as careful as it should be with its dependency checking? Would using the dep script mentioned in this thread be more effective? Or, should I put these packages in world to keep depclean from trying to remove them?
Sorry for the long post, and please let me know if I need to clarify something. Thanks! _________________ Proud to be a... eh, forget it.
"Everyday is just one day." -- not the Traveling Wilburys |
|
Back to top |
|
|
Gooba42 n00b
Joined: 04 Feb 2004 Posts: 13
|
Posted: Wed Sep 15, 2004 5:43 am Post subject: |
|
|
robmoss wrote: |
So an example package.keywords file might look like this:
Code: | sys-devel/gcc ~x86
x11-base/xfree ~x86 |
This would tell portage that it should use the "~x86" keyword for gcc and xfree and the "x86" keyword for everything else.
Code: | emerge sync
emerge -uDpv world
emerge -uDv world
emerge -pv depclean
emerge -v depclean
revdep-rebuild -pv
revdep-rebuild -v
dispatch-conf |
Personally, I run "glsa-check -f all" every hour, and the above set of commands for updating my system every day. I've not had a single breakage in over a year on my stable "x86" box, and only two or three on my unstable/testing "~x86" box. |
Several/many bits clipped out of the above but from this I set up 2 cron jobs. I run the "glsa-check -f all" hourly, an "emerge sync" and a "mirrorselect -a -s3" nightly and another simple bash script for the other part.
Code: |
#!/bin/bash
emerge sync 2>&1 /dev/null
emerge -uDpv world
echo "If this list is agreeable then run: emerge -uDv world\n"
emerge -pv depclean
echo "If this lis is agreeable then run: emerge -v depclean\n"
revdep-rebuild -pv
echo "If this list is agreeable then run: revdep-rebuild -v \n"
emerge -uDfv world 2>&1 /dev/null
|
This should build an upgrade list, a removal list and a rebuild list and then makes sure that it'll fetch all the packages necessary for when I do get around to actually doing the update and uses the default cron behavior to mail all the results back to me in a quickie report format (including reminders for the appropriate commands should I be particularly braindead for some reason).
Are there any gotchas I missed? I'm running distcleaner in a seperate cron job so I'm controlling the disk space from the automated fetches. If I missed something I know it's going to be something easy enough to feel stupid about but I don't see it myself.
In any case, thanks for all the contributions on this thread. It's exactly the information I needed to address another problem altogether plus some help with keeping me up to date and secure. |
|
Back to top |
|
|
hepta_sean Apprentice
Joined: 27 Apr 2004 Posts: 246 Location: Berlin, Germany
|
Posted: Wed Sep 15, 2004 8:50 am Post subject: |
|
|
skunkworx wrote: | While trying to figure out why revdep-rebuild orders gnome-vfs before gconf, I looked at the gnome-vfs-1.0.5-r3 ebuild, and saw these curious RDEPEND and DEPEND definitions:
Code: | RDEPEND="( =gnome-base/gconf-1.0* )
>=gnome-base/gnome-libs-1.4.1.2
>=gnome-base/gnome-mime-data-1.0.1
>=app-arch/bzip2-1.0.2
ssl? ( dev-libs/openssl )"
DEPEND="${RDEPEND}
>=dev-util/pkgconfig-0.8.0
>=dev-util/intltool-0.11
>=gnome-base/gnome-common-1.2.4
nls? ( sys-devel/gettext )
doc? ( dev-util/gtk-doc )" |
The gconf dependency is surrounded by parentheses, but there is no USE variable used as a conditional. I looked at the ebuild(5) man page, and could not find any defintion of DEPEND variable formatting that this matches. Is this a bug that's causing revdep-rebuild to order the ebuild list incorrectly, or is it just a red herring? Whichever the case, what does surrounding a dependency by parantheses like this do, and why did revdep-rebuild order these incorrectly? |
It looks like a bug to me. Have you searched for it?
Quote: | Because revdep-rebuild fails, I try a slightly different command myself:
Code: | emerge --oneshot --nodeps =gnome-base/gconf-1.0.8-r3 =gnome-base/gnome-vfs-1.0.5-r3 =gnome-base/control-center-1.4.0.5-r1 =gnome-base/libglade-0.17-r6 =gnome-base/gnome-panel-1.4.2-r2 |
This also fails, because it turns out that gconf wants oaf, gnome-vfs wants gnome-libs and gnome-common, and control-center wants gdk-pixbuf (discovered by running emerge -p on the relevant packages). How come these dependencies aren't tagged as necessary for installation by revdep-rebuild? More generally, why does revdep-rebuild use emerge --nodeps? |
revdep-rebuild is designed to repair broken packages, which are already on your system:
If libraries are removed by emerge depclean, there may be binaries, which are still linked against these libraries (due to changed USE flags or because the configure script found the library and linked to it). revdep-rebuild searches these broken binaries and just remerges the packages they belong to. So the binaries are recompiled without reference to the removed libraries.
For this process the other dependencies of the packages should be irrelevant, since nothing new is emerged and they should already be on the system. If they are not, then something is more horribly broken, which revdep-rebuild cannot (and isn't supposed to) handle. In this case it is (like you already figured out), emerge depclean being a little to agressive. See below.
Quote: | This works for all packages except the last one, gnome-panel-1.4.2-r2. It won't even compile. This is part of the output I see:
Code: | >>> emerge (9 of 9) gnome-base/gnome-panel-1.4.2-r2 to /
...
63: bad macro name `-ourdir'
63: bad macro name `-ourdir'
63: bad macro name `-ourdir'
63: bad macro name `-ourdir'
63: bad macro name `-ourdir'
...
make: Entering directory `/var/tmp/portage/gnome-panel-1.4.2-r2/work/gnome-core-1.4.2/panel'
Makefile:694: *** missing separator. Stop.
make: Leaving directory `/var/tmp/portage/gnome-panel-1.4.2-r2/work/gnome-core-1.4.2/panel'
>>> Install gnome-panel-1.4.2-r2 into /var/tmp/portage/gnome-panel-1.4.2-r2/image/ category gnome-base
make: Entering directory `/var/tmp/portage/gnome-panel-1.4.2-r2/work/gnome-core-1.4.2/panel'
Makefile:694: *** missing separator. Stop.
make: Leaving directory `/var/tmp/portage/gnome-panel-1.4.2-r2/work/gnome-core-1.4.2/panel'
!!! ERROR: gnome-base/gnome-panel-1.4.2-r2 failed.
!!! Function src_install, Line 80, Exitcode 2
!!! (no error message) |
I'm wondering if this is similar to a bug filed against gnome-panel-2.5.93 (#45295). At any rate, I'm not experienced in troubleshooting problems of this sort. |
I don't think it's similar to the bug, because in the bug the ebuild already fails during the configure step. Yours runs through to the install and fails due to some syntax error in the Makefile. I would guess, that it could have something to do with this message concerning "-ourdir". Maybe the absence of this macro causes the Makefile to be malformed. Sorry, I am not able to help you more about this, right now.
Quote: | Despite the fact that it currently won't compile, gnome-panel-1.4.2-r2 is installed on my system. I would assume that an outdated set of USE flags or similar problem is what prompted revdep-rebuild to try and recompile it, however, running revdep-rebuild again at this point (cleanly, after removing the /root/.revdep-rebuild* files created by the last run) finds nothing to be reinstalled. |
As said above, every package, that revdep-rebuild tries to remerge is currently installed. My theory is: emerge depclean removed these gnome-libs by mistake. Now, the programs using them are, of course, broken. revdep-rebuild tries to remerge them, but cannot do it, because they depend on the removed libs, and cannot be compiled without the libraries. You emerged these dependencies by hand, and everything is o.k. again (no remerging of the "broken" gnome-panel is necessary, because the libraries are there again), until:
Quote: | However, if I were to run emerge depclean either now or later (such as after another portage sync), the following packages would be removed:
Code: | gnome-base/gnome-common
selected: 2.4.0
protected: none
omitted: none
media-libs/gdk-pixbuf
selected: 0.22.0-r2
protected: none
omitted: none
gnome-base/oaf
selected: 0.6.10
protected: none
omitted: none
gnome-base/gnome-libs
selected: 1.4.2
protected: none
omitted: none |
It seems the whole process would start over again. Is this an effect of depclean not being as careful as it should be with its dependency checking? Would using the dep script mentioned in this thread be more effective? Or, should I put these packages in world to keep depclean from trying to remove them? |
You could try dep -s, but dep is still work in progress, so be careful and report back in that thread. (And prepare for it to be very slow, but at least it should be more accurate.)
Putting the packages in world would be a possible workaround. It should stop emerge depclean from removing these packages. Would, however, be interesting to find out, why emerge depclean is to agressive on these. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|