vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| What is the definition of the -* keyword? Does it mean "for no architecture?" How does it differ from a package that is masked? Can I force compilation of such a package by putting it in the package.keywords file? I copied one such ebuild to /usr/local/portage and changed the KEYWORDS to ~x86 and added that name to my package.keywords file. Was that unnecessary? Thx for allowing my ignorance! |
| |||
| Peter wrote: > What is the definition of the -* keyword? Does it mean "for no > architecture?" How does it differ from a package that is masked? Can I > force compilation of such a package by putting it in the package.keywords > file? I copied one such ebuild to /usr/local/portage and changed the > KEYWORDS to ~x86 and added that name to my package.keywords file. Was that > unnecessary? > > Thx for allowing my ignorance! Stolen from the Gentoo site: <snip> This variable now supports a couple of different functions. First of all, this variable specifies what architecture the ebuild is meant for. Some example keywords include: x86, ppc, sparc, mips, alpha, arm, hppa, amd64 and ia64. See the profiles/arch.list file in the Portage tree for more details. Obviously, you would set this to reflect the architecture of the target machine. Portage will not allow an x86 machine to build anything but x86, as specified by the KEYWORDS variable. Packages that do no support the native architecture are automatically masked by Portage. If the KEYWORDS flag has a preceding ~, then that indicates that the particular ebuild works, but needs to be tested in several environments before being moved to the stable profile with the given keyword. If the KEYWORDS flag has a preceding -, then the package does not work with the given keyword. If there is nothing leading KEYWORDS, then the package is considered stable. You can allow installation of these different types of packages through the ACCEPT_KEYWORDS variable in make.conf. </snip> But the easiest way to compile a masked package is: ACCEPT_KEYWORDS="~x86" emerge packagename (if the mask flag is ~x86, of course. Check the Gentoo site for docs and more info! |
| |||
| On Wed, 02 Feb 2005 15:55:31 +0100, Wim Cossement wrote: snip > But the easiest way to compile a masked package is: > > ACCEPT_KEYWORDS="~x86" emerge packagename (if the mask flag is ~x86, of > course. > > Check the Gentoo site for docs and more info! I did. ACCEPT_KEYWORDS="-*" does not work. See this: root@mars peter # ACCEPT_KEYWORDS="-*" emerge -p e These are the packages that I would merge, in order: Calculating dependencies !!! All ebuilds that could satisfy "e" have been masked. !!! One of the following masked packages is required to complete your request: - x11-wm/e-9999 (masked by: -* keyword) For more information, see MASKED PACKAGES section in the emerge man page or section 2.2 "Software Availability" in the Gentoo Handbook. |
| |||
| "Wim Cossement" <email@notset.be> schreef in bericht news:ctqpj8$sjo$1@snic.vub.ac.be... > Peter wrote: >> What is the definition of the -* keyword? Does it mean "for no >> architecture?" How does it differ from a package that is masked? Can I >> force compilation of such a package by putting it in the package.keywords >> file? I copied one such ebuild to /usr/local/portage and changed the >> KEYWORDS to ~x86 and added that name to my package.keywords file. Was >> that >> unnecessary? >> >> Thx for allowing my ignorance! > > Stolen from the Gentoo site: > > <snip> > This variable now supports a couple of different functions. First of all, > this variable specifies what architecture the ebuild is meant for. Some > example keywords include: x86, ppc, sparc, mips, alpha, arm, hppa, amd64 > and ia64. See the profiles/arch.list file in the Portage tree for more > details. Obviously, you would set this to reflect the architecture of the > target machine. Portage will not allow an x86 machine to build anything > but x86, as specified by the KEYWORDS variable. Packages that do no > support the native architecture are automatically masked by Portage. If > the KEYWORDS flag has a preceding ~, then that indicates that the > particular ebuild works, but needs to be tested in several environments > before being moved to the stable profile with the given keyword. If the > KEYWORDS flag has a preceding -, then the package does not work with the > given keyword. If there is nothing leading KEYWORDS, then the package is > considered stable. You can allow installation of these different types of > packages through the ACCEPT_KEYWORDS variable in make.conf. > </snip> > > But the easiest way to compile a masked package is: > > ACCEPT_KEYWORDS="~x86" emerge packagename (if the mask flag is ~x86, of > course. I thought the problem with your suggestion is that also the packages on which packagename depends are emerged with ~x86 and that may not be what you want. I was told always to "accept keywords" via the package.keywords file |
| |||
| Wim Cossement enlightened us with: > But the easiest way to compile a masked package is: > > ACCEPT_KEYWORDS="~x86" emerge packagename NOOOOOOOOOOOOOOOOOOOOO! DON'T use ACCEPT_KEYWORDS="~x86" for it'll emerge dependencies with ~x86 which may not be wanted. Here are two reasons why "emerge -U" is drop dead ugly (bookmarking this now so in the future I can link to it rather then writing it again and again Wink ) Reason 1: Problems with SLOTs This occured to quite a few people that wanted gimp-2 instead of gimp-1.2. Imagine gimp-1.2 marked stable and in SLOT 1, gimp-2 marked unstable and in SLOT 2. Now you do an "ACCEPT_KEYWORDS=~x86" emerge gimp" and get gimp-2. Later on you consider it's time to update your system with anything similar to "emerge -U world". This will install gimp-1.2, because gimp is in the worldfile, and "-U" doesn't handle the SLOTs here as one might expect it. Reason 2: Problems if ebuilds are removed from Portage tree Imagine there are two versions of package foo in portage, foo-1.4 marked stable and foo-1.6 marked unstable. You want unstable and emerge it like gimp above. Some time later you update world like above, but in the meantime foo-1.6.1 came out fixing an important security hole in foo-1.6. Now there are two possibilities: a) foo-1.6 got removed from Portage. This results in foo-1.4 getting installed, thus a downgrade instead of "-U" b) even worse when foo-1.6 wasn't removed from Portage due to whatever reason: foo-1.6 (the one with the security hole) would stay on your system until something greater than foo-1.6 gets marked stable. For more info, see http://forums.gentoo.org/viewtopic.php?t=167323 Sybren -- The problem with the world is stupidity. Not saying there should be a capital punishment for stupidity, but why don't we just take the safety labels off of everything and let the problem solve itself? |
| |||
| On Wed, 02 Feb 2005 16:39:33 +0100, Sybren Stuvel wrote: > Wim Cossement enlightened us with: >> But the easiest way to compile a masked package is: >> >> ACCEPT_KEYWORDS="~x86" emerge packagename > > NOOOOOOOOOOOOOOOOOOOOO! DON'T use ACCEPT_KEYWORDS="~x86" for it'll emerge > dependencies with ~x86 which may not be wanted. > I agree. However, back to the point, how do I properly use the -* keyword to emerge packages. |
| |||
| On Wed, 02 Feb 2005 10:45:33 -0500, Peter wrote: > On Wed, 02 Feb 2005 16:39:33 +0100, Sybren Stuvel wrote: > >> Wim Cossement enlightened us with: >>> But the easiest way to compile a masked package is: >>> >>> ACCEPT_KEYWORDS="~x86" emerge packagename >> >> NOOOOOOOOOOOOOOOOOOOOO! DON'T use ACCEPT_KEYWORDS="~x86" for it'll >> emerge dependencies with ~x86 which may not be wanted. >> > I agree. However, back to the point, how do I properly use the -* keyword > to emerge packages. The way I did it was to move the ebuild to /usr/local/portage... and change the keyword to ~x86 (for me) and then to add it to package.keywords. Was there a better way? What's the meaning of -* (don't touch at all?) |
| |||
| On Wed, 02 Feb 2005 10:57:16 -0500, Peter wrote: I just tried adding x11-wm/e -* to the package.keywords file and emerge would accept it. Is this what I need to do anytime I want a cvs or unstable version of software? Add it to package.keywords? Why did the unmask file work for this? My keywords file is getting long - over 20 entries already. Is there a better, smarter way? |
| |||
| Peter enlightened us with: > I just tried adding x11-wm/e -* to the package.keywords file and > emerge would accept it. Is this what I need to do anytime I want a > cvs or unstable version of software? Add it to package.keywords? Yes. > Why did the unmask file work for this? Did or didn't? > My keywords file is getting long - over 20 entries already. Is there > a better, smarter way? Nope, this is the way. Sybren -- The problem with the world is stupidity. Not saying there should be a capital punishment for stupidity, but why don't we just take the safety labels off of everything and let the problem solve itself? |
| ||||
| On Wed, 02 Feb 2005 18:47:51 +0100, Sybren Stuvel wrote: > Peter enlightened us with: >> I just tried adding x11-wm/e -* to the package.keywords file and emerge >> would accept it. Is this what I need to do anytime I want a cvs or >> unstable version of software? Add it to package.keywords? > > Yes. > >> Why did the unmask file work for this? > > Did or didn't? > Lazy fingers make stupid mistakes. package.unmask did NOT make the file available. >> My keywords file is getting long - over 20 entries already. Is there a >> better, smarter way? > > Nope, this is the way. > > Sybren Thanks so much for the clarification. |