Hi!
----
2007-11-05: ksh93 _update tarballs_ for OpenSolaris >= B72
These tarballs are intended to be installed over an existing OpenSolaris
i386 or SPARC installation (>= Nevada B72) to update the provided ksh93
installation to ksh93s?_20071101.
Note that the binaries are provided for testing and evaluation purposed
ONLY.
Please report any problems/errors/bugs/comments to the ksh93-integration
project bugzilla [5] or the ksh93-integration mailinglist [4].
** Highlights of this release:
- "multiline" editor mode allows to edit lines in a similar fashion as
"readline"-based applications like "bash"
- /etc/ksh.kshrc now sets a default prompt for interactive sessions (see
NOTES below)
- Many bugfixes
- Many closed-source binaries are replaced with opensource versions
- The shell script compiler "shcomp" is now included
- Many new demos including:
- "shnote" (utilty to read/write pastebin.ca)
- "shtwitter" (access twitter.com service and push blog entries)
- "shpiano" (audio demo)
- "shtinyurl" (tool to generate short tinyurl.com URLs)
- "shman" (early prototype of a /usr/bin/man rewrite)
- "svcproptree1" (SMF demo)
- "xmldocumenttree1" (XML parser demo)
- "test_net_sctp" (SCTP demo)
- "multifollow" (poll(1) demo which run multiple "tail -f")
... and much more...
** Install instructions:
1. Download the tarball:
+ i386/AMD64:
http://www.opensolaris.org/os/project/ksh93-integration/downloads/ksh93_integration_20071105_snapshot_i386.tar.bz2
+ SPARC:
http://www.opensolaris.org/os/project/ksh93-integration/downloads/ksh93_integration_20071105_snapshot_sparc.tar.bz2
2. Verify the MD5 checksum:
+ i386/AMD64: MD5
(ksh93_integration_20071105_snapshot_i386.tar.bz2)=
86820df14a8931706a7d6200dc41a889
+ SPARC: MD5
(ksh93_integration_20071105_snapshot_sparc.tar.bz2)=
396b9e135789c6c5c206547242dca842
3. Login as user "root":
4. Change directory to / and unpack the tarball with /usr/bin/tar
using the "xvof" option ("o" is very important to set the file
ownership to "root")
* Example for i386/AMD64:
$ cd /tmp
$ wget
http://www.opensolaris.org/os/project/ksh93-integration/downloads/ksh93_integration_20071105_snapshot_i386.tar.bz2
$ /usr/sfw/bin/openssl md5
ksh93_integration_20071105_snapshot_i386.tar.bz2
MD5(ksh93_integration_20071105_snapshot_i386.tar.bz2)=
86820df14a8931706a7d6200dc41a889
# cd /
# sync ; sync
# bzcat </tmp/ksh93_integration_20071105_snapshot_i386.tar.bz2 | tar
-xvof -
# sync ; sync
* Example for SPARC:
$ cd /tmp
$ wget
http://www.opensolaris.org/os/project/ksh93-integration/downloads/ksh93_integration_20071105_snapshot_sparc.tar.bz2
$ /usr/sfw/bin/openssl md5
ksh93_integration_20071105_snapshot_sparc.tar.bz2
MD5(ksh93_integration_20071105_snapshot_sparc.tar.bz2)=
396b9e135789c6c5c206547242dca842
# cd /
# sync ; sync
# bzcat </tmp/ksh93_integration_20071105_snapshot_sparc.tar.bz2 | tar
-xvof -
# sync ; sync
** Notes:
* This tarball matches ksh93s+ (=ast-ksh.2007-11-01) with many
many changes since the last version. Please test the binaries
extensively.
* The binaries now are build from a B72-based tree and require
SXCR B72 or higher
* Sources/diffs/webrevs:
+ The diffs between Solaris Nevada B72 and the current
ksh93-integration tree can be obtained via $ svn diff -r 866:894
svn://svn.genunix.org/on/branches/ksh93/gisburn/prototype010/usr #
or as unified diff
(http://www.opensolaris.org/os/project/ksh93-integration/downloads/svn_genunix_org_on_branches_ksh93_gisburn_prototype010_rev_866_894.diff.txt
;
3MB, MD5 checksum is c6590f068ff81cb08a7d7d3fbbac4756).
* "multiline" input mode is now enabled by default in
/etc/ksh.kshrc to match input/editor behaviour of "bash".
* /etc/ksh.kshrc now sets a default prompt (PS1) which contains
<username>@<hostname>:<current_directory>$<blank> for normal
users and <username>@<hostname>:<current_directory>#<blank> for
user "root"; the prompt length itself is limited to ~~20
characters to ensure it only occupies 1/4 of a standard 80x24
terminal window.
* <esc><ctrl-l> was added to emacs/gmacs mode to clear the screen
(per community requests and to be in sync with "bash")
* 64bit binaries and libraries are now included (and used by
default if the hardware is 64bit capable)
* "shcomp", the shell script compiler is now included as
/usr/bin/shcomp.
* AST l10n utilities are stored in /usr/ast/bin/.
* Starting with ksh93s+ multibyte characters can be used for
variable/function/etc.-names. Please test this functionality
extensively.
* Users of B72, B73, B74 and B75 (anything >=B75 has already been
fixed) which like to use ksh93 as login shell must create the
/etc/shells (see shells(4) manual page) to include it in the
list of "allowed" system login shells (otherwise dtlogin will
refuse graphical login):
Example /etc/shells file (created using
$ cat usr/src/lib/libc/port/gen/getusershell.c | egrep
'.*".*/(bin|sbin)/.*".*' | sed 's/[",]//g' | sort -u #):
-- snip --
/bin/bash
/bin/csh
/bin/jsh
/bin/ksh
/bin/ksh93
/bin/pfcsh
/bin/pfksh
/bin/pfsh
/bin/sh
/bin/tcsh
/bin/zsh
/sbin/jsh
/sbin/pfsh
/sbin/sh
/usr/bin/bash
/usr/bin/csh
/usr/bin/jsh
/usr/bin/ksh
/usr/bin/ksh93
/usr/bin/pfcsh
/usr/bin/pfksh
/usr/bin/pfsh
/usr/bin/sh
/usr/bin/tcsh
/usr/bin/zsh
/usr/sfw/bin/zsh
/usr/xpg4/bin/sh
-- snip --
* The tarball was created using the
"build_ksh93_standalone_tarball.sh" script which is available in
the usr/-directory of the prototype010 tree.
Note: The script can only be used after a successfull $ make
setup ; dmake install #-sequence, otherwise the resulting
tarball will be incomplete.
* The tarballs do not provide a manual page for ksh93. Please use
the manual page for ksh93s+ in the meantime (see [3]).
* The ksh93 binaries can be build from source like this:
(Instructions are for Solaris i386/AMD64; SPARC requires minor
adjustments)
1. Pull sources and extract closed bin stuff (files can be
obtained from opensolaris.org):
$ mkdir test_x86 ; cd test_x86
$ svn checkout -r 894
svn://svn.genunix.org/on/branches/ksh93/gisburn/prototype010/usr
$ bzcat <on-closed-bins-nd-b72.i386.tar.bz2 | tar -xf -
$ cd ..
2. Create "opensolaris.sh".
This is the usual opensolaris.sh with the paths adjusted to
match your location of the sources.
Example for the changes applies to opensolaris.sh (for my
workspace):
--- ./test1_x86/usr/src/tools/env/opensolaris.sh Thu Sep 14 13:17:59
2006
+++ ./opensolaris.sh Sun Jul 30 00:50:08 2006
@@ -43,10 +43,10 @@
# This is a variable for the rest of the script - GATE doesn't matter
to
# nightly itself
-GATE=testws; export GATE
+GATE=test1_x86; export GATE
# CODEMGR_WS - where is your workspace at
# (or what should nightly name it)
-CODEMGR_WS="/export/$GATE"; export CODEMGR_WS
+CODEMGR_WS="/home/test001/ksh93/on_build1/$GATE"; export CODEMGR_WS
# Location of encumbered binaries.
ON_CLOSED_BINS="$CODEMGR_WS/closed"; export ON_CLOSED_BINS
3. Run "bldenv":
$ env - SHELL=$SHELL TERM=$TERM HOME=$HOME LOGNAME=$LOGNAME
DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY LANG=C LC_ALL=C
PAGER=less MANPATH=$MANPATH /opt/onbld/bin/bldenv
opensolaris.sh #
4. Build it (the quick way):
$ cd test_x86/usr/src
$ export CW_NO_SHADOW=1
$ time nice make setup 2>&1 | tee -a buildlog_setup.log
$ time nice dmake install >buildlog.log 2>&1
Finally: Please check
http://www.opensolaris.org/os/project/ksh93-integration/downloads/2007-11-05/
for any updates or additional comments...
** Links/References:
[1]=ksh93-integration/migration project home page:
http://www.opensolaris.org/os/project/ksh93-integration/
[2]=http://www.opensolaris.org/os/project/ksh93-integration/downloads/2007-11-05/
[3]=ksh93s+ manual page:
http://www.opensolaris.org/os/project/ksh93-integration/docs/ksh93s/man/man1/sh/
[4]=ksh93-integration mailinglist:
http://mail.opensolaris.org/mailman/listinfo/ksh93-integration-discuss/
; please subscribe before posting (and please avoid flamewars) !!
[5]=ksh93-integration project bugzilla:
http://bugs.grommit.com/enter_bug.cgi?product=ksh93-integration
[6]=Heads-up message for "ksh93 integrated into Solaris 11/B72":
http://www.opensolaris.org/os/community/on/flag-days/pages/2007081701/
----
Bye,
Roland
--
__ . . __
(o.\ \/ /.o) roland.mainz at nrubsig.org
\__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer
/O /==\ O\ TEL +49 641 7950090
(;O/ \/ \O;)