When re-merging xorg-x11 7.0-r1 with "--deep --update" several dependencies of xorg-x11 7.1 were installed, especially x11-base/xorg-server-1.1.1-r1 and some packages from x11-drivers. When trying later to update xorg-x11 from 7.0-r1 to 7.1 nothing more was installed, so I assume I actually had a 7.1 installation before. Expected behaviour: x11-base/xorg-server-1.0* and 7.0 drivers should have been installed This can be considered a duplicate of bug 135546 (which has been marked as duplicate of bug 1343) but the reason given there seems to be not valid as the KDE meta packages can make sure that no higher versions of the modular ebuilds are installed. Asking the user to package mask the modular ebuilds when using the meta package is no feasible option, especially as it is not clear that e.g. xorg-xserver 1.1 is part of xorg-x11 7.1. I think this is not a cosmetic bug given the number of difficulties with drivers and incompatibilies of xorg-x11 7.1 and the same problem will hit us with new releases of xorg-x11. PS: Thanks for the great work on the ebuilds, though. Even though I didn't want to upgrade to 7.1 at this time it now works fine and I nearly didn't notice this "seamless" upgrade. ;-) emerge --info: Portage 2.1.1 (default-linux/x86/2006.1/desktop, gcc-4.1.1, glibc-2.4-r3, 2.6.16-suspend2-r8 i686) ================================================================= System uname: 2.6.16-suspend2-r8 i686 Intel(R) Celeron(R) CPU 1.70GHz Gentoo Base System version 1.12.5 Last Sync: Sun, 15 Oct 2006 14:50:01 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [disabled] app-admin/eselect-compiler: [Not Present] dev-java/java-config: 1.3.7, 2.0.30 dev-lang/python: 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.3 dev-util/confcache: [Not Present] 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-r3 sys-devel/gcc-config: 1.3.13-r4 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=pentium3 -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/share/config/kdm /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" CXXFLAGS="-O2 -march=pentium3 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--usepkg" FEATURES="autoconfig buildpkg distlocks metadata-transfer parallel-fetch sandbox sfperms strict" GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://gentoo.oregonstate.edu/ http://www.ibiblio.org/pub/Linux/distributions/gentoo" LANG="de_DE.UTF-8" LINGUAS="de" 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" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 X aac acpi alsa arts asf audiofile berkdb bitmap-fonts bzip2 cairo cdr cli crypt cups dbus directfb dlloader dri dvd dvdr eds elibc_glibc emboss encode esd exif fam fbcon ffmpeg firefox flac foomaticdb fortran gdbm gif gphoto2 gpm gstreamer gtk hal idn imagemagick input_devices_keyboard input_devices_mouse ipod ipv6 isdnlog java javascript jpeg kde kdeenablefinal kernel_linux lcms libg++ linguas_de mad mikmod mmx mng mp3 mpeg ncurses nls nptl nptlonly nsplugin ogg opengl pam pcre pda perl png ppds pppd python qt3 qt4 quicktime readline reflection samba sdl session spell spl sqlite sse ssl svga tcpd threads tiff truetype truetype-fonts type1-fonts udev unicode usb userland_GNU vcd video_cards_fbdev video_cards_nv video_cards_sis video_cards_vesa video_cards_vga vorbis win32codecs xml xmms xorg xv zlib" Unset: CTARGET, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Sorry, but that's why we have --pretend option for emerge. What do you mean "silently"? How's upgrading something that you specifically asked for using "--deep --update" silent? o_O
(In reply to comment #1) > What do you mean > "silently"? How's upgrading something that you specifically asked for using > "--deep --update" silent? o_O How is a user supposed to know that emerge -Dup =x11-xorg-7.0* will actually upgrade to xorg 7.1? That's what I mean by silent. If a meta ebuild pulls in updated components that shouldn't be something for the user to worry about. This is an excerpt of emerge -upte =xorg-x11-7.0* These are the packages that would be merged, in reverse order: Calculating dependencies ...... done! [ebuild N ] x11-base/xorg-x11-7.0-r1 [ebuild N ] x11-libs/libXv-1.0.1 ... [ebuild N ] x11-libs/libXinerama-1.0.1 [ebuild N ] x11-apps/xrandr-1.0.2 [ebuild N ] x11-libs/libXrandr-1.1.1 ... [ebuild N ] x11-libs/libXxf86dga-1.0.1 [ebuild N ] x11-libs/libXScrnSaver-1.1.0 ... [ebuild N ] x11-drivers/xf86-input-keyboard-1.1.0 [ebuild N ] x11-drivers/xf86-video-nv-1.2.0 [ebuild N ] x11-drivers/xf86-video-fbdev-0.3.0 [ebuild N ] x11-drivers/xf86-video-sis-0.9.1-r1 [ebuild N ] x11-drivers/xf86-input-mouse-1.1.1 [ebuild N ] x11-drivers/xf86-video-vga-4.1.0 [ebuild N ] x11-drivers/xf86-video-vesa-1.2.1 [ebuild N ] x11-base/xorg-server-1.1.1-r1 [ebuild N ] x11-proto/scrnsaverproto-1.1.0 I find all kind of version numbers here: 7.0, 1.0, 1.1, 1.2, 4.1 I don't understand the modular X version number scheme, but at the top of the list it says x11-base/xorg-x11-7.0-r1. Do I have 7.0 installed or 7.1? I can't tell. But if I do emerge -Dup world xorg-x11 I just get [ebuild U ] x11-base/xorg-x11-7.1 [7.0-r1] therefore I assume that I have already upgraded to 7.1 effectively just without upgrading the meta ebuild yet. Regards, Christian.
(In reply to comment #2) > But if I do emerge -Dup world xorg-x11 I just get > > [ebuild U ] x11-base/xorg-x11-7.1 [7.0-r1] > > therefore I assume that I have already upgraded to 7.1 effectively just without > upgrading the meta ebuild yet. Please, read man emerge. N = new (not yet installed) S = new SLOT installation (side-by-side versions) U = updating (to another version) D = downgrading (best version seems lower) R = replacing (remerging same version)) F = fetch restricted (must be manually downloaded) f = fetch restricted (already downloaded) B = blocked by an already installed package Marking INVALID.
Jakub, I appreciate your work and your fast response, but I think you missed the point. Last try: Summary updated Short version: ebuild x11-base/org-x11-7.0-r1 installs x11-base/xorg-server-1.1.1-r1 as a dependency, but xorg-server-1.1 is part of X11R7.1. This could be solved by changing the x11-base/xorg-x11-7.0-r1 ebuild like this: # Server RDEPEND="${RDEPEND} - >=x11-base/xorg-server-1.0.1" + >=x11-base/xorg-server-1.0.1 <x11-base/xorg-server-1.1" Probably more dependencies, e.g. to drivers, have to be fixed. All comments above apply. Have a nice day! Christian.
> This could be solved by changing the x11-base/xorg-x11-7.0-r1 ebuild like this: > # Server > RDEPEND="${RDEPEND} > - >=x11-base/xorg-server-1.0.1" > + >=x11-base/xorg-server-1.0.1 <x11-base/xorg-server-1.1" No, it can't, the above won't work; portage doesn't support dependency ranges. If you don't want to upgrade, then 1/ Don't use -uD with = operator, it doesn't make any sense 2/ If you still dislike the output, p.mask it live everyone else Closing, no bug here.
(In reply to comment #5) > No, it can't, the above won't work; > portage doesn't support dependency ranges. Accepted. I'm no Gentoo developer. As a user I'm just wondering how KDE manages to do exactly this. Sure, their deprange function is much more sophisticated and perhaps someday we will see a similar thing for X.org ebuilds also. Perhaps even a simple # Server RDEPEND="${RDEPEND} - >=x11-base/xorg-server-1.0.1" + =x11-base/xorg-server-1.0" could do the job. But as I said, I don't know the X.org versioning scheme. Looking at "man 5 ebuild" I coulnd't find restrictions on using boolean operators. > If you don't want to upgrade, then > > 1/ Don't use -uD with = operator, it doesn't make any sense ??? I want to stay with the package version but update any dependencies. > 2/ If you still dislike the output, p.mask it live everyone else No solution as I don't know which ebuilds are supposed to be 7.1 and which ones are also 7.0. So far I haven't found a list of module version numbers per release. > Closing, no bug here. Next bug might be about downgrading from 7.1 to 7.0... Regards, Christian.
(In reply to comment #6) > As a user I'm just wondering how KDE manages > to do exactly this. Sure, their deprange function is much more sophisticated > and perhaps someday we will see a similar thing for X.org ebuilds also. Easily - KDE is slotted, xorg is not. :)