Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 128118 - world/system discrepencies
Summary: world/system discrepencies
Status: RESOLVED INVALID
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Dependencies (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-03-30 09:04 UTC by Phil Richards
Modified: 2006-04-01 03:51 UTC (History)
0 users

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


Attachments
Output of "emerge -edp system" (emerge-edp.system,51.94 KB, text/plain)
2006-03-30 23:52 UTC, Phil Richards
Details
Output of "emerge -edp world" (emerge-edp.world,398.29 KB, text/plain)
2006-03-30 23:52 UTC, Phil Richards
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Phil Richards 2006-03-30 09:04:01 UTC
Ok, this cropped up after I change to modular X and gcc 4.1.  I obviously followed the upgrade steps for gcc 4.1, and this involves emerge -e system and emerge -e world.  I took the opportunity to clean out all the packages on my machine that had been orphaned - and this has involved a lot of "emerge -pe world".

First symptom:
I have media-plugins/gst-plugins-ogg in my world file:
% emerge -pe world | grep gst-plugins-ogg
[ebuild  N    ] media-plugins/gst-plugins-ogg-0.8.12

However:
% emerge -p gst-plugins-ogg
[ebuild   R   ] media-plugins/gst-plugins-ogg-0.10.4

Both the 0.8.12 and 0.10.4 versions *are* installed (the 0.8 because it is dragged in as a dependency, the 0.10.4 because it is the latest version).

I don't understand why the 0.10.4 version isn't shown by emerge -pe world.  Am I just being dumb?  (If I am, this current behaviour is rather inconvenient.)

Second symptom (and sorry if this is a completely different problem):
I don't use nano.  I vaguelly remember talk of nano no longer being a requirement.  Today there was an update for nano - and because I'm playing around with this cleanup, I noticed this:
~ # emerge -pe world | grep nano
~ # emerge -pe system | grep nano
[ebuild  N    ] app-editors/nano-1.3.11

Rebuild "world" - no nano.  Rebuild "system" - nano.
I admit there might be something stupid on my machine (after numerous upgrades etc, there are almost certainly settings left behind that should be cleaned up - that's my next task :-), but the man page clearly states that world contains everything that system does - I would expect the rebuild of "world" to rebuild all of "system", which it clearly isn't.  Funnily, nano is the *only* problem.

Any advice/hints welcome.

Phil
Portage 2.1_pre7-r3 (default-linux/x86/2006.0, gcc-4.1.0, glibc-2.4-r1, 2.6.16-gentoo-r1 i686)
=================================================================
System uname: 2.6.16-gentoo-r1 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz
Gentoo Base System version 1.12.0_pre16
dev-lang/python:     2.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe"
DISTDIR="/usr/src/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="ftp://ftp.mirrorservice.org/sites/www.ibiblio.org/gentoo/ http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/usr/src/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="x86 X aac acpi alsa apache2 apm avi berkdb bitmap-fonts bzip2 cairo cddb cdr cli crypt ctype cups curl dba dbus dri dvd dvdr dvi eds emboss encode esd exif expat fastbuild ffmpeg firefox flac foomaticdb force-cgi-redirect fortran ftp gd gdbm gif gnome gnutls gpm gstreamer gtk gtk2 gtkhtml guile hal idn imagemagick imlib isdnlog jpeg lcms lesstif libg++ libwww mad maildir memlimit mikmod mmx mng motif mp3 mpeg ncurses nls nntp nptl nptlonly offensive ogg opengl pam pcre pdf pdflib perl png posix pppd python quicktime readline real samba sdl session simplexml slang soap sockets speex spell spl sse ssl svg svga tcltk tcpd tetex theora threads tiff tokenizer truetype truetype-fonts type1-fonts udev usb vorbis win32codecs xine xml xmms xsl xv zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_wacom kernel_linux userland_GNU video_cards_i915 video_cards_i810"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2006-03-30 09:07:23 UTC
(In reply to comment #0)
> Both the 0.8.12 and 0.10.4 versions *are* installed (the 0.8 because it is
> dragged in as a dependency, the 0.10.4 because it is the latest version).
> 
> I don't understand why the 0.10.4 version isn't shown by emerge -pe world.  Am
> I just being dumb?  (If I am, this current behaviour is rather inconvenient.)

Known issue w/ slots.

> Second symptom (and sorry if this is a completely different problem):
> I don't use nano.  I vaguelly remember talk of nano no longer being a
> requirement.  Today there was an update for nano - and because I'm playing
> around with this cleanup, I noticed this:
> ~ # emerge -pe world | grep nano
> ~ # emerge -pe system | grep nano
> [ebuild  N    ] app-editors/nano-1.3.11
> 
> Rebuild "world" - no nano.  Rebuild "system" - nano.


world != system, no bug there.


*** This bug has been marked as a duplicate of 4698 ***
Comment 2 Phil Richards 2006-03-30 09:50:37 UTC
Ok, fair enough, but then this part of the emerge man page is somewhat misleading...

       set    Package  sets  are  a  convenient  shorthand for large groups of
              packages.  Two sets are currently supported: system  and  world.
              system  refers  to  a  set of packages deemed necessary for your
              system to run properly.  world contains all of the  packages  in
              system,    along    with    any   other   packages   listed   in
              /var/lib/portage/world.  [See FILES below for more information.]
              Note  that these commands are generally used in conjunction with
              --update.

Phil
Comment 3 Jason Stubbs (RETIRED) gentoo-dev 2006-03-30 16:29:22 UTC
That's possibly an issue. Can you attach the output of `emerge -edp system` and `emerge -edp world` please?
Comment 4 Phil Richards 2006-03-30 23:52:09 UTC
Created attachment 83484 [details]
Output of "emerge -edp system"
Comment 5 Phil Richards 2006-03-30 23:52:54 UTC
Created attachment 83485 [details]
Output of "emerge -edp world"
Comment 6 Phil Richards 2006-03-30 23:56:45 UTC
Ok, I've added the output for system and world.  The obvious difference is that
"virtual/editor" bit.  Having hunted around, the only places that mention virtual/editor (outside of /usr/portage) are in /var/db/pkg (hardly surprising), /var/cache/edb/dep (again, not exactly surprising), and the place that I suspect is the culprit: /var/cache/edb/virtuals (which shows it as nano).

That doesn't, of course, explain why system and world behave differently :-)

phil
Comment 7 Jason Stubbs (RETIRED) gentoo-dev 2006-03-31 08:40:38 UTC
Is vim installed?
Comment 8 Phil Richards 2006-03-31 10:13:47 UTC
Sorry, meant to add that to the comment previous time round - both vim and gvim are installed, so in total there are 3 PROVIDEs for virtual/editor (including nano).
Comment 9 Jason Stubbs (RETIRED) gentoo-dev 2006-03-31 17:45:58 UTC
I can't reproduce this but the virtuals-on-demand changes might be causing it for you. What does 'emerge -vp virtual/editor' give you?
Comment 10 Phil Richards 2006-04-01 02:26:32 UTC
~ # emerge -vp virtual/editor
[ebuild   R   ] app-editors/nano-1.3.11  USE="ncurses nls slang spell -build -debug -justify -minimal -unicode" 0 kB

nano used to be in the "world" file (once upon a time), so that might have something to do with it - I removed the entry by hand (didn't emerge -C nano).  I can't remember whether this was pre-auto virtual or not.  In fact, I can't remember whether it was pre-"nano is in system" (if my memory serves me right).

As I said in Comment #1, I wouldn't be surprised if this problem is a result of the various upgrades etc that I've done, and bits of cruft left behind as a result that I never got round to cleaning up properly.  I suspect that if I clean out nano then the problem will go away forever, but I'm happy to keep it around until you're happy this bug can be closed.
Comment 11 Jason Stubbs (RETIRED) gentoo-dev 2006-04-01 03:36:31 UTC
Last test:

python -c 'import portage; print portage.settings.getvirtuals("/")["virtual/editor"]'
Comment 12 Phil Richards 2006-04-01 03:44:02 UTC
~ # python -c 'import portage; print portage.settings.getvirtuals("/")["virtual/editor"]'
['app-editors/nano', 'app-editors/vim', 'app-editors/gvim']
Comment 13 Jason Stubbs (RETIRED) gentoo-dev 2006-04-01 03:51:54 UTC
Ok. As you're probably aware, "system" depends on virtual/editor. The result you just posted shows that portage's arbitrary preference for it is nano. However, when processing world vim appears to be processed first. After a package is processed, the preferences of any virtuals it provides are updated to prefer that package. Since vim is processed first, virtual/editor then gets resolved to vim and nano is ignored.