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

Bug 160519

Summary: Ebuilds are using KEYWORDS="-*" instead of KEYWORDS=""
Product: Gentoo Linux Reporter: Mike Kelly (RETIRED) <pioto>
Component: New packagesAssignee: Gentoo Quality Assurance Team <qa>
Status: RESOLVED FIXED    
Severity: normal CC: cretin, dholm, ebo, hanno, media-video, pam-bugs+disabled, parallelgrapefruit, robbat2, sandbox, sgtphou, steev
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
URL: http://devmanual.gentoo.org/keywording/index.html
Whiteboard:
Package list:
Runtime testing required: ---

Description Mike Kelly (RETIRED) gentoo-dev 2007-01-06 17:05:46 UTC
The following ebuilds are violating policy by misusing KEYWORDS="-*":

=app-admin/empower-9999
=app-crypt/openssl-tpm-engine-0.3
=app-editors/enscribe-9999
=app-emulation/aranym-0.9.0
=app-emulation/wine-20041019-r3
=app-emulation/wine-20050111-r2
=app-emulation/wine-20050211
=app-emulation/wine-20050310-r1
=app-emulation/wine-20050419
=app-emulation/wine-20050524
=app-emulation/wine-20050628
=app-emulation/wine-20050725-r1
=app-emulation/wine-20050830
=app-emulation/wine-20050930
=app-emulation/wine-9999
=app-laptop/epbb-9999
=app-misc/entropy-9999
=app-misc/evidence-9999
=app-misc/examine-9999
=dev-db/edb-9999
=dev-embedded/bitbake-9999
=dev-games/physfs-1.1.0
=dev-libs/eet-9999
=dev-libs/embryo-9999
=dev-libs/engrave-9999
=dev-libs/exml-9999
=dev-lisp/cl-mel-base-0.5.11
=dev-lisp/cl-mel-base-0.5.20
=dev-lisp/cl-mel-base-0.5.22
=dev-lisp/cl-mel-base-0.5.30
=dev-lisp/cl-rsm-bool-comp-1.0-r1
=dev-lisp/cl-zebu-3.5.5
=dev-python/pygtk-2.10.1-r1
=dev-util/e_utils-9999
=dev-util/elfsh-0.65_rc1
=dev-util/enhance-9999
=dev-util/mingw-runtime-3.10
=games-fps/quake1-2.40-r1
=games-fps/quake3-9999
=games-fps/qudos-9999
=games-fps/ttyquake-0.4.2
=gnustep-apps/stshell-0.10.0
=gnustep-apps/stshell-0.9.1
=gnustep-libs/steptalk-0.10.0
=gnustep-libs/steptalk-0.9.1
=mail-client/embrace-9999
=mail-mta/courier-0.50.1-r1
=media-gfx/eclips-9999
=media-gfx/elicit-9999
=media-gfx/entice-9999
=media-gfx/ephoto-9999
=media-gfx/exhibit-9999
=media-gfx/gimp-9999
=media-gfx/retina-9999
=media-libs/edje-9999
=media-libs/emotion-9999
=media-libs/epeg-9999
=media-libs/epsilon-9999
=media-libs/imlib2-9999
=media-libs/imlib2_loaders-9999
=media-sound/alsa-driver-9999
=media-sound/alsa-headers-9999
=media-sound/amarok-9999
=media-sound/extrackt-9999
=media-video/eclair-9999
=media-video/elation-9999
=media-video/envision-9999
=media-video/ffmpeg-0.4.9_p20060517
=media-video/freej-0.8.1
=media-video/mplayer-bin-1.0.20060415
=net-im/express-9999
=net-wireless/orinoco-9999
=net-www/gnash-0.7.2_p20099999
=sci-calculators/equate-9999
=sci-electronics/magic-7.5.40
=sci-electronics/ng-spice-rework-9999
=sci-electronics/xcircuit-3.6.59
=sys-apps/baselayout-lite-1.0_pre1
=sys-apps/initng-9999
=sys-apps/sandbox-1.2.18
=sys-apps/tcng-9h
=sys-auth/pam_krb5-2.2.6
=sys-boot/grub-1.95
=sys-devel/binutils-2.14
=sys-devel/binutils-2.16.91.0.1
=sys-devel/binutils-2.16.91.0.3
=sys-devel/binutils-2.16.91.0.4
=sys-devel/binutils-2.16.91.0.5
=sys-devel/binutils-2.16.91.0.7
=sys-devel/binutils-2.17.50.0.2
=sys-devel/binutils-2.17.50.0.3
=sys-devel/binutils-2.17.50.0.4
=sys-devel/binutils-2.17.50.0.5
=sys-devel/binutils-2.17.50.0.6
=sys-devel/binutils-2.17.50.0.7
=sys-devel/binutils-2.17.50.0.8
=sys-devel/binutils-2.17.50.0.9
=sys-devel/gcc-3.2.2
=sys-devel/gcc-4.1.0_alpha20061208
=sys-devel/gcc-4.2.0_alpha20061205
=sys-devel/gcc-4.3.0_alpha20061216
=sys-devel/gcc-config-1.3.15
=sys-fs/evfs-9999
=sys-process/audit-1.1.6
=sys-process/audit-1.2.1
=sys-process/audit-1.2.3
=sys-process/audit-1.2.5
=x11-apps/elapse-9999
=x11-base/xorg-server-1.2.99.0
=x11-drivers/mtxdrivers-pro-1.1.0_beta-r3
=x11-drivers/xf86-input-keyboard-1.2.0
=x11-libs/ecore-9999
=x11-libs/esmart-9999
=x11-libs/etk-9999
=x11-libs/evas-9999
=x11-libs/ewl-9999
=x11-libs/libast-9999
=x11-misc/engage-9999
=x11-misc/enity-9999
=x11-misc/enotes-9999
=x11-misc/entrance-9999
=x11-misc/estickies-9999
=x11-misc/iconbar-9999
=x11-plugins/e_modules-9999
=x11-terms/enterminus-9999
=x11-terms/eterm-9999
=x11-wm/e-9999
=x11-wm/enlightenment-0.16.9999

From the devmanual:

The -* keyword is special. It is used to indicate package versions which are not worth trying to test on unlisted archs. For example, a binary-only package which is only supported upstream on x86 and ppc might use:

KEYWORDS="-* x86 ppc"

Please set reasonable KEYWORDS and add to package.mask as necessary.
Comment 1 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-01-06 17:12:08 UTC
Provide a method to state "This ebuild is untested on all arches and thus is not guaranteed to work on any of them." then.
This should cover all of CVS versions.
Comment 2 Ciaran McCreesh 2007-01-06 17:26:37 UTC
Then it should either be in package.mask or not in the tree at all.
Comment 3 Marius Mauch (RETIRED) gentoo-dev 2007-01-06 17:41:31 UTC
Also see http://dev.gentoo.org/~genone/docs/KEYWORDS.stupid
Comment 4 Mike Kelly (RETIRED) gentoo-dev 2007-01-06 17:53:07 UTC
Vapier, you're the largest user of KEYWORDS="-*"; you should follow this bug.
Comment 5 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-01-06 17:57:23 UTC
Genone, would a KEYWORD="~unsupported", plus p.mask, be practical for you?
Comment 6 Ciaran McCreesh 2007-01-06 18:02:02 UTC
(In reply to comment #5)
> Genone, would a KEYWORD="~unsupported", plus p.mask, be practical for you?

Why on earth would that be necessary? Stuff in p.mask is unsupported anyway, and if it's so unsupported that not even p.mask is good enough then just don't stick it in the tree.
Comment 7 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-01-06 18:03:32 UTC
pioto, both me and vapier are in qa@g.o alias, I suppose he (like me) would like to avoid receiving the mails double and triple.

I already receive it for qa, alsa-bugs, media-video and pam-bugs for instance.
Comment 8 Alon Bar-Lev (RETIRED) gentoo-dev 2007-01-06 18:23:29 UTC
Crypto done:
=app-crypt/openssl-tpm-engine-0.3
Comment 9 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-01-06 18:30:05 UTC
> Why on earth would that be necessary? Stuff in p.mask is unsupported anyway,
> and if it's so unsupported that not even p.mask is good enough then just don't
> stick it in the tree.

Simple: /etc/portage/package.mask is evaluated before /etc/portage/package.unmask, so if there's a masked (because beta, but mostly working and somewhat supported) version of alsa-driver in the tree, let's call it 1.0.15_beta1, and there's the 9999 version (to avoid me getting 20 bug reports a day when a new vanilla-kernel-2.6.23_rc1 is released - and sorry, but I cannot simply drop it, as users bothering me _do_ stop good things to be done in other parts of the tree) also in package.mask, the users have to know how to properly unmask 1.0.15_betas without unmasking 9999.

As we know our users, we also know half of them will simply unmask all of alsa-driver, ending up using 9999 and expecting it to be supported.
Give me a proper way to get the users to unmask only the 1.0.15_betas and not the 9999, and I'll be sold.
Comment 10 Alec Warner (RETIRED) archtester gentoo-dev Security 2007-01-06 23:24:07 UTC
I disagree with the current policy then.

-* means 'Remove all previous keywords'

Thats all it means.  It doesn't need to have 'special meaning for a certain set of packages'.

If an app works on x86 and amd64 but no other arches (binary package), pmask it in base/ and unmask it in the arch profiles.  You can't have your cake (-* = pmask) and eat it too (-* x86 amd64 is ok for some strange exceptional reason?).
Comment 11 Dan 2007-01-06 23:58:00 UTC
After discussing this a bit w/ antarus et all I thought I'd throw out my idea.  It seems like the current handling is broken, but at the same time p.masking it also seems brokenish.  Wouldn't it make more sense for in the case of "live" ebuilds or alpha snapshots to simply drop keywords all together?  -keywords (or -*) seems to be implying "known not to work" whereas that is not true in the case of live ebuilds.  Live ebuilds are not known to work.  They have not been tested (they really cannot be tested) and as such it seems like it would make more sense to simply unkeyword them.  I think this would solve flameeyes issue (requires the user to overlay the -9999 ebuild in order to get it) and also solves the -* issue.  Then again I'm sure theres something I'm not thinking about, which at least one of the following commenters will point out.
Comment 12 Marius Mauch (RETIRED) gentoo-dev 2007-01-08 08:46:54 UTC
(In reply to comment #10)
> I disagree with the current policy then.
> 
> -* means 'Remove all previous keywords'

For ACCEPT_KEYWORDS, yes. For KEYWORDS, no, as that variable isn't an incremental and order there doesn't matter. From a portage point of view KEYWORDS="foo -* bar" should be equal to KEYWORDS="foo bar". The only point of having -arch (and by extension -*) in KEYWORDS is to indicate to users/devs that something is known to definitely not work for those keywords.

(In reply to comment #11)
> Wouldn't it make more sense for in the case of "live"
> ebuilds or alpha snapshots to simply drop keywords all together? -keywords (or
> -*) seems to be implying "known not to work" whereas that is not true in the
> case of live ebuilds.  Live ebuilds are not known to work.  They have not been
> tested (they really cannot be tested) and as such it seems like it would make
> more sense to simply unkeyword them.  I think this would solve flameeyes issue
> (requires the user to overlay the -9999 ebuild in order to get it) and also
> solves the -* issue.  Then again I'm sure theres something I'm not thinking
> about, which at least one of the following commenters will point out.

Problem is that you don't have any unmasking facility with that solution, so you pretty much force people to copy those ebuilds to an overlay and add keywords there, with the usual overlay problems attached: Redo it for every version, in case of live-cvs ebuilds regulary check if the tree version has been updated since the last copy, possible shadow effects and so on.
That's the only reason why I didn't tell people to do that yet.
A possible solution would be to change the meaning of "*" in package.keywords from "all versions with any stable keyword" to "all versions" (disabling the keyword visibility filter completely) or add a new token with that effect.
Comment 13 Zac Medico gentoo-dev 2007-01-08 13:18:37 UTC
(In reply to comment #12)
> A possible solution would be to change the meaning of "*" in package.keywords
> from "all versions with any stable keyword" to "all versions" (disabling the
> keyword visibility filter completely) or add a new token with that effect.

I've heard that paludis is doing this now.  I would like to make portage do that too but it has the unfortunate consequence of possibly changing the meaning of people's existing package.keywords files.  However, me instinct tells me "*" in package.keywords is uncommon anyway, given it's current definition.
Comment 14 Jon 2007-01-08 15:42:13 UTC
How about this as a solution:

Update the current and testing versions of portage with a simple addition, make it impossible to have, for example: sys-apps/portage, or >=sys-apps/portage-1.2.3, or <=sys-apps/portage-1.2.3 in package.unmask. Make it so that it is only possible to have ~ and = some definate version in package.unmask. This will solve the issue of users unmasking the live -9999 versions of the ebuild.

This is a _very_ simple solution and yet effective. Then you can worry about the semantics of -* after this is done. To be honest, as a user it really does make sense to only allow the unmasking of a specific version because the items are in mask for a reason and to allow the unmasking of all versions is really just quite frankly a terrible idea and can only lead to a mess and harm ... wait ... it did lead to a mess. ;)

Please consider this idea. It's logical, and worthwhile to do, and it should be fairly easy to modify the code that checks unmasking to only allow ~ and = operators. ~ just so revisions are unmasked, it won't allow future versions, but I like the idea of allowing revisions, that's at least safer than unmasking everything.

Cheers.
Comment 15 Ciaran McCreesh 2007-01-08 19:37:41 UTC
(In reply to comment #13)
> (In reply to comment #12)
> > A possible solution would be to change the meaning of "*" in package.keywords
> > from "all versions with any stable keyword" to "all versions" (disabling the
> > keyword visibility filter completely) or add a new token with that effect.
> 
> I've heard that paludis is doing this now.

Only until the tree is fixed. Also note that the use.conf syntax used by Paludis does not correspond to Portage's package.keywords, so it's not a very good comparison.

>  I would like to make portage do
> that too but it has the unfortunate consequence of possibly changing the
> meaning of people's existing package.keywords files.  However, me instinct
> tells me "*" in package.keywords is uncommon anyway, given it's current
> definition.

* in package.keywords is *very* common. It's the method recommended and used by arch teams for testing a package that hasn't yet had sufficient interest to be keyworded on that arch.
Comment 16 Jakub Moc (RETIRED) gentoo-dev 2007-01-08 23:24:02 UTC
(In reply to comment #14)
> make it impossible to have, for example: sys-apps/portage, or
> >=sys-apps/portage-1.2.3, or <=sys-apps/portage-1.2.3 in package.unmask. Make
> it so that it is only possible to have ~ and = some definate version in
> package.unmask. This will solve the issue of users unmasking the live -9999
> versions of the ebuild.

Ouch, nooo... Please stop bugging me, if I unmask an unversioned atom, I *really* mean it and I really want to unmask any and all masked versions out there, incl. the live VCS ones. 

If some clueless users do this and get bitten it the ass, that's what they deserve; RTFM before unmasking stuff at least or don't mess with this.
Comment 17 Daniel Gryniewicz (RETIRED) gentoo-dev 2007-01-09 01:46:43 UTC
mplayer-bin is a binary-only package, only supported on amd64, and as such appears to be correctly using -*.
Comment 18 Jon 2007-01-09 03:33:50 UTC
(In reply to comment #16)
> (In reply to comment #14)
> > make it impossible to have, for example: sys-apps/portage, or
> > >=sys-apps/portage-1.2.3, or <=sys-apps/portage-1.2.3 in package.unmask. Make
> > it so that it is only possible to have ~ and = some definate version in
> > package.unmask. This will solve the issue of users unmasking the live -9999
> > versions of the ebuild.
> 
> Ouch, nooo... Please stop bugging me, if I unmask an unversioned atom, I
> *really* mean it and I really want to unmask any and all masked versions out
> there, incl. the live VCS ones. 
> 
> If some clueless users do this and get bitten it the ass, that's what they
> deserve; RTFM before unmasking stuff at least or don't mess with this.
> 

Well, this suggestion was for flameeyes because he mentioned that users are just doing that -- unmasking the live ebuilds and he gets the bug reports about them. So, that's why I suggested it. He wanted a solution that would keep users from unmasking the live ones easily so he could follow the guidelines about the -* in ebuilds. I thought this was a simple solution and yes, I do agree with you for the most part that if a user is stupid enough to unmask a live ebuild, then he/she does deserve the broken system, but then, I try to look at it from the developers point of view and if a slight change like this that is very small and relatively easy to do stops a lot of bug reports, then it's worth it.
Comment 19 Marius Mauch (RETIRED) gentoo-dev 2007-01-09 08:12:30 UTC
(In reply to comment #18)
> I try to look at it from
> the developers point of view and if a slight change like this that is very
> small and relatively easy to do stops a lot of bug reports, then it's worth it.

Except that those bug reports would be replaced by feature requests to restore the old behavior ;)
Comment 20 Marius Mauch (RETIRED) gentoo-dev 2007-01-23 17:47:42 UTC
(In reply to comment #12)
> A possible solution would be to change the meaning of "*" in package.keywords
> from "all versions with any stable keyword" to "all versions" (disabling the
> keyword visibility filter completely) or add a new token with that effect.

Added support for a '**' token to be used in package.keywords in r5759 to match any package (even with KEYWORDS=""). Once that is released there is no more reason for abusing KEYWORDS="-*".
Comment 21 Chris Gianelloni (RETIRED) gentoo-dev 2007-01-23 19:46:21 UTC
So would we use KEYWORDS="" instead, then?
Comment 22 Marius Mauch (RETIRED) gentoo-dev 2007-01-23 19:56:07 UTC
(In reply to comment #21)
> So would we use KEYWORDS="" instead, then?

Yes.
Comment 23 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-01-23 21:59:25 UTC
Thanks genone, that sounds good to me together with p.mask :)
Comment 24 Zac Medico gentoo-dev 2007-01-23 23:37:18 UTC
(In reply to comment #20)
> Added support for a '**' token to be used in package.keywords in r5759 to match
> any package (even with KEYWORDS=""). Once that is released there is no more
> reason for abusing KEYWORDS="-*".

I've included this feature in portage-2.1.2-r3.
Comment 25 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-01-24 00:56:38 UTC
Somebody please fix repoman :)

  KEYWORDS.missing               1
   media-sound/alsa-driver/alsa-driver-9999.ebuild
Comment 26 Marius Mauch (RETIRED) gentoo-dev 2007-01-24 02:07:00 UTC
(In reply to comment #25)
> Somebody please fix repoman :)
> 
>   KEYWORDS.missing               1
>    media-sound/alsa-driver/alsa-driver-9999.ebuild

Converted it to a warning.
Comment 27 Diego Elio Pettenò (RETIRED) gentoo-dev 2007-01-25 19:33:05 UTC
ALSA and Amarok done.
Comment 28 Chris PeBenito (RETIRED) gentoo-dev 2007-01-31 14:21:25 UTC
Fixed baselayout-lite.
Comment 29 Denis Dupeyron (RETIRED) gentoo-dev 2007-01-31 18:35:14 UTC
Fixed :
sci-electronics/magic-7.5.40
sci-electronics/ng-spice-rework-9999
sci-electronics/xcircuit-3.6.59

Denis.
Comment 30 Stefan Schweizer (RETIRED) gentoo-dev 2007-01-31 20:45:34 UTC
gnash fixed, thanks
Comment 31 Hal Engel 2007-02-11 00:42:15 UTC
OK now that gnash is "fixed" how do I get the live ebuild to work?

I have tried:

ACCEPT_KEYWORDS="" emerge -pv gnash

and

ACCEPT_KEYWORDS="-" emerge -pv gnash

with the following result:

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

Calculating dependencies... done!
[ebuild     UD] net-www/gnash-0.7.2 [0.7.2_p20099999] USE="nsplugin -agg -ffmpeg -gstreamer -kde -xml" VIDEO_CARDS="-i810" 0 kB

My package.unmash contains:

=net-www/gnash-0.7.2_p20099999
Comment 32 Zac Medico gentoo-dev 2007-02-11 00:57:44 UTC
Make sure you have >=sys-apps/portage-2.1.2-r3 installed and then do the following:

echo "net-www/gnash **" >> /etc/portage/package.keywords
Comment 33 Hal Engel 2007-02-11 01:43:35 UTC
Thanks that worked.
Comment 34 David Holm (RETIRED) gentoo-dev 2007-03-15 20:48:56 UTC
Fixed:
=app-emulation/aranym-0.9.0
Comment 35 Torsten Veller (RETIRED) gentoo-dev 2007-05-09 18:46:12 UTC
Updated list:

app-emulation/wine-20050111-r2 herd:wine maintainer:
app-emulation/wine-20050211 herd:wine maintainer:
app-emulation/wine-20050310-r1 herd:wine maintainer:
app-emulation/wine-20050419 herd:wine maintainer:
app-emulation/wine-20050524 herd:wine maintainer:
app-emulation/wine-20050628 herd:wine maintainer:
app-emulation/wine-20050725-r1 herd:wine maintainer:
app-emulation/wine-20050830 herd:wine maintainer:
app-emulation/wine-20050930 herd:wine maintainer:
app-emulation/wine-9999 herd:wine maintainer:
dev-embedded/bitbake-9999 herd:embedded maintainer:
dev-lisp/cl-mel-base-0.5.11 herd:common-lisp maintainer:
dev-lisp/cl-mel-base-0.5.20 herd:common-lisp maintainer:
dev-lisp/cl-mel-base-0.5.22 herd:common-lisp maintainer:
dev-lisp/cl-mel-base-0.5.30 herd:common-lisp maintainer:
dev-lisp/cl-rsm-bool-comp-1.0-r1 herd:common-lisp maintainer:
dev-lisp/cl-zebu-3.5.5 herd:common-lisp maintainer:
dev-util/elfsh-0.65_rc1 herd:hardened maintainer:vapier@gentoo.org
dev-util/mingw-runtime-3.10 herd:toolchain maintainer:
dev-util/mingw-runtime-3.11 herd:toolchain maintainer:
dev-util/mingw-runtime-3.11_p20061202 herd:toolchain maintainer:
games-fps/quake3-9999 herd:games maintainer:
games-fps/qudos-9999 herd:games maintainer:
gnustep-apps/stshell-0.10.0 herd:gnustep maintainer:
gnustep-apps/stshell-0.9.1 herd:gnustep maintainer:
gnustep-libs/steptalk-0.10.0 herd:gnustep maintainer:
gnustep-libs/steptalk-0.9.1 herd:gnustep maintainer:
media-video/freej-0.8.1 herd:video maintainer:media-video@gentoo.org
net-wireless/orinoco-9999 herd:mobile maintainer:steev@gentoo.org
sys-apps/initng-9999 herd:base-system maintainer:
sys-apps/sandbox-1.2.18 herd:no-herd maintainer:sandbox@gentoo.org
sys-apps/tcng-9h herd:no-herd maintainer:robbat2@gentoo.org
sys-auth/pam_krb5-2.2.6 herd:pam maintainer:pam-bugs@gentoo.org
sys-boot/grub-1.95 herd:base-system maintainer:
sys-devel/binutils-2.17.50.0.10 herd:toolchain maintainer:
sys-devel/binutils-2.17.50.0.11 herd:toolchain maintainer:
sys-devel/binutils-2.17.50.0.13 herd:toolchain maintainer:
sys-devel/binutils-2.17.50.0.14 herd:toolchain maintainer:
sys-devel/binutils-2.17.50.0.15 herd:toolchain maintainer:
sys-devel/binutils-2.17.50.0.9 herd:toolchain maintainer:
sys-devel/gcc-3.2.2 herd:toolchain maintainer:
sys-devel/gcc-config-1.4.0 herd:toolchain maintainer:
x11-base/xorg-server-1.2.99.0 herd:x11 maintainer:
x11-drivers/xf86-input-keyboard-1.2.0 herd:x11 maintainer:
x11-libs/libast-9999 herd:no-herd maintainer:vapier@gentoo.org
x11-terms/eterm-9999 herd:no-herd maintainer:vapier@gentoo.org
x11-wm/enlightenment-0.16.9999 herd:no-herd maintainer:vapier@gentoo.org
Comment 36 Piotr Jaroszyński (RETIRED) gentoo-dev 2007-06-24 18:24:15 UTC
I have fixed everything from the list, thanks.
Comment 37 John (EBo) David 2009-04-30 13:18:47 UTC
following up on this old bug is the issue that many live ebuilds in the tree still use KEYWORDS="~x86 ..."  Here is a list:

./dev-libs/xqilla/xqilla-9999.ebuild
./x11-wm/fluxbox/fluxbox-9999.ebuild
./x11-wm/enlightenment/enlightenment-0.16.9999.ebuild
./dev-db/ctdb/ctdb-9999.ebuild
./app-text/scrollkeeper/scrollkeeper-9999.ebuild
./app-i18n/skk-jisyo/skk-jisyo-9999.ebuild
./sys-devel/sparse/sparse-9999.ebuild
./sys-devel/gnuconfig/gnuconfig-99999999.ebuild
./app-portage/gatt/gatt-9999.ebuild
./media-tv/xbmc/xbmc-9999.ebuild
./app-admin/eselect/eselect-9999.ebuild
./app-arch/xz-utils/xz-utils-9999.ebuild
./games-mud/wxmud/wxmud-9999.ebuild
./app-doc/repodoc/repodoc-9999.ebuild
./app-doc/pms/pms-99999999.ebuild
./app-pda/libopensync-plugin-irmc/libopensync-plugin-irmc-9999.ebuild
./app-pda/libopensync-plugin-syncml/libopensync-plugin-syncml-9999.ebuild
./app-pda/libopensync-plugin-google-calendar/libopensync-plugin-google-calendar-9999.ebuild
./app-pda/libopensync-plugin-python/libopensync-plugin-python-9999.ebuild
./app-pda/libopensync-plugin-kdepim/libopensync-plugin-kdepim-9999.ebuild
./app-pda/libopensync-plugin-gnokii/libopensync-plugin-gnokii-9999.ebuild
./app-pda/libsyncml/libsyncml-9999.ebuild
./app-pda/libopensync-plugin-palm/libopensync-plugin-palm-9999.ebuild
./app-pda/msynctool/msynctool-9999.ebuild
./app-pda/libopensync/libopensync-9999.ebuild
./app-pda/libopensync-plugin-file/libopensync-plugin-file-9999.ebuild
./app-pda/libopensync-plugin-vformat/libopensync-plugin-vformat-9999.ebuild
./app-pda/libopensync-plugin-gpe/libopensync-plugin-gpe-9999.ebuild
./app-pda/libopensync-plugin-evolution2/libopensync-plugin-evolution2-9999.ebuild
./app-emacs/ngnus/ngnus-9999.ebuild
./app-emacs/gentoo-syntax/gentoo-syntax-9999.ebuild
./dev-python/django/django-9999.ebuild
./games-rpg/mangos/mangos-9999.ebuild
./sys-fs/yaffs-utils/yaffs-utils-9999.ebuild
./sys-fs/btrfs-progs/btrfs-progs-9999.ebuild
./sys-fs/yaffs2-utils/yaffs2-utils-9999.ebuild
./sys-fs/btrfs/btrfs-9999.ebuild
./sys-fs/zfs-fuse/zfs-fuse-9999.ebuild
./net-im/sim/sim-9999.ebuild
./sys-apps/initng/initng-9999.ebuild


./local/layman/pd-overlay/media-sound/pd-devel/pd-devel-0.41.4.9999.ebuild
./local/layman/pd-overlay/media-sound/pd-devel/pd-devel-0.39.0.9999.ebuild
./local/layman/pd-overlay/media-plugins/ggee/ggee-9999.ebuild
./local/layman/pd-overlay/media-plugins/freeverb/freeverb-9999.ebuild
./local/layman/pd-overlay/media-plugins/creb/creb-9999.ebuild
./local/layman/pd-overlay/media-plugins/maxlib/maxlib-9999.ebuild
./local/layman/pd-overlay/media-plugins/aalex/aalex-9999.ebuild
./local/layman/pd-overlay/media-plugins/dfx-transverb/dfx-transverb-9999.ebuild
./local/layman/pd-overlay/media-plugins/footils-knob/footils-knob-9999.ebuild
./local/layman/pd-overlay/media-plugins/iem-iemgui/iem-iemgui-9999.ebuild
./local/layman/pd-overlay/media-plugins/bbogart-popup/bbogart-popup-9999.ebuild
./local/layman/pd-overlay/media-plugins/footils-shabby/footils-shabby-9999.ebuild
./local/layman/pd-overlay/media-plugins/grh-adaptive/grh-adaptive-9999.ebuild
./local/layman/pd-overlay/media-plugins/pdmtl/pdmtl-9999.ebuild
./local/layman/pd-overlay/media-plugins/pmpd/pmpd-9999.ebuild
./local/layman/pd-overlay/media-plugins/frankenstein/frankenstein-9999.ebuild
./local/layman/pd-overlay/media-plugins/dfx-buffer_override/dfx-buffer_override-9999.ebuild
./local/layman/pd-overlay/media-plugins/k_cext/k_cext-9999.ebuild
./local/layman/pd-overlay/media-plugins/k_guile/k_guile-9999.ebuild
./local/layman/pd-overlay/media-plugins/iem-iem_tab/iem-iem_tab-9999.ebuild
./local/layman/pd-overlay/media-plugins/footils-fluid/footils-fluid-9999.ebuild
./local/layman/pd-overlay/media-plugins/dfx-polarizer/dfx-polarizer-9999.ebuild
./local/layman/pd-overlay/media-plugins/moocow-pdstring/moocow-pdstring-9999.ebuild
./local/layman/pd-overlay/media-plugins/tkwidgets/tkwidgets-9999.ebuild
./local/layman/pd-overlay/media-plugins/dfx-library/dfx-library-9999.ebuild
./local/layman/pd-overlay/media-plugins/folderpanel/folderpanel-9999.ebuild
./local/layman/pd-overlay/media-plugins/mrpeach-osc/mrpeach-osc-9999.ebuild
./local/layman/pd-overlay/media-plugins/arraysize/arraysize-9999.ebuild
./local/layman/pd-overlay/media-plugins/grh-GApop/grh-GApop-9999.ebuild
./local/layman/pd-overlay/media-plugins/iem-iemguts/iem-iemguts-9999.ebuild
./local/layman/pd-overlay/media-plugins/getdollarzero/getdollarzero-9999.ebuild
./local/layman/pd-overlay/media-plugins/purepd/purepd-9999.ebuild
./local/layman/pd-overlay/media-plugins/mjlib/mjlib-9999.ebuild
./local/layman/pd-overlay/media-plugins/beatpipe/beatpipe-9999.ebuild
./local/layman/pd-overlay/media-plugins/pdogg/pdogg-9999.ebuild
./local/layman/pd-overlay/media-plugins/dfx-skidder/dfx-skidder-9999.ebuild
./local/layman/pd-overlay/media-plugins/ffext-tracker/ffext-tracker-9999.ebuild
./local/layman/pd-overlay/media-plugins/OSCx/OSCx-9999.ebuild
./local/layman/pd-overlay/media-plugins/footils-syncgrain/footils-syncgrain-9999.ebuild
./local/layman/pd-overlay/media-plugins/iem-comport/iem-comport-9999.ebuild
./local/layman/pd-overlay/media-plugins/ffext-notemono/ffext-notemono-9999.ebuild
./local/layman/pd-overlay/media-plugins/mapping/mapping-9999.ebuild
./local/layman/pd-overlay/media-plugins/hcs/hcs-9999.ebuild
./local/layman/pd-overlay/media-plugins/destroysend/destroysend-9999.ebuild
./local/layman/pd-overlay/media-plugins/iem-iemmatrix/iem-iemmatrix-9999.ebuild
./local/layman/pd-overlay/media-plugins/ann/ann-9999.ebuild
./local/layman/pd-overlay/media-plugins/bbogart-entry/bbogart-entry-9999.ebuild
./local/layman/pd-overlay/media-plugins/miXed/miXed-9999.ebuild
./local/layman/pd-overlay/media-plugins/zexy/zexy-9999.ebuild
./local/layman/pd-overlay/media-plugins/iemlib/iemlib-9999.ebuild
./local/layman/pd-overlay/media-plugins/grh-PDContainer/grh-PDContainer-9999.ebuild

Hope this helps...

  EBo --