Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
is there a point to no keywords
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  
Author Message
thechris
Veteran
Veteran


Joined: 12 Oct 2003
Posts: 1203

PostPosted: Thu Dec 22, 2005 8:50 am    Post subject: is there a point to no keywords Reply with quote

for anyone who has used amd64, you occasionally run across an ebuild that won't accept amd64, ~amd64, or -* as a keyword. these ebuild seem to work with the x86 or ~x86 keyword though.

this brings up a question -- what is the signifigance of no keyword?

-* means it is not tested for any architectures not explicitly listed.
~arch means it is in testing for a given architecture
arch means it is tested for a given architecture.
-arch means it did not work on a given architeture, but is probably hard masked instead... -arch seems rare. last one i saw was a typo...
hardmasking means it is known not to work or is expected not to work.

so what does no keywords mean? that the ebuild does not exist for a given architecture? realistically any ebuild not in arch, ~arch, or -arch should be covered by -* even if not explicitly stated. i don't see what is gained by not specifying keywords in an ebuild other then saving time writing the ebuild.

an example is all the ebuilds in www-apps. these are crossplatform scripts that typically work on any apache install on many OS's and CPU's. and yet an amd64 user cannot emerge them without accepting the x86 keyword. the correct choice would seem to be -* (untested on this arch).
_________________
HW problems. It's a VIA thing.
Back to top
View user's profile Send private message
tomk
Bodhisattva
Bodhisattva


Joined: 23 Sep 2003
Posts: 7221
Location: Sat in front of my computer

PostPosted: Thu Dec 22, 2005 10:09 am    Post subject: Re: is there a point to no keywords Reply with quote

thechris wrote:
-* means it is not tested for any architectures not explicitly listed.


A -* keyword means that it will not work on any arch apart from the ones listed, if there is no keyword for a particular arch that indicated that it has not been tested on that arch.
_________________
Search | Read | Answer | Report | Strip
Back to top
View user's profile Send private message
mark_alec
Bodhisattva
Bodhisattva


Joined: 11 Sep 2004
Posts: 6066
Location: Melbourne, Australia

PostPosted: Thu Dec 22, 2005 11:02 am    Post subject: Reply with quote

--> Gentoo Development Guide: Keywording <--
Back to top
View user's profile Send private message
omp
Retired Dev
Retired Dev


Joined: 10 Sep 2005
Posts: 1018
Location: Glendale, California

PostPosted: Thu Dec 22, 2005 12:06 pm    Post subject: Re: is there a point to no keywords Reply with quote

thechris wrote:
hardmasking means it is known not to work or is expected not to work.
A lot of development-version things are hardmasked such as odd releases of GNOME and rc's of KDE. This doesn't mean they aren't expected to work.
_________________
meow.
Back to top
View user's profile Send private message
anmmyhu
n00b
n00b


Joined: 22 Dec 2005
Posts: 2
Location: China

PostPosted: Thu Dec 22, 2005 4:00 pm    Post subject: Re: is there a point to no keywords Reply with quote

8O
omp wrote:
thechris wrote:
hardmasking means it is known not to work or is expected not to work.
A lot of development-version things are hardmasked such as odd releases of GNOME and rc's of KDE. This doesn't mean they aren't expected to work.

_________________
/¡ð\ ¡ñ
/¡ö\/¡ö\
<| ||
Back to top
View user's profile Send private message
thechris
Veteran
Veteran


Joined: 12 Oct 2003
Posts: 1203

PostPosted: Thu Dec 22, 2005 9:44 pm    Post subject: Re: is there a point to no keywords Reply with quote

tomk wrote:
thechris wrote:
-* means it is not tested for any architectures not explicitly listed.


A -* keyword means that it will not work on any arch apart from the ones listed, if there is no keyword for a particular arch that indicated that it has not been tested on that arch.


it seems more to mean that it is untestable on that arch. which is the problem. it makes no sense to accept x86 as a keyword for a non-x86 system.

it seems that the de facto standard is to mark anything with -* and then whatever it has been tested on. new builds, like gcc4 (at least a few months ago) were marked with -* but would build on x86 and others. according to the document, the ebuild should have had no keywords (making it impossible to emerge) because it had not been tested on any architecture...

so it seems the keywords have changed meaning, and i'm arguing that there should be an emerge anyways option for amd64 users and non-x86 users. a lot of the cross-platform scripts are marked as x86 preventing amd64 users from using them without setting the keywords to x86. its a bit hackish.

possibly a ?arch would be an option -- an option that says the ebuild has not been tested on the arch, but may work anyways. as well as a ?*
_________________
HW problems. It's a VIA thing.
Back to top
View user's profile Send private message
Vanquirius
Retired Dev
Retired Dev


Joined: 14 Jun 2002
Posts: 1297
Location: Ethereal plains

PostPosted: Fri Dec 23, 2005 2:24 am    Post subject: Reply with quote

To reiterate: -* means it will not work with unlisted arches. For example, a x86 binary application.
-* has also been used to make it more difficult for people to be installing stuff they are not supposed to. For example, you don't want people who don't know what they are doing to run bleeding-edge glibc and gcc, since it will just plain break their systems.
That's pretty much the story.
_________________
Hello.
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9507
Location: beyond the rim

PostPosted: Sat Dec 24, 2005 3:18 pm    Post subject: Reply with quote

Vanquirius wrote:
-* has also been used to make it more difficult for people to be installing stuff they are not supposed to. For example, you don't want people who don't know what they are doing to run bleeding-edge glibc and gcc, since it will just plain break their systems.

Which is rather stupid as KEYWORDS="-*" technically isn't different to KEYWORDS=""
Back to top
View user's profile Send private message
Vanquirius
Retired Dev
Retired Dev


Joined: 14 Jun 2002
Posts: 1297
Location: Ethereal plains

PostPosted: Sat Dec 24, 2005 4:48 pm    Post subject: Reply with quote

Genone wrote:
Which is rather stupid as KEYWORDS="-*" technically isn't different to KEYWORDS=""


I personally never used KEYWORDS="-*", but there are plenty of others that should know this...
_________________
Hello.
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9507
Location: beyond the rim

PostPosted: Sat Dec 24, 2005 5:50 pm    Post subject: Reply with quote

Vanquirius wrote:
Genone wrote:
Which is rather stupid as KEYWORDS="-*" technically isn't different to KEYWORDS=""


I personally never used KEYWORDS="-*", but there are plenty of others that should know this...


People already know it and keep doing it anyway, it's hard to get rid of stupid ideas introduced by drobbins.
Back to top
View user's profile Send private message
petrjanda
Veteran
Veteran


Joined: 05 Sep 2003
Posts: 1557
Location: Brno, Czech Republic

PostPosted: Mon Dec 26, 2005 10:54 pm    Post subject: Reply with quote

Genone wrote:
Vanquirius wrote:
Genone wrote:
Which is rather stupid as KEYWORDS="-*" technically isn't different to KEYWORDS=""


I personally never used KEYWORDS="-*", but there are plenty of others that should know this...


People already know it and keep doing it anyway, it's hard to get rid of stupid ideas introduced by drobbins.

imo, the whole keywords stuff should be changed. an asterix usualy means "everything", hence "-*" should mean that its available for any arch, then keywords like x86 or amd64 or sparc64 should be used explicitly to tell portage which archs to exclude because its known to not work with them. If you want purely testing stuff, use overlays, do not include it in the standard tree. gentoo should also only concentrate on archs where most programs work, just to minimize the workload of its devs. it should also minimize the number of ebuilds for each program.
_________________
There is, a not-born, a not-become, a not-made, a not-compounded. If that unborn, not-become, not-made, not-compounded were not, there would be no escape from this here that is born, become, made and compounded. - Gautama Siddharta
Back to top
View user's profile Send private message
Vanquirius
Retired Dev
Retired Dev


Joined: 14 Jun 2002
Posts: 1297
Location: Ethereal plains

PostPosted: Mon Dec 26, 2005 11:55 pm    Post subject: Reply with quote

petrjanda,

The problem with the exclude strategy is that we do the opposite: only packages that have been tested in a given arch are keyworded ~arch. It's easier to enumerate goodness than badness.
_________________
Hello.
Back to top
View user's profile Send private message
petrjanda
Veteran
Veteran


Joined: 05 Sep 2003
Posts: 1557
Location: Brno, Czech Republic

PostPosted: Tue Dec 27, 2005 2:09 pm    Post subject: Reply with quote

Vanquirius wrote:
petrjanda,

The problem with the exclude strategy is that we do the opposite: only packages that have been tested in a given arch are keyworded ~arch. It's easier to enumerate goodness than badness.

Perhaps its easier to enumerate goodness with the current portage, but the way i see it is that "-*" should be in every ebuild that works on at least the one major arch (x86), meaning you are free to try it on any arch want, if it doesnt work on lets say ppc, fill a bug report, and the ebuild will be keyworded ppc and wait for some dev to fix it. This way if the ebuild works on x86, amd64, ppc, the 3 most used archs, the dev does not actually need to edit the ebuild unless it was reported in bugzilla not to work on lets say ppc.

I also think the stuff installed by portage should be put in a specific directory ie /usr/pkg, instead of / so that theres some kind of separation between the base system and apps. therefore if i run emerge -u world it will update the world apps installed in /usr/pkg, but if i run emerge -u system, it will update the base packages in /. in my opinion this would significantly decrease system breakage.
_________________
There is, a not-born, a not-become, a not-made, a not-compounded. If that unborn, not-become, not-made, not-compounded were not, there would be no escape from this here that is born, become, made and compounded. - Gautama Siddharta
Back to top
View user's profile Send private message
mark_alec
Bodhisattva
Bodhisattva


Joined: 11 Sep 2004
Posts: 6066
Location: Melbourne, Australia

PostPosted: Tue Dec 27, 2005 2:26 pm    Post subject: Reply with quote

petrjanda, I am not entirely sure what you have against the current system. Only ebuilds that have been tested are given ~arch and if they prove to be stable, arch. -* should only be used if it will never work on the architectures other than the ones given, such as with openoffice-bin.

Changing the whole tree to your new system is also a task I cannot see the gentoo developers wanting to undertake.
Back to top
View user's profile Send private message
DONAHUE
Watchman
Watchman


Joined: 09 Dec 2006
Posts: 7651
Location: Goose Creek SC

PostPosted: Wed May 09, 2012 4:12 pm    Post subject: Reply with quote

ebuild for gcc-4.6.3 (and many other gcc ebuild versions) has
Quote:
KEYWORDS=""
what is that all about? How does a user use it?
_________________
Defund the FCC.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54096
Location: 56N 3W

PostPosted: Wed May 09, 2012 6:24 pm    Post subject: Reply with quote

DONAHUE

Add
Code:
<catagory>/<package> **
to your package.keywords or package.accept_keywords file.
** matches any keyword, including none.

You can add the usual comparison operators if you provide a version too.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
DONAHUE
Watchman
Watchman


Joined: 09 Dec 2006
Posts: 7651
Location: Goose Creek SC

PostPosted: Wed May 09, 2012 7:14 pm    Post subject: Reply with quote

Thanks Neddy,

Would be nice if I were not a dummy or if the Package Database kept status.

I had had sys-devel/gcc ** in package keywords and emerge gcc had not appeared to work.
With your coaching changed to =sys-devel/gcc-4.6.3 ** in package keywords and emerge gcc still did not appear to work.
then all was revealed when I tried to emerge the atom:
oddman ~ # emerge -pv =sys-devel/gcc-4.6.3

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

Calculating dependencies... done!

!!! All ebuilds that could satisfy "=sys-devel/gcc-4.6.3" have been masked.
!!! One of the following masked packages is required to complete your request:
- sys-devel/gcc-4.6.3::gentoo (masked by: package.mask)
/usr/portage/profiles/package.mask:
# Ryan Hill <dirtyepic@gentoo.org> (02 Apr 2011)
# Masked for testing


For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.
_________________
Defund the FCC.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54096
Location: 56N 3W

PostPosted: Wed May 09, 2012 7:25 pm    Post subject: Reply with quote

DONAHUE,

Yes, gcc is hard masked too. :)

4.6.2 work for me on my diskless media player.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
DONAHUE
Watchman
Watchman


Joined: 09 Dec 2006
Posts: 7651
Location: Goose Creek SC

PostPosted: Wed May 09, 2012 11:49 pm    Post subject: Reply with quote

Thanks again. I had gotten used to seeing M in the package database ...
_________________
Defund the FCC.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum