Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
emerge --depclean wants to remove Portage?! (and more)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
icb410
n00b
n00b


Joined: 01 Jul 2004
Posts: 55

PostPosted: Sat Feb 17, 2007 6:16 pm    Post subject: emerge --depclean wants to remove Portage?! (and more) Reply with quote

Hi,

I've been trying to clean out the cruft from my computer that's been running gentoo for ~3years now. It's the box I've really learned linux on and I know that I probably haven't been maintaining it properly for sometime though I've got it running pretty up-to-date. I've done an emerge -p --depclean to try and get rid of stuff, but some very important packages seem to keep popping up in the list. These include portage, mysql and a host of others that I know other packages are dependent on.

As a first approach to getting rid of these false positives and paring down the list, I took the output and ran each through script to check for dependencies with equery:
Code:
emerge -p --depclean > depclean.lst
cat depclean.lst | grep / > cleandep.lst            #(then I removed the first line by hand)
cat cleandep.lst | xargs -L 1 prunedep.sh
cat remove.lst | xargs -n 1 emerge -C

Where prunedepclean.sh was:
Code:
 
moobox ~ # cat prunedepclean.sh
#!/bin/bash
for i in $1; do
        echo "equery depends $i"
        DEPS=`equery depends $i`
        if [ "$DEPS" == "" ]; then
                echo "   removing $i...."
                echo $i >> remove.lst
        else
                echo "   is depended on by: "
                for x in $DEPS; do
                        echo "        $x"
                done
        fi
done


I did this iteratively to get rid of those things whose dependent packages were removed in the previous run.

Now I'm left with the following packages:

Code:

 dev-util/pccts
 media-libs/gd
 sys-apps/sandbox
 media-libs/akode
 dev-db/mysql
 media-libs/urt
 media-libs/libmodplug
 media-libs/libdv
 media-libs/jasper
 dev-db/qt-unixODBC
 media-gfx/gimp-print
 media-libs/libexif-gtk
 app-shells/bash-completion-config
 dev-python/pycrypto
 sys-apps/portage
 media-libs/libmovtar
 media-libs/gdk-pixbuf
 media-libs/libfame
 sys-apps/acl
 media-gfx/graphviz
 dev-lang/lua
 media-libs/jbigkit
 gnome-base/gnome-libs
 media-libs/xvid
 media-libs/speex
 media-libs/openal
 sys-apps/attr
 dev-perl/DBD-mysql


These are all depended on by other packages as shown by equery depends:
Code:
equery depends dev-util/pccts
   is depended on by:
        app-cdr/cdrdao-1.2.1-r1
equery depends media-libs/gd
   is depended on by:
        sci-visualization/gnuplot-4.0-r1
        media-libs/libwmf-0.2.8.4
equery depends sys-apps/sandbox
   is depended on by:
        sys-apps/portage-2.1.1
equery depends media-libs/akode
   is depended on by:
        kde-base/kdemultimedia-3.5.6
equery depends dev-db/mysql
   is depended on by:
        net-libs/libwww-5.4.0-r7
        dev-perl/DBD-mysql-2.9007
        dev-libs/cyrus-sasl-2.1.22-r1
equery depends media-libs/urt
   is depended on by:
        media-libs/netpbm-10.37.0
        media-libs/giflib-4.1.4
equery depends media-libs/libmodplug
   is depended on by:
        media-libs/xine-lib-1.1.3
equery depends media-libs/libdv
   is depended on by:
        media-libs/libquicktime-0.9.10
        media-video/mjpegtools-1.8.0-r1
        media-video/mplayer-1.0_rc1-r2
        media-video/transcode-1.0.2-r3
equery depends media-libs/jasper
   is depended on by:
        media-gfx/imagemagick-6.3.0.5
        media-libs/netpbm-10.37.0
        kde-base/kdelibs-3.5.6-r2
equery depends dev-db/qt-unixODBC
   is depended on by:
        x11-libs/qt-3.3.6-r5
equery depends media-gfx/gimp-print
   is depended on by:
        net-print/cups-1.2.6
equery depends media-libs/libexif-gtk
   is depended on by:
        media-gfx/gtkam-0.1.12-r2
equery depends app-shells/bash-completion-config
   is depended on by:
        app-editors/vim-7.0.17
        app-editors/vim-core-7.0.17
        app-portage/genlop-0.30.5
        app-portage/udept-0.5.99.0.2.95-r1
        dev-util/git-1.4.4.4
        dev-util/subversion-1.3.2-r3
equery depends dev-python/pycrypto
   is depended on by:
        sys-apps/portage-2.1.1
equery depends sys-apps/portage
   is depended on by:
        sys-libs/db-4.2.52_p4-r2
        app-portage/gentoolkit-0.2.2
        app-portage/udept-0.5.99.0.2.95-r1
        app-portage/esearch-0.7.1
        dev-util/subversion-1.3.2-r3
        dev-lang/tk-8.4.12
        sys-process/vixie-cron-4.1-r9
        dev-java/blackdown-jre-1.4.2.03-r13
        dev-java/blackdown-jdk-1.4.2.03-r12
        dev-java/ant-core-1.6.5-r14
        sci-chemistry/ccp4-6.0.2
        net-nds/portmap-5b-r9
        sys-apps/baselayout-1.12.6
        sys-apps/attr-2.4.19
        sys-apps/shadow-4.0.18.1
        net-misc/rsync-2.6.9-r1
equery depends media-libs/libmovtar
   is depended on by:
        media-video/mjpegtools-1.8.0-r1
equery depends media-libs/gdk-pixbuf
   is depended on by:
        x11-libs/xosd-2.2.8-r1
equery depends media-libs/libfame
   is depended on by:
        media-libs/xine-lib-1.1.3
        media-video/transcode-1.0.2-r3
equery depends sys-apps/acl
   is depended on by:
        app-editors/vim-7.0.17
        sys-apps/coreutils-6.4
        net-fs/samba-3.0.24
        net-misc/rsync-2.6.9-r1
        kde-base/kdelibs-3.5.6-r2
equery depends media-gfx/graphviz
   is depended on by:
        media-gfx/imagemagick-6.3.0.5
equery depends dev-lang/lua
   is depended on by:
        dev-lang/swig-1.3.31
        kde-base/kdelibs-3.5.6-r2
equery depends media-libs/jbigkit
   is depended on by:
        media-gfx/imagemagick-6.3.0.5
        media-libs/netpbm-10.37.0
        media-libs/tiff-3.8.2-r2
equery depends gnome-base/gnome-libs
   is depended on by:
        media-libs/gdk-pixbuf-0.22.0-r5
        dev-db/unixODBC-2.2.11-r1
equery depends media-libs/xvid
   is depended on by:
        media-video/ffmpeg-0.4.9_p20061016
        media-video/mplayer-1.0_rc1-r2
        media-video/transcode-1.0.2-r3
equery depends media-libs/speex
   is depended on by:
        media-sound/vorbis-tools-1.1.1-r3
        media-libs/xine-lib-1.1.3
        media-libs/akode-2.0_rc1
        media-video/mplayer-1.0_rc1-r2
equery depends media-libs/openal
   is depended on by:
        media-video/mplayer-1.0_rc1-r2
equery depends sys-apps/attr
   is depended on by:
        sys-apps/acl-2.2.27
        sys-apps/coreutils-6.4
equery depends dev-perl/DBD-mysql
   is depended on by:
        dev-db/mysql-4.1.14


What's going on here? Why is my portage so crappy at calculating dependencies and depclean?

Here's emerge --info. Note that this is a patched version of portage to allow parallel emerges (via Devsk's work @http://forums.gentoo.org/viewtopic-t-484842.html). Is it likely that the patch is the problem? It calculates dependencies beautifully for parallel builds.
Code:
Portage 2.1.1 (default-linux/x86/2006.1/desktop, gcc-4.1.1, glibc-2.5-r0, 2.6.19-gentoo-r4 i686)
=================================================================
System uname: 2.6.19-gentoo-r4 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz
Gentoo Base System version 1.12.6
Last Sync: Tue, 13 Feb 2007 16:30:01 +0000
ccache version 2.4 [enabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: 1.3.7, 2.0.31
dev-lang/python:     2.3.5-r3, 2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks fixpackagesx metadata-transfer moo parallel parallel-fetch sandbox sfperms strict"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo"
LINGUAS="en"
MAKEOPTS="-j2 "
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/local/sci"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X aac alsa alsa_cards_emu10k1 alsa_pcm_plugins_adpcm alsa_pcm_plugins_alaw alsa_pcm_plugins_asym alsa_pcm_plugins_copy alsa_pcm_plugins_dmix alsa_pcm_plugins_dshare alsa_pcm_plugins_dsnoop alsa_pcm_plugins_empty alsa_pcm_plugins_extplug alsa_pcm_plugins_file alsa_pcm_plugins_hooks alsa_pcm_plugins_iec958 alsa_pcm_plugins_ioplug alsa_pcm_plugins_ladspa alsa_pcm_plugins_lfloat alsa_pcm_plugins_linear alsa_pcm_plugins_meter alsa_pcm_plugins_mulaw alsa_pcm_plugins_multi alsa_pcm_plugins_null alsa_pcm_plugins_plug alsa_pcm_plugins_rate alsa_pcm_plugins_route alsa_pcm_plugins_share alsa_pcm_plugins_shm alsa_pcm_plugins_softvol arts avantgo bash-completion berkdb bitmap-fonts browserplugin bzip2 cairo cdr cli cracklib crypt cups dbus dlloader dri dvd dvdr eds elibc_glibc emboss encode esd fam firefox foomaticdb fortran gcj gdbm gif gimp glitz gpm gstreamer gtk hal iconv imagemagick imlib input_devices_keyboard input_devices_mouse ipv6 isdnlog java jpeg kde kernel_linux lcd_devices_bayrad lcd_devices_cfontz lcd_devices_cfontz633 lcd_devices_glk lcd_devices_hd44780 lcd_devices_lb216 lcd_devices_lcdm001 lcd_devices_mtxorb lcd_devices_ncurses lcd_devices_text ldap libg++ linguas_en mad midi mikmod motif mozilla mp3 mpeg mplayer ncurses nls nptl nptlonly nsplugin nvidia ogg opengl oss pam pcre pdf perl png povray ppds pppd python qt qt3 qt4 quicktime rdesktop readline real reflection samba sdl session spell spl sqlite sqlite3 ssl svg svga tcl tcltk tcpd tiff tk truetype truetype-fonts type1-fonts ucs2 unicode usb userland_GNU v4l v4l2 video_cards_fbdev video_cards_nvidia video_cards_vesa vorbis win32codecs wmf xinerama xml xorg xv zeroconf zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Back to top
View user's profile Send private message
icb410
n00b
n00b


Joined: 01 Jul 2004
Posts: 55

PostPosted: Sat Feb 17, 2007 7:59 pm    Post subject: Reply with quote

equery is stupid.... when checking dependencies, use flags are not checked. Most of the packages portage spit out really are not needed since their use flags are not set in the packages that may have required them. I found that using dep from udept was very good.... still had to modify the output to make sure the right versions were removed, and it removed the fam library needed by all of kde, but re-emerging that was fine and revdep-rebuild took care of the rest.

Still don't know why portage wanted to get rid of itself.... perhaps because I put it in /etc/portage/package.provided to prevent my version from being upgraded?
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9005
Location: beyond the rim

PostPosted: Sun Feb 18, 2007 6:07 am    Post subject: Reply with quote

I'd blame it on that patch or the abuse of package.provided as so far I haven't seen any reports about --depclean breakage on such a scale. So please check with an unpacthed portage version and without any portage installed packages in package.provided to make sure it isn't a portage bug.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
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