Summary: | sys-freebsd/freebsd-ubin: should depend sys-apps/nawk | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Christoph Junghans (RETIRED) <junghans> |
Component: | Current packages | Assignee: | Gentoo/BSD Team <bsd+disabled> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | FreeBSD | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 419555, 455786 | ||
Bug Blocks: | 418473 |
Description
Christoph Junghans (RETIRED)
2012-07-10 21:52:03 UTC
why? (In reply to comment #1) > why? nawk is the same as the awk inside freebsd-ubin. So this avoids duplication. (In reply to comment #2) > (In reply to comment #1) > > why? > nawk is the same as the awk inside freebsd-ubin. So this avoids duplication. is it taken from freebsd or freebsd took it ? (In reply to comment #3) > (In reply to comment #2) > > (In reply to comment #1) > > > why? > > nawk is the same as the awk inside freebsd-ubin. So this avoids duplication. > > is it taken from freebsd or freebsd took it ? I am not good at history, but freebsd's "one-true-awk" is the 2005 version of Brian Kernighan's awk, which is normally called nawk. http://www.freebsd.org/cgi/cvsweb.cgi/src/contrib/one-true-awk/FREEBSD-upgrade?rev=1.9&content-type=text/x-cvsweb-markup yep it seems its the same, though its not the 2005 version here: awk --version awk version 20110810 (FreeBSD) however, it seems that if gawk is installed before nawk, awk will be gawk, which is a no-go from freebsd POV (In reply to comment #5) > yep it seems its the same, though its not the 2005 version here: > awk --version > awk version 20110810 (FreeBSD) Like I said, I am not good at history, the nawk version in the tree is 20110810 as well. > however, it seems that if gawk is installed before nawk, awk will be gawk, > which is a no-go from freebsd POV If sys-freebsd/freebsd-ubin would depend on nawk directly and not virtual/awk, so the nawk ebuild would call "eselect awk" first. Or we could change the order depending on the userland in virtual/awk. fbsd profile also sets: alias awk=gawk (In reply to comment #6) > > however, it seems that if gawk is installed before nawk, awk will be gawk, > > which is a no-go from freebsd POV > If sys-freebsd/freebsd-ubin would depend on nawk directly and not > virtual/awk, so the nawk ebuild would call "eselect awk" first. Or we could > change the order depending on the userland in virtual/awk. this doesnt ensure it, heck, packages.build lists gawk before fbsd-ubin, so its likely that new stages will have gawk set. anyway, i dont think it is a good idea to rely on a merge order which we have no control over (remember stages having python3 as default interpreter ? :) ) i would prefer a way to specify 'i want nawk but do not touch it if _user_ changed it' instead of the current behavior which is 'give nawk if nothing else provides it' > fbsd profile also sets: alias awk=gawk this is only for ebuilds (In reply to comment #7) > (In reply to comment #6) > i would prefer a way to specify 'i want nawk but do not touch it if _user_ > changed it' instead of the current behavior which is 'give nawk if nothing > else provides it' Currently one can not distinguish if an ebuild or a user has called "eselect awk" and I also don't see a clean way to do it. "eselect awk --nouser" is a bit hacky. How was the problem solved in the case of python? emacs has a livecd use flag, which calls "eselect emacs" instead of the normal "eselect emacs --ifunset", would something like this help? We could resolve this by modifying the gawk ebuild to avoid making a symlink when userland_BSD is set and also modifying the nawk ebuild to make a symlink when userland_BSD is set and none exists. (In reply to comment #8) > (In reply to comment #7) > > (In reply to comment #6) > > i would prefer a way to specify 'i want nawk but do not touch it if _user_ > > changed it' instead of the current behavior which is 'give nawk if nothing > > else provides it' > Currently one can not distinguish if an ebuild or a user has called "eselect > awk" and I also don't see a clean way to do it. "eselect awk --nouser" is a > bit hacky. How was the problem solved in the case of python? wait sufficiently long so that python3 being default isnt an issue I guess, as the current amd64 autobuild definitely has python 3.2.3 as default interpreter. try a 'ALL python stage' search in bugzilla > emacs has a livecd use flag, which calls "eselect emacs" instead of the > normal "eselect emacs --ifunset", would something like this help? sounds even more hacky and ugly than what you proposed above :) thinking more about it, putting nawk before gawk in packages.build might do the right thing, got to try that. and anyway, if you want this to have a chance to happen, you should file a keywordreq bug :) (In reply to comment #12) > and anyway, if you want this to have a chance to happen, you should file a > keywordreq bug :) Keywording was done. How should we process here? ping @ bsd |