Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 32751 - emerge results in NEW package being unmerged (autoclean bug)
Summary: emerge results in NEW package being unmerged (autoclean bug)
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: High blocker (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-11-04 15:47 UTC by Jeremy Huddleston (RETIRED)
Modified: 2003-11-07 13:27 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jeremy Huddleston (RETIRED) gentoo-dev 2003-11-04 15:47:14 UTC
When I recently did an update of my system with binary packages, it trashed my 
gentoo by removing the NEW packages when it autocleaned itself... 
 
$ emerge -Upvk world 
>>> --upgradeonly implies --update... adding --update to options. 
 
These are the packages that I would merge, in order: 
 
Calculating world dependencies ...done! 
[binary     U ] media-libs/alsa-lib-0.9.8 [0.9.7] 
[binary     U ] media-libs/libsdl-1.2.6-r2 [1.2.6-r1] +oss +alsa +esd +arts 
+nas +X +dga +xv +xinerama +fbcon +directfb +ggi +svga +aalib +opengl -noaudio 
-novideo -nojoystick 
[binary     U ] net-im/gaim-0.71-r2 [0.70-r2] +nls +perl +spell +nas +ssl 
[binary  N    ] media-fonts/artwiz-fonts-2.4 
[binary     U ] x11-wm/icewm-1.2.13 [1.2.9] +esd +gnome +imlib +nls +spell 
+truetype 
[binary     U ] net-www/links-2.1_pre11 [2.1_pre9] +ssl +javascript +png +X 
+gpm +tiff +fbcon +svga +jpeg 
[binary     U ] media-video/ffmpeg-0.4.7 [0.4.7_pre20030624] +mmx +encode 
+oggvorbis +doc +faad +dvd -static +sdl +imlib +truetype 
[binary  N    ] dev-libs/boehm-gc-6.2 
[binary     U ] media-libs/gdk-pixbuf-0.22.0-r2 [0.22.0] +doc +mmx 
[binary     U ] net-www/w3m-0.4.2 [0.4.1-r3] +gpm -cjk +gtk +imlib -xface +ssl 
[binary     U ] media-libs/libmpeg3-1.5.2 [1.5-r1] 
[binary     U ] net-misc/netkit-tftp-0.17-r2 [0.17-r1] 
[binary     U ] x11-libs/fltk-1.1.4 [1.1.2-r2] +opengl -debug -nptl 
[binary  N    ] dev-util/yacc-1.9.1-r1 
[binary     U ] net-www/apache-2.0.48 [2.0.47] +berkdb +gdbm -ldap 
[binary     U ] net-misc/dhcpcd-1.3.22_p4-r2 [1.3.22_p4-r1] -build -static 
[binary     U ] dev-lang/python-2.2.3-r5 [2.2.3-r1] +ncurses +gdbm +readline 
+tcltk +berkdb -build +doc +ssl 
[binary     U ] sys-libs/lib-compat-1.3 [1.2] 
[binary     U ] app-portage/gentoolkit-0.1.34 [0.1.33] 
[binary     U ] app-misc/screen-3.9.15-r1 [3.9.15] +pam 
 
$ emerge -Uvk world 
>>> --upgradeonly implies --update... adding --update to options. 
Calculating world dependencies ...done! 
>>> emerge (1 of 20) media-libs/alsa-lib-0.9.8 to / 
>>> extracting info 
>>> extracting alsa-lib-0.9.8 
>>> Merging media-libs/alsa-lib-0.9.8 to / 
... 
>>> Regenerating /etc/ld.so.cache... 
 * Caching service dependencies...                                                                                                                                   
[ ok ] 
>>> media-libs/alsa-lib-0.9.8 merged. 
 
 media-libs/alsa-lib 
    selected: 0.9.8 
   protected: 0.9.7 
     omitted: none 
 
>>> 'Selected' packages are slated for removal. 
>>> 'Protected' and 'omitted' packages will not be removed. 
 
>>> Waiting 5 seconds before starting... 
>>> (Control-C to abort)... 
>>> Unmerging in: 5 4 3 2 1 
>>> Unmerging media-libs/alsa-lib-0.9.8... 
No package files given... Grabbing a set. 
/usr/sbin/ebuild.sh: line 1196: /var/tmp/portage-pkg/alsa-lib-0.9.8/inf/
alsa-lib-0.9.8.ebuild: No such file or directory 
 
!!! ERROR: alsa-lib-0.9.8/alsa-lib-0.9.8 failed. 
!!! Function , Line 1196, Exitcode 1 
!!! error sourcing ebuild 
 
<<<        obj /usr/share/doc/alsa-lib-0.9.8/TODO.gz 
<<<        obj /usr/share/doc/alsa-lib-0.9.8/ChangeLog.gz 
<<<        obj /usr/share/doc/alsa-lib-0.9.8/COPYING.gz 
<<<        obj /usr/share/alsa/sndo-mixer.alisp 
<<<        obj /usr/share/alsa/pcm/surround51.conf 
<<<        obj /usr/share/alsa/pcm/surround50.conf 
<<<        obj /usr/share/alsa/pcm/surround41.conf 
<<<        obj /usr/share/alsa/pcm/surround40.conf 
<<<        obj /usr/share/alsa/pcm/rear.conf 
<<<        obj /usr/share/alsa/pcm/iec958.conf 
<<<        obj /usr/share/alsa/pcm/front.conf 
<<<        obj /usr/share/alsa/pcm/center_lfe.conf 
<<<        obj /usr/share/alsa/cards/aliases.conf 
<<<        obj /usr/share/alsa/cards/aliases.alisp 
<<<        obj /usr/share/alsa/cards/YMF744.conf 
<<<        obj /usr/share/alsa/cards/VXPocket440.conf 
<<<        obj /usr/share/alsa/cards/VXPocket.conf 
<<<        obj /usr/share/alsa/cards/VX222.conf 
<<<        obj /usr/share/alsa/cards/VIA8233A.conf 
<<<        obj /usr/share/alsa/cards/VIA8233.conf 
<<<        obj /usr/share/alsa/cards/TRID4DWAVENX.conf 
<<<        obj /usr/share/alsa/cards/SI7018/sndop-mixer.alisp 
<<<        obj /usr/share/alsa/cards/SI7018/sndoc-mixer.alisp 
<<<        obj /usr/share/alsa/cards/SI7018.conf 
<<<        obj /usr/share/alsa/cards/RME9652.conf 
<<<        obj /usr/share/alsa/cards/RME9636.conf 
<<<        obj /usr/share/alsa/cards/NFORCE.conf 
<<<        obj /usr/share/alsa/cards/ICH.conf 
<<<        obj /usr/share/alsa/cards/ICE1724.conf 
<<<        obj /usr/share/alsa/cards/ICE1712.conf 
<<<        obj /usr/share/alsa/cards/GUS.conf 
<<<        obj /usr/share/alsa/cards/FM801.conf 
<<<        obj /usr/share/alsa/cards/ENS1371.conf 
<<<        obj /usr/share/alsa/cards/ENS1370.conf 
<<<        obj /usr/share/alsa/cards/EMU10K1.conf 
<<<        obj /usr/share/alsa/cards/CS46xx.conf 
<<<        obj /usr/share/alsa/cards/CMI8738-MC6.conf 
<<<        obj /usr/share/alsa/cards/CMI8338.conf 
<<<        obj /usr/share/alsa/cards/Audigy2.conf 
<<<        obj /usr/share/alsa/cards/Audigy.conf 
<<<        obj /usr/share/alsa/alsa.conf 
<<<        obj /usr/share/aclocal/alsa.m4 
<<<        obj /usr/lib/pkgconfig/alsa.pc 
<<<        obj /usr/lib/libasound.so.2.0.0 
<<<        obj /usr/lib/libasound.la 
<<<        obj /usr/include/sys/asoundlib.h 
<<<        obj /usr/include/alsa/version.h 
<<<        obj /usr/include/alsa/timer.h 
<<<        obj /usr/include/alsa/sound/ainstr_simple.h 
<<<        obj /usr/include/alsa/sound/ainstr_iw.h 
<<<        obj /usr/include/alsa/sound/ainstr_gf1.h 
<<<        obj /usr/include/alsa/sound/ainstr_fm.h 
<<<        obj /usr/include/alsa/seqmid.h 
<<<        obj /usr/include/alsa/seq_midi_event.h 
<<<        obj /usr/include/alsa/seq_event.h 
<<<        obj /usr/include/alsa/seq.h 
<<<        obj /usr/include/alsa/rawmidi.h 
<<<        obj /usr/include/alsa/pcm_plugin.h 
<<<        obj /usr/include/alsa/pcm_ordinary.h 
<<<        obj /usr/include/alsa/pcm.h 
<<<        obj /usr/include/alsa/output.h 
<<<        obj /usr/include/alsa/mixer_ordinary.h 
<<<        obj /usr/include/alsa/mixer.h 
<<<        obj /usr/include/alsa/instr.h 
<<<        obj /usr/include/alsa/input.h 
<<<        obj /usr/include/alsa/iatomic.h 
<<<        obj /usr/include/alsa/hwdep.h 
<<<        obj /usr/include/alsa/global.h 
<<<        obj /usr/include/alsa/error.h 
<<<        obj /usr/include/alsa/conv.h 
<<<        obj /usr/include/alsa/control.h 
<<<        obj /usr/include/alsa/conf.h 
<<<        obj /usr/include/alsa/asoundlib.h 
<<<        obj /usr/include/alsa/asoundef.h 
<<<        obj /usr/include/alsa/alisp.h 
<<<        obj /usr/bin/aserver 
<<<        obj /usr/bin/alsalisp 
<<<        sym /usr/lib/libasound.so.2 
<<<        sym /usr/lib/libasound.so.1 
<<<        sym /usr/lib/libasound.so 
<<<        dir /usr/share/doc/alsa-lib-0.9.8 
<<<        dir /usr/share/alsa/pcm 
<<<        dir /usr/share/alsa/cards/SI7018 
<<<        dir /usr/share/alsa/cards 
<<<        dir /usr/include/alsa/sound 
<<<        dir /usr/include/alsa 
--- !empty dir /usr/share/doc 
--- !empty dir /usr/share/alsa 
--- !empty dir /usr/share/aclocal 
--- !empty dir /usr/share 
--- !empty dir /usr/lib/pkgconfig 
--- !empty dir /usr/lib 
--- !empty dir /usr/include/sys 
--- !empty dir /usr/include 
--- !empty dir /usr/bin 
--- !empty dir /usr 
/usr/sbin/ebuild.sh: line 1196: /var/tmp/portage-pkg/alsa-lib-0.9.8/inf/
alsa-lib-0.9.8.ebuild: No such file or directory 
 
!!! ERROR: alsa-lib-0.9.8/alsa-lib-0.9.8 failed. 
!!! Function , Line 1196, Exitcode 1 
!!! error sourcing ebuild 
 
This happened on all the other packages as well which essentially results in 
the package being uninstalled.  Notice python's in there, so now python's 
gone... this is gonna be a mess to clean up... 

Reproducible: Always
Steps to Reproduce:
1.
2.
3.



$ emerge info 
-bash: /usr/bin/emerge: /usr/bin/python: bad interpreter: No such file or 
directory 
 
;p 
 
$ ls -ld /var/db/pkg/sys-apps/portage* 
drwxr-xr-x    2 root     root          584 Oct 29 02:47 /var/db/pkg/sys-apps/
portage-2.0.49-r15 
p
Comment 1 Jeremy Huddleston (RETIRED) gentoo-dev 2003-11-04 15:59:23 UTC
I went to / and just 'tar -xjf /path/to/python-package.tar.bz2' to get a
working python...

Here's my emerge info:
$ emerge info
Portage 2.0.49-r15 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.22-ck2)
=================================================================
System uname: 2.4.22-ck2 i686 Pentium II (Deschutes)
Gentoo Base System version 1.4.3.10p1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium2 -mcpu=pentium2 -O3 -pipe -fomit-frame-pointer -falign-functions=4
-falign-jumps=4 -falign-loops=4"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config
/usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/
/usr/share/texmf/tex/platex/config/ /usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-march=pentium2 -mcpu=pentium2 -O3 -pipe -fomit-frame-pointer -falign-functions=4
-falign-jumps=4 -falign-loops=4"
DISTDIR="/usr/local/download/portage/distfiles"
FEATURES="ccache autoaddcvs sandbox userpriv usersandbox"
GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/local/download/portage/packages-pentium2"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/download/portage"
SYNC="rsync://192.168.0.1/gentoo-portage"
USE="x86 oss apm avi crypt cups encode foomaticdb gif jpeg libg++ mad mikmod
mpeg ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib directfb
gtkhtml alsa gdbm berkdb slang readline arts tetex aalib nas bonobo svga
ggi tcltk java guile mysql postgres X sdl gpm tcpd pam libwww ssl perl python
esd imlib oggvorbis gnome gtk qt kde motif opengl mozilla gphoto2 cdr scanner
acl acpi amd apache2 atlas bindist clisp curl dga dnd doc dv dvb dvd emacs
ethereal evo faad fbcon flash gb gd gd-external gnomedb gnutls gps gstreamer
gtk2 icc imagemagick imap innodb ipv6 javascript jikes joystick junit justify
kerberos lcms ldam leim libgda lirc mbox md5sum mmx mng mozaccess mozcalendar
mozctl mozinterfaceinfo mozp3p mozsvg mozxmlterm mpi mule objc odbc offensive
openal parse-clocks pda php pic plotutils pnp ppds qhull rplay ruby samba
sasl slp snmp socks5 sox sqlite tiff trusted type1 usb v4l wmf wxwindows
Xaw3d xinerama xml xvid"

Additionally, a workaround is to just unmerge the package before 'emerge
-k'ing it... obviously this won't work with packages neccessary for portage
like python or portage... 

I've verified that it is not a problem with -U, -v, or world because the
problem shows itself with simply 'emerge -k libsdl'.  Additionally, pressing
ctr-c to stop the unmerge (and I assume simply disabling the autoclean) isn't
that great of a workaround because doing 'emerge clean' after the update
will still cause the newer package to be deleted:

>>> Regenerating /etc/ld.so.cache...
 * Caching service dependencies...                                      
                                                                        
                   [ ok ]
>>> media-libs/libsdl-1.2.6-r2 merged.

 media-libs/libsdl
    selected: 1.2.6-r2
   protected: 1.2.6-r1
     omitted: none

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

>>> Waiting 5 seconds before starting...
>>> (Control-C to abort)...
>>> Unmerging in: 5 4 3 2
(15:25:42 Tue Nov 04 2003 root@predator)
/ $ emerge clean

 media-libs/libsdl
    selected: 1.2.6-r2
   protected: 1.2.6-r1
     omitted: none

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

>>> Waiting 5 seconds before starting...
>>> (Control-C to abort)...
>>> Unmerging in: 5 4
Comment 2 Marius Mauch (RETIRED) gentoo-dev 2003-11-04 16:02:37 UTC
Are you sure it only happens with -k (so `emerge libsdl` is working correct)
?
Comment 3 Jeremy Huddleston (RETIRED) gentoo-dev 2003-11-04 16:13:16 UTC
I apologize.  You are right.  It is happening with just 'emerge gentoolkit'.
 I assumed that since it worked on the other system with similar specs, it
was working here... my apologies for that...

And it's not just with 'autoclean'.  It's happening with 'emerge clean' after


/ $ emerge gentoolkit
Calculating dependencies ...done!
>>> emerge (1 of 1) app-portage/gentoolkit-0.1.34 to /
...
>>> app-portage/gentoolkit-0.1.34 merged.

 app-portage/gentoolkit
    selected: 0.1.34
   protected: 0.1.33
     omitted: none

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

---

Now this is odd... I figured I'd just unmerge the packages manually, but
the new version of gentoolkit is shown in the 'emerge clean' but not the
'emerge unmerge ...'
$ emerge clean

 media-libs/libsdl
    selected: 1.2.6-r2
   protected: 1.2.6-r1
     omitted: none

 app-portage/gentoolkit
    selected: 0.1.34
   protected: 0.1.33
     omitted: none
...

/ $ emerge unmerge \=app-portage/gentoolkit-0.1.33 \=media-libs/libsdl-1.2.6-r1

 app-portage/gentoolkit
    selected: 0.1.33
   protected: none
     omitted: none

 media-libs/libsdl
    selected: 1.2.6-r1
   protected: none
     omitted: 1.2.6-r2
Comment 4 Jeremy Huddleston (RETIRED) gentoo-dev 2003-11-07 13:27:02 UTC
/usr/lib/portage/bin/fix-db.py seems to have done the trick.

Thanks.