Gentoo Archives: gentoo-dev

From: Michael Haubenwallner <haubi@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] POSIX shell and "portable"
Date: Mon, 05 Nov 2007 13:25:34
Message-Id: 1194268910.6977.86.camel@sapc154
In Reply to: Re: [gentoo-dev] POSIX shell and "portable" by Roy Marples
1 On Mon, 2007-11-05 at 10:13 +0000, Roy Marples wrote:
2 > While I still have access to the u@g.o email, I'll respond here.
3 >
4 >
5 > On Mon, 2007-11-05 at 10:22 +0100, Michael Haubenwallner wrote:
6 > > On Sat, 2007-11-03 at 00:47 +0000, Roy Marples wrote:
7 > >
8 > > As it seems too few people really accept your suggestion, I feel it's
9 > > time for me to chime in too, although I don't know what exactly POSIX-sh
10 > > standard defines.
11 >
12 > > Agreed, but (speaking for alt/prefix):
13 > >
14 > > Alt/prefix is designed to (mainly) work without superuser access on the
15 > > target machine, which may also be Solaris, AIX, HP-UX and the like.
16 > > /bin/sh on such a machine is not POSIX-shell, but old bourne-shell
17 > > (unfortunately with bugs often).
18 > > And it is _impossible_ to have sysadmins to get /bin/sh a POSIX-Shell
19 > > nor to have that bugs fixed.
20 > >
21 > > But yes, on most machines there is /bin/ksh, which IMHO is POSIX
22 > > compliant (maybe also with non-fixable bugs).
23 > >
24 > > Although I do not know yet for which _installed_ scripts it'd be really
25 > > useful to have them non-bash in alt/prefix, I appreciate the discussion.
26 > >
27 > > To see benefits for alt/prefix too, it _might_ require that discussion
28 > > going from requiring /bin/sh being POSIX-sh towards being
29 > > bourne-shell...
30 >
31 > Actually you missed the mark completely.
32 > Nothing in the tree itself specifies what shell to use - instead it's
33 > the package manager. So the PM on Gentoo/Linux/FreeBSD *could*
34 > be /bin/sh and on the systems where /bin/sh is not possible to change to
35 > a POSIX compliant shell then it can still use /bin/bash or wherever it's
36 > installed.
37
38 So "have the installed scripts to not require bash" is another topic ?
39
40 Ok then:
41 Given that we want to have the tree "more generic unix-able":
42 What is the benefit from having the tree being POSIX- but not
43 bourne-shell compatible, so one still needs bash on Solaris/AIX/HP-UX ?
44 Because I'd say those three are the biggest substitutes for "unix",
45 while I'd call *BSD and Linux just "unix derivates" (although with
46 enhancements)...
47
48 >
49 > This also applies to the userland tools. If the ebuild or eclass *has*
50 > to use the GNU variants then it should either adjust $PATH so that it
51 > finds them first, or it prefixes them all with g, like it does on
52 > Gentoo/FreeBSD.
53 >
54 > None of this is technically challenging in itself, it's just that the
55 > key people who would have to do the work to make this possible have
56 > already given a flat out no.
57
58 In the early prefix days I had some portage enhancement, providing a
59 wrapper-function around all coreutils/findutils/diffutils/grep/others,
60 trying to find a GNU implementation for them. And if not found, try to
61 map some args to the native ones ("xargs -r" fex - although didn't work
62 as shell-function).
63 But then we decided to always provide USERLAND=GNU in prefix and this
64 portage patch was thrown away.
65
66 >
67 > > > > It seems to me that you actually mean "more FreeBSD-able" or something,
68 > > > > which is a high price to pay for a relatively small part of Gentoo as a
69 > > > > whole.
70 > > >
71 > > > More embeddable.
72 > > > More BSDable.
73 > > > More Linuxable - bash isn't the only linux shell, there are plently of
74 > > > others.
75 > >
76 > > More (generic) unix-able.
77 >
78 > Exactly so :)
79
80 Not really as long as not being bourne shell compatible like autoconf's
81 configure. I won't trust to have a POSIX shell like /bin/ksh everywhere,
82 but /bin/sh only, which usually is just a bourne shell on "unix".
83
84 /haubi/
85 --
86 Michael Haubenwallner
87 Gentoo on a different level
88
89 --
90 gentoo-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] POSIX shell and "portable" Mike Frysinger <vapier@g.o>
Re: [gentoo-dev] POSIX shell and "portable" Roy Marples <uberlord@g.o>