> Date: Wed, 12 Apr 2006 05:03:06 +0200
> From: Roland Mainz <roland.mainz at nrubsig.org>
> X-Accept-Language: en
> MIME-Version: 1.0
> To: ksh93-integration-discuss <ksh93-integration-discuss at opensolaris.org>
> CC: April Chin <April.Chin at eng.sun.com>
> Subject: Patch to introduce "oksh" to OS/Net
> X-ID: Gt0vNGZc8eyT3BLbugCm8aBjI5fLV5YqPPxVkI4bJMrA5tp-JND204 at t-dialin.net
> X-TOI-MSGID: 7b352edc-1d5e-45f7-971c-d6b790782385
>
>
> Hi!
>
> ----
>
> Attached is a small patch which introduces "oksh" to OS/Net.
>
> The patch adds "oksh", "roksh" and "pfoksh" to the package database (as
> hard link to /usr/bin/ksh), modifies getusershell.c to recognise these
> new shell names as login shells by default (and adds "nksh" as another
> option) and modifies wordexp.c to use "oksh" (this last item is a
> blocker which prevents the OpenSolaris-based distributions to ship ksh93
> as /usr/bin/ksh right now (I have another patch for fixing the
> libc/wordexp() dependicy on the "old ksh" - but that requires
> libast/libshell to be present in the system (e.g. is a ToDo item once
> libast/libshell are present))).
>
> The only remaining item missing in the patch is to adjust the old
> Solaris ksh to recohnizse "roksh" the same was as "rksh" (e.g.
> restricted korn shell mode) and "pfoksh" the same as "pfksh" (profile
> mode korn shell).
> Unfortunately I cannot do it myself since the sources for the "old korn
> shell" are not available... ;-(
>
> April: Do you have time to act as sponsor for this patch, please ?
>
> ----
>
> Bye,
> Roland
>
> --
> __ . . __
> (o.\ \/ /.o) roland.mainz at nrubsig.org
> \__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer
> /O /==\ O\ TEL +49 641 7950090
> (;O/ \/ \O;)
Hi Roland,
I've been out since Apr 10th and just got back today, so I'm still
catching up on some of the email...
A suggestion from a PSARC member was to keep /bin/ksh (Solaris's
ksh) as is, until it is replaced by ksh93, rather than introducing
these new obscure names for Solaris's ksh. Then when ksh93 becomes /bin/ksh,
to move Solaris's ksh to a separate package (not part of the main package
clusters).
However, I think we still need to name Solaris's ksh something unique
from /bin/ksh (or at least move it to another directory), even if it
is moved to another package. Otherwise, ksh93 and the old Solaris ksh
cannot co-exist if that is desired while users are transitioning,
and would cause patching and upgrading problems. So creating
/bin/oksh and the other links is still necessary.
Questions:
- Do we need any links for /usr/xpg4/bin/sh? Once we've transitioned
to a standard-compliant ksh93, will there be any need for the old version
of the standard-compliant shell?
- Is it necessary to change wordexp() to use /usr/bin/oksh instead of
/usr/bin/ksh? Once ksh93 becomes /usr/bin/ksh, oksh may not be
installed into the Core Solaris cluster (see suggestion above), but
we could look at changing wordexp() to dlopen() of libshell.so or some other
method which uses ksh93.
I can sponsor the change and make the necessary changes to the closed
ksh source for you. Introducing the new links would likely be a
"fast-track" (simple) case for PSARC.
Roland, I'll discuss more details offline.
Do you still have objections to introducing ksh93 as /bin/ksh93 rather
than nksh? IBM AIX 5L uses /usr/bin/ksh93, so ksh93 would be a more
descriptive and portable name, since no other OS uses nksh as far as
I know. Searching through hp.com, I think HP-UX's version of ksh93
may still be dtksh.
Thanks,
April