Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 72465 - Portage does not tell about masking if older version of the ebuild is installed
Summary: Portage does not tell about masking if older version of the ebuild is installed
Status: VERIFIED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-25 06:50 UTC by Ville Oikarinen
Modified: 2004-11-26 17:08 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 Ville Oikarinen 2004-11-25 06:50:59 UTC
# ACCEPT_KEYWORDS='~x86' emerge -pv mysql

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] dev-db/mysql-4.0.22  +berkdb -debug +innodb +perl +readline (-selinux) +ssl -static +tcpd 0 kB 


Reproducible: Always
Steps to Reproduce:
1. See that the 4.1.7 ebuild really is in /usr/portage/
2. emerge -pv mysql
3.

Actual Results:  
Portage claims that it would re-emerge mysql-4.0.22. I tried '=mysql-4.1.7' but
with the same result.

Expected Results:  
Portage should have found the newer ebuild.

Note that ACCEPT_KEYWORDS works correctly for example with dev-java/groovy.

# emerge info
Portage 2.0.51-r3 (default-linux/x86/2004.2, gcc-3.3.4, glibc-2.3.4.20040808-r1,
2.4.26-gentoo-r6 i686)
=================================================================
System uname: 2.4.26-gentoo-r6 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz
Gentoo Base System version 1.4.16
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.15.90.0.1.1-r3
Headers:  sys-kernel/linux-headers-2.4.21-r1
Libtools: sys-devel/libtool-1.5.2-r7
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium4 -O2 -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown
/usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium4 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms strict"
GENTOO_MIRRORS="rsync://trumpetti.atm.tut.fi/gentoo/
http://trumpetti.atm.tut.fi/gentoo/ ftp://trumpetti.atm.tut.fi/gentoo/
http://adelie.polymtl.ca/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X Xaw3d acl acpi adns alsa apm arts athena audiofile avi berkdb
bitmap-fonts caps cdparanoia crypt cscope cups dga directfb divx4linux dnd emacs
encode esd f77 fam fbcon flac foomaticdb fortran gdbm ggi gif gimpprint gnome
gpm graphviz gtk gtk2 idea imagemagick imlib innodb java javamail jbig jce jpeg
junit justify kerberos krb4 lcms ldap libg++ libwww live lua lzo mad makecheck
matroska mikmod mime mmap mmx mng motif mozilla moznocompose moznoirc moznomail
mozsvg mozxmlterm mpeg mysql ncurses oav odbc oggvorbis opengl oss pam pcre
pdflib perl pg-hier pg-intdatetime pg-vacuumdelay png pnp posix postgres ppds
python qt quicktime readline ruby samba sasl sdl session slang slp socks5 speex
spell sse sse2 ssl svg svga sysvipc tcltk tcpd theora tiff truetype unicode usb
vhosts vim-with-x winbind wmf x86 xml xml2 xmms xpm xsl xv xvid zlib
video_cards_radeon"
Comment 1 Ville Oikarinen 2004-11-25 06:51:52 UTC
Note that this happened to a very new (2 months) Gentoo system, not the same I'm having bigger problems with.
Comment 2 Carsten Lohrke (RETIRED) gentoo-dev 2004-11-25 08:45:18 UTC
It is package.mask'ed. It means that the software is considered to be unstable or has unresolvable security issues. Usually you should not unmask it. `man portage` or read the online documentation for more information.

Usually you should get a warning, but this doesn't seem to work for =cat/ebuild-x.y* entries.
Comment 3 Ville Oikarinen 2004-11-25 22:47:03 UTC
Just checking: What do you mean by "=cat/ebuild-x.y*" entry. Do you mean using "=" when emerging i.e. emerge -pv '=cat/ebuild-x.y'?

Note that I tried the emerge command with and without '=' AND with and without ACCEPT_KEYWORDS='~x86', so the bug is not about using =. The ebuild is simply invisible to portage. It doesn't say anything about masks, but claims that 4.0.22 is the latest available mysql version of all.
Comment 4 Ville Oikarinen 2004-11-25 22:58:59 UTC
Changed summary back to the original.

Just reminding: portage works just fine with for example dev-java/groovy which is ~x86, too.

Here are some interesting differences between the groovy and mysql ebuilds I noticed, so they might be candidates for a cause:

1. mysql ebuild lists ~amd64 before ~x86. Maybe KEYWORDS parsing is broken.

2. mysql-4.1.7 is blocked by older versions (!<dev-db/mysql-4.1*). Maybe the block checking routine causes the masking info printing routine not to be called.
Comment 5 Jason Stubbs (RETIRED) gentoo-dev 2004-11-25 23:17:55 UTC
# emerge =mysql-4.1.7
Calculating dependencies
!!! All ebuilds that could satisfy "=mysql-4.1.7" have been masked.
!!! One of the following masked packages is required to complete your request:
- dev-db/mysql-4.1.7 (masked by: package.mask)
# <robbat2@gentoo.org> (17 Nov 2004)
# Masking for testing


For more information, see MASKED PACKAGES section in the emerge man page or
section 2.2 "Software Availability" in the Gentoo Handbook.



The message is working okay here and portage is doing everything it's meant to, but I am using CVS portage. I can't see how it could not work with stable portage, though. If "emerge =mysql-4.1.7" doesn't show output similar to above, reopen with the exact output that you do get.
Comment 6 Ville Oikarinen 2004-11-25 23:38:46 UTC
Oops. Seems that I mixed up "masked" and "unstable" :-)

Anyway, I think the bug description is more accurate now.

I unmerged the old mysql-4.0.22, and now
# emerge -pv '=dev-db/mysql-4.1.7'

correctly tells about masking.

So an older version being installed (I don't know if the blocking dependency has got anything to do with it) prevents portage from telling about masking.
Comment 7 Carsten Lohrke (RETIRED) gentoo-dev 2004-11-26 05:58:54 UTC
Jason: Did the behaviour change at some point or did I never notice it? While the intention is clear, it's still a bit irritating. How about adding a --very-verbose option, which lists latest stable, testing and unstable ebuilds?
Comment 8 Jason Stubbs (RETIRED) gentoo-dev 2004-11-26 16:08:35 UTC
# emerge -Cp mysql

>>> These are the packages that I would unmerge:

 dev-db/mysql
    selected: 4.0.22
   protected: none
     omitted: none

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

# emerge -vp =mysql-4.1.7

These are the packages that I would merge, in order:

Calculating dependencies
!!! All ebuilds that could satisfy "=mysql-4.1.7" have been masked.
!!! One of the following masked packages is required to complete your request:
- dev-db/mysql-4.1.7 (masked by: package.mask)
# <robbat2@gentoo.org> (17 Nov 2004)
# Masking for testing


For more information, see MASKED PACKAGES section in the emerge man page or
section 2.2 "Software Availability" in the Gentoo Handbook.




As I asked before, can you please provide the output that you got that you feel to be a bug.
Comment 9 Carsten Lohrke (RETIRED) gentoo-dev 2004-11-26 17:02:22 UTC
Jason: No, the bug is invalid. It's just, that you can't see via emerge, if there is a package.maske'ed version or not, if you do not know the exact version. You need to have a look at the package.mask file itself, before deciding, if it makes sense to edit profile.unmask or not.
Comment 10 Carsten Lohrke (RETIRED) gentoo-dev 2004-11-26 17:03:30 UTC
err, package.unmask, of course
Comment 11 Carsten Lohrke (RETIRED) gentoo-dev 2004-11-26 17:08:34 UTC
Oh, not true, emerge ">mysql-4.0.23" -pv works fine.