Downloads » 2009-08-22: ksh93-integration update 2 tarballs for OpenSolaris
en

2009-08-22: ksh93-integration update 2 tarballs for OpenSolaris

These tarballs are intended to be installed over an existing OpenSolaris ≥ B110 i386 or SPARC installation and provide ksh93t_20090622_beta for testing and evaluation purposes ONLY.Please report any problems/errors/bugs/comments to the ksh93-integration project bugzilla or the ksh93-integration mailinglist (please subscribe before posting).

Install instructions:

Basic installation:
  1. Download the tarball:
    1* i386/AMD64: ksh93_integration_20090822_snapshot_i386.tar.bz2 (list files)
    1* SPARC: ksh93_integration_20090822_snapshot_sparc.tar.bz2 (list files)
  2. Verify the MD5 checksum:
    1* i386/AMD64: MD5(ksh93_integration_20090822_snapshot_i386.tar.bz2)= a0be4104332c4b4e7b2276e2c5ec5022
    1* SPARC: MD5(ksh93_integration_20090822_snapshot_sparc.tar.bz2)= 7e51d76427f2a033f721fef6a87531af
  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
  $ /usr/sfw/bin/wget http://www.opensolaris.org/os/project/ksh93-integration/downloads/ksh93_integration_20090822_snapshot_i386.tar.bz2
  $ sum -x md5 ksh93_integration_20090822_snapshot_i386.tar.bz2
  a0be4104332c4b4e7b2276e2c5ec5022 ksh93_integration_20090822_snapshot_i386.tar.bz2
  # cd /
  # sync ; sync
  # bzcat </tmp/ksh93_integration_20090822_snapshot_i386.tar.bz2 | tar -xvof -
  # sync ; sync

Example for SPARC:

  $ cd /tmp
  $ /usr/sfw/bin/wget http://www.opensolaris.org/os/project/ksh93-integration/downloads/ksh93_integration_20090822_snapshot_sparc.tar.bz2
  $ sum -x md5 ksh93_integration_20090822_snapshot_sparc.tar.bz2
  7e51d76427f2a033f721fef6a87531af ksh93_integration_20090822_snapshot_sparc.tar.bz2
  # cd /
  # sync ; sync
  # bzcat </tmp/ksh93_integration_20090822_snapshot_sparc.tar.bz2 | tar -xvof -
  # sync ; sync

[OPTIONAL] Using ksh93 as /sbin/sh:

 After installation of the tarball the following steps will replace the original Bourne shell with ksh93: Example for i386/AMD64:

 # cp /usr/bin/i86/ksh93 /sbin/ksh93
 # [[ ! -f /sbin/bsh ]] && mv /sbin/sh /sbin/bsh || rm /sbin/sh
 # mv /sbin/ksh93 /sbin/sh
 # sync ; sync

Example for SPARC:

 # cp /usr/bin/sparcv7/ksh93 /sbin/ksh93
 # [[ ! -f /sbin/bsh ]] && mv /sbin/sh /sbin/bsh || rm /sbin/sh
 # mv /sbin/ksh93 /sbin/sh
 # sync ; sync

Notes:

  • This tarball matches ksh93t+ (=ast-ksh.2009-06-22) with many many changes since the last version. Please test the binaries extensively.
  • The following commands have been updated (or added) and now include common GNU+BSD+AST features:
    /usr/bin/bg, /usr/bin/cd, /usr/bin/cksum, /usr/bin/cmp, /usr/bin/comm, /usr/bin/command, /usr/bin/cut, /usr/bin/fc, /usr/bin/fg, /usr/bin/getopts, /usr/bin/hash, /usr/bin/head, /usr/bin/jobs, /usr/bin/join, /usr/bin/kill, /usr/bin/logname, /usr/bin/mkfifo, /usr/bin/paste, /usr/bin/print, /usr/bin/read, /usr/bin/rev, /usr/bin/sleep, /usr/bin/sum, /usr/bin/tail, /usr/bin/tee, /usr/bin/test, /usr/bin/type, /usr/bin/ulimit, /usr/bin/umask, /usr/bin/unalias, /usr/bin/uniq, /usr/bin/wait, /usr/bin/wc, /usr/xpg4/bin/tail
  • The following list of bugs/RFEs will be fixed by these binaries:
BugIDTitle
4701104*tail* tail -r has limitations on un-mmappable files (/etc/mnttab)
6605478ksh93 profile shell option does not work
6705126first call to read does not honor new setting of HISTFILE
6764665*libpp* Array overrun in libpp
6765756*libast* Array overruns in libast
6769332Recursive function+command substitutions terminate shell after 257 iterations
6778077*ksh93* does not understand "THAW" as a signal for use with trap
6789247[ku1] libast/ksh93 1-digit hexfloat base conversion rounds incorrectly
6790507RFE: Update /usr/bin/tail and /usr/xpg4/bin/tail to AT&T AST "tail"
6791838*ksh93* unset of a variable which is not set should return 0
6793714RFE: Update /usr/bin/comm to AT&T AST "comm"
6793719RFE: Update /usr/bin/cut to AT&T AST "cut"
6793721RFE: Update /usr/bin/paste to AT&T AST "paste"
6793722RFE: Update /usr/bin/cmp to AT&T AST "cmp"
6793726RFE: Update /usr/bin/uniq to AT&T AST "uniq"
6793735RFE: Update /usr/bin/wc to AT&T AST "wc"
6793744RFE: Add /usr/share/doc/ksh/ for ksh93 documentation
6793747RFE: Provide "print" builtin as /usr/bin/print for external applications
6793763RFE: Update /usr/bin/ksh93 to ast-ksh.2009-05-05
6794952RFE: Enable "globstar" option in /etc/ksh.kshrc
6805792[ku1] Moving local compound var into array does not work
6805794[ku1] printf returns "invalid character constant" for $ printf "%dn" "'<euro>"
6805795[ku1] ksh93 does not differ between -0 and +0
6805797[ku1]Can't append to nodes of an array of compound vars if addressing them via nameref
6805799Indexed compound variable arrays do not work...
6805800[ku1] Declaring associative compound array does not work
6805812RFE: Update /usr/bin/head to AT&T AST "head"
6805813RFE: Update /usr/bin/join to AT&T AST "join"
6805814RFE: Update /usr/bin/mkfifo to AT&T AST "mkfifo"
6805819RFE: Update /usr/bin/tee to AT&T AST "tee"
6809663shlint missing ending newline on errors
6811916ksh93 repeatedly seg faults when "tee" builtin is interupted via <ctrl-c> in inteactive mode
6821113SUNWosdem package issues
6828644RFE: Update /usr/bin/logname to AT&T AST "logname"
6828692RFE: Update /usr/bin/cksum to AT&T AST "cksum"
6834184ksh93 gets SIGSEGV if HISTFILE is changed in place.
6834207ksh93 gets SIGSEGV on interactive function definition with HISTSIZE unset
6835835ksh93 "cat" builtin does not handle "-n" correctly
6841442Need exception list for OS/Net trees managed via Subversion
6848486"echo ${test}" with test undefined crashes the shell
6850672ksh93 (VISUAL=vi) crashes with memory fault while scolling through history
6855875typeset -X x ; print $x # does not print sufficient digits to restore value
  • The binaries now are build from a B111-based tree and require SXCR B110 or higher
  • Sources/diffs/webrevs:
    • The diffs between Solaris Nevada B111 and the current ksh93-integration tree can be obtained via...
      • ... Subversion:
        $ (mkdir svnexport_new ; cd svnexport_new ; svn export -r 1674 svn://svn.genunix.org/on/branches/ksh93/gisburn/prototype021/usr/src)
         $ (mkdir svnexport_old ; cd svnexport_old ; svn export svn://svn.genunix.org/on/tags/b111/usr/src)
         $ gdiff -r -u -N svnexport_old/src svnexport_new/src | sed 's/svnexport_new\///g;s/svnexport_old\///g' >svn_genunix_org_on_branches_ksh93_gisburn_prototype021_rev_b111_1674.diff.txt 
      • ... unified diff (2.25MB, MD5 checksum is 54fd9eba704d537531d979a0010f287d).
      • ... Mercurial/HG export bundle (212KB, MD5 checksum is 2b0577a78aa91a3cdc15705b6c6fd94e)
    • Alternatively webrev pages are available.
  • "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 ~30 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>>Project ksh93-integration.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.
  • The tarball was created using the build_ksh93_standalone_tarball.sh script which is available in the base directory of the prototype021 tree.
     Note: The script can only be used after a successfull $ cd usr/src ; (cd tools ; make install) ; 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.
  • 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 1674 svn://svn.genunix.org/on/branches/ksh93/gisburn/prototype021/usr
       $ bzcat <../download/on-closed-bins-nd.i386.tar.bz2 | tar -xf -
       $ bzcat <../download/on-closed-bins.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=prototype021;             export GATE
+# workaround for B111 build issue
+export NOT_UNDER_SCM=true
 # 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
    1. 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 #
    2. Build it (the quick way):
       $ cd prototype021/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
Tags:
Created by admin on 2009/10/26 12:15
Last modified by admin on 2009/10/26 12:15

Collectives

Project ksh93-integration Pages


XWiki Enterprise 2.7.1.34853 - Documentation