Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 163990

Summary: emerge permits installation of packages from invalid categories
Product: Portage Development Reporter: Robert Forsman <gentoo>
Component: Core - Ebuild SupportAssignee: Portage team <dev-portage>
Status: RESOLVED FIXED    
Severity: normal Keywords: InVCS
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 161254, 167107    

Description Robert Forsman 2007-01-26 22:48:52 UTC
I have a portage overlay.  I created packages like bob/bob-mythtv and bob/bob-core.  "emerge bob-core" fails, but "emerge bob/bob-core" succeeds.

Subsequently the package is both installed and not-installed.  epm -q can see the package, equery list can not.

The dependencies are considered in an emerge world, but the RDEPEND="!" blocking is not.

It should refuse to install and instruct the operator how to add a category.


Reproducible: Always

Steps to Reproduce:

cat > $PORTDIR_OVERLAY/bob/bob-mythtv-1.0.ebuild  <<EOF
DESCRIPTION="specifies the bob-approved version of mythtv"
SLOT="0"
KEYWORDS="x86"
DEPEND="<media-tv/mythtv-0.20"
RDEPEND="!>=media-tv/mythtv-0.20"
EOF

emerge bob/bob-mythtv

emerge -pv mythtv

Actual Results:  
nile bob-mythtv # emerge -pv mythtv

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U ] media-tv/mythtv-0.20_p12172 [0.19_p10505] USE="alsa dts%* dvd fr
ontendonly mmx opengl perl%* vorbis (-altivec) -backendonly -crciprec% -dbox2 -d
ebug -dvb -freebox% -hdhomerun% -ieee1394 -ivtv% -jack -joystick -lcd -lirc -xvm
c" VIDEO_CARDS="nvidia -i810 -via" 12,109 kB 
[ebuild     U ] x11-themes/mythtv-themes-0.20 [0.19] 13,852 kB 

Total: 2 packages (2 upgrades), Size of downloads: 25,961 kB


Expected Results:  
the emerge bob/bob-mythtv should fail with an error like "invalid category bob.  check your $PORTDIR_OVERLAY/profiles/categories".

Once bob is in the categories, the emerge correctly reports blockers:

nile bob-mythtv # emerge -pv mythtv 

These are the packages that would be merged, in order:

Calculating dependencies... done!
[blocks B     ] >=media-tv/mythtv-0.20 (is blocking bob/bob-mythtv-1.0)
[ebuild     U ] media-tv/mythtv-0.20_p12172 [0.19_p10505] USE="alsa dts%* dvd fr
ontendonly mmx opengl perl%* vorbis (-altivec) -backendonly -crciprec% -dbox2 -d
ebug -dvb -freebox% -hdhomerun% -ieee1394 -ivtv% -jack -joystick -lcd -lirc -xvm
c" VIDEO_CARDS="nvidia -i810 -via" 12,109 kB 
[ebuild     U ] x11-themes/mythtv-themes-0.20 [0.19] 13,852 kB 

Total: 2 packages (2 upgrades, 1 block), Size of downloads: 25,961 kB
Comment 1 Robert Forsman 2007-01-26 22:58:16 UTC
Nuts.  That should be 
cat > $PORTDIR_OVERLAY/bob/bob-mythtv/bob-mythtv-1.0.ebuild  <<EOF
Comment 2 Zac Medico gentoo-dev 2007-02-18 08:53:24 UTC
In svn r5988:5990 it's fixed to warn about packages (ebuild or binaries) with invalid categories and it will not allow them to be installed.
Comment 3 Zac Medico gentoo-dev 2007-02-19 21:44:19 UTC
This has been released in 2.1.2-r10.