Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 928000 - Possible error at portage(5) - package.accept_keywords
Summary: Possible error at portage(5) - package.accept_keywords
Status: RESOLVED INVALID
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Documentation (show other bugs)
Hardware: All All
: Normal minor (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-03-28 04:00 UTC by glibg10b
Modified: 2024-03-29 17:25 UTC (History)
1 user (show)

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 glibg10b 2024-03-28 04:00:26 UTC
The man page for Portage says the following under package.accept_keywords:

> In addition to the normal values from ACCEPT_KEYWORDS
> package.keywords supports three special tokens:
> 
> *  package is visible if it is stable on any architecture
> ~* package is visible if it is in testing on any architecture
> ** package is always visible (KEYWORDS are ignored completely)
>
> Additional  Note: If you encounter the -* KEYWORD, this indicates
> that the package is known to be broken on all systems which are not
> otherwise listed in KEYWORDS.  For example, a binary
> only package which is built for x86 will look like:
>
> games-fps/quake3-demo-1.11.ebuild:KEYWORDS="-* x86"
>
> If you wish to accept this package anyways, then use one of the
> other keywords in your package.accept_keywords like this:
>
> games-fps/quake3-demo x86

The way I interpret it, `-*` in the KEYWORDS hides the package on all architectures, and then `x86` makes it visible on x86.

If this is the case, then adding x86 to package.accept_keywords would do nothing. Instead, some other architecture that is also the system's architecture should be added.

The /etc/portage/package.accept_keywords page on the wiki repeats the above text verbatim, so if this ends up being a real bug, I will fix that page.
Comment 1 Mike Gilbert gentoo-dev 2024-03-29 14:34:06 UTC
(In reply to glibg10b from comment #0)
> The way I interpret it, `-*` in the KEYWORDS hides the package on all
> architectures, and then `x86` makes it visible on x86.

Correct.

> If this is the case, then adding x86 to package.accept_keywords would do
> nothing. Instead, some other architecture that is also the system's
> architecture should be added.

You seem to have this backwards.

Adding x86 to package.accept_keywords will allow the package to be installed on a system where ACCEPT_KEYORDS in make.conf or profiles does not contain x86.

For example, if I have ACCEPT_KEYWORDS="amd64" in make.conf, adding the following entry to package.accept_keywords would allow me to install quake3-demo.

games-fps/quake3-demo x86
Comment 2 glibg10b 2024-03-29 17:25:49 UTC
(In reply to Mike Gilbert from comment #1)
> (In reply to glibg10b from comment #0)
> > The way I interpret it, `-*` in the KEYWORDS hides the package on all
> > architectures, and then `x86` makes it visible on x86.
> 
> Correct.
> 
> > If this is the case, then adding x86 to package.accept_keywords would do
> > nothing. Instead, some other architecture that is also the system's
> > architecture should be added.
> 
> You seem to have this backwards.
> 
> Adding x86 to package.accept_keywords will allow the package to be installed
> on a system where ACCEPT_KEYORDS in make.conf or profiles does not contain
> x86.
> 
> For example, if I have ACCEPT_KEYWORDS="amd64" in make.conf, adding the
> following entry to package.accept_keywords would allow me to install
> quake3-demo.
> 
> games-fps/quake3-demo x86

Thank you. I failed to realize that the example is based on a *non*-x86 system, and that one can accept keywords for other architectures.