From jyri@sac.sfbay.sun.com Tue Oct 16 11:19:35 2007
Received: from sunmail3mpk.sfbay.sun.com (sunmail3mpk [129.146.11.52])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9GIJZ70011155
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 16 Oct 2007 11:19:35 -0700 (PDT)
Received: from brm-avmta-1.central.sun.com (brm-avmta-1.Central.Sun.COM [129.147.4.11])
	by sunmail3mpk.sfbay.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l9GIG7Yu016862;
	Tue, 16 Oct 2007 11:16:12 -0700 (PDT)
Received: from pmxchannel-daemon.brm-avmta-1.central.sun.com by
 brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ000C17O2ZKY00@brm-avmta-1.central.sun.com>; Tue,
 16 Oct 2007 12:16:11 -0600 (MDT)
Received: from dm-sfbay-02.sfbay.sun.com ([129.146.11.31])
 by brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ0001G9O2X5CA0@brm-avmta-1.central.sun.com>; Tue,
 16 Oct 2007 12:16:10 -0600 (MDT)
Received: from sac.sfbay.sun.com (new-sac.SFBay.Sun.COM [129.146.175.65])
	by dm-sfbay-02.sfbay.sun.com (8.13.8+Sun/8.13.8/ENSMAIL,v2.2)
 with ESMTP id l9GIG76F007734; Tue, 16 Oct 2007 11:16:07 -0700 (PDT)
Received: from sac.sfbay.sun.com (localhost [127.0.0.1])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9GIJOIa011150; Tue,
 16 Oct 2007 11:19:24 -0700 (PDT)
Received: (from jyri@localhost)	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8/Submit)
 id l9GIJOdL011146; Tue, 16 Oct 2007 11:19:24 -0700 (PDT)
Date: Tue, 16 Oct 2007 11:19:24 -0700 (PDT)
From: Jyri Virkki <jyri@sac.sfbay.sun.com>
Subject: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
To: PSARC-ext@sun.com
Cc: Chris.Zhu@sun.com, Cynthia.Hardenbrook@sun.com, Hugo.Rivero@sun.com,
        Jie.Shen@sun.com, Prashant.Srinivasan@sun.com
Message-id: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.2.0.264296
Status: RO
Content-Length: 29677


I am sponsoring this fast track for Prashant Srinivasan. Details below.
Appendix 2 is in the materials directory.


Template Version: @(#)sac_nextcase 1.64 07/13/07 SMI
This information is Copyright 2007 Sun Microsystems
1. Introduction
    1.1. Project/Component Working Name:
	 Including Ruby 1.8 with Solaris
    1.2. Name of Document Author/Supplier:
	 Author:  Prashant Srinivasan
    1.3  Date of This Document:
	16 October, 2007
4. Technical Description

Including Ruby 1.8 with Solaris

Prashant Srinivasan <Prashant.Srinivasan@Sun.COM>
15 October 2007

1.      Summary and motivation

        This project delivers Ruby into Solaris.
        Ruby, the scripting language[1], and Rails, the associated web
        application framework[2], are fast gaining popularity, and Ruby's
        inclusion into Solaris will enable it to be a more attractive
        platform for Ruby/Rails developers and deployments.

        Certain extensions[section 3] to the Ruby language, and a packaging
        program, Rubygems[5] are also included based on the necessity for
        an end user to install such programs to have a functional Ruby
        installation and to be able to add functionality in a seamless manner.

        This case seeks Micro Release Binding.

2.      Technical issues

        2.1.    Key objects.

        /usr/ruby/1.8/bin/erb
        /usr/ruby/1.8/bin/irb
        /usr/ruby/1.8/bin/rdoc
        /usr/ruby/1.8/bin/ri
        /usr/ruby/1.8/bin/ruby
        /usr/ruby/1.8/bin/testrb
        /usr/ruby/1.8/bin/gem
        /usr/ruby/1.8/bin/gem_mirror
        /usr/ruby/1.8/bin/gem_server
        /usr/ruby/1.8/bin/gemlock
        /usr/ruby/1.8/bin/gemri
        /usr/ruby/1.8/bin/gemwhich
        /usr/ruby/1.8/bin/index_gem_repository.rb
        /usr/ruby/1.8/bin/update_rubygems


        All other objects will be contained within the
        /usr/ruby/[<version>.<minor-version>] and the
        /var/ruby/<version>.<minor-version>/gems hierarchy.

        The proposed directory layouts for Ruby are:
                /usr/ruby/[<version>.<minor-version>]/
                        bin
                        include
                        lib
                        man
                        share
                        src

                /var/ruby/<version>.<minor-version>/gem_home


        /usr/ruby/[<version>.<minor-version>]/bin/<executable>
        will be linked symbolically from
        /usr/bin/<executable><version>.<minor-version>
        and from /usr/bin/<executable>.  The latter link will always point to
        the highest <version>.<minor-version> of Ruby installed on the system.

        The former will be a set of links to different Ruby major
        versions installed on the system.  This is a direct outcome of
        the versioning policy described in 2.2.

        This will also encourage the usage of the style "#!/usr/bin/env ruby"
        or "#!/usr/bin/env ruby1.8" depending on whether the programmer is
        interested in locking in to a specific <version>.<minor-version>,
        or is open to having her/his program interpreted by the most recent
        Ruby installation.

        The detailed directory and file layout for Ruby is provided in
        Appendix 2.


        2.2.    Versioning

        The Ruby development processes follow the ubiquitous
        "continuous development" model, typical of many Open Source projects.
        Currently, versions 1.8.6 patch 110 is the latest stable release.
        Ruby 1.9 is under development, slated for release in December 2007.

        Ruby 1.9 is the subversion trunk, with Ruby 1.8 forming a
        branch(ruby_1_8).  Ruby 1.8.6 and Ruby 1.8.5 are in
        maintenance mode, with 1.8.7 in development.  It is expected
        that Ruby 1.8.5 will no longer be maintained after Ruby 1.8.7
        is released.

        The versioning model for Ruby is
        <version>.<subversion>.<teeny-version>.
        This project covers the integration of Ruby 1.8 into Solaris.

        The compatibility expectations for Ruby are as follows:

        A development release is an unstable release that can have significant
        feature changes from the previous release, and can potentially break
        compatibility.

        A production release is, as the name suggests, a stable
        release, such that compatibility is largely maintained across
        minor versions.

        The absence of a point release(or the "TEENY" version field), or a
        point release of "0" serves as a development version.
        For example, 1.9(==1.9.0) is a development release,
        and development updates to the corresponding Subversion branch are
        not numbered. Once 1.9 is deemed production ready, it will be
        released as 1.9.l, which will be a production release.

        Version x.y.z is a development release iff z == 0, or z is undefined;
        The oddness/evenness of y not withstanding.
        The corollary is that version x.y.z is a production release iff z > 0.

        Version x.y.z is compatible for different values of z, such that z > 0.
        The corollary being that x.y.z is not compatible for x.p.z if
        y != p. And it is compatible only if y == p.

        Compatibility expectations for Rubygems are as follows:

        Rubygems intends to maintain compatibility across releases,
        with two exceptions:

          (1) It depends on Ruby, hence the Ruby compatibility expectations
              apply.

          (2) Interfaces (which, in this context refers to both APIs
              provided for Ruby programmers, and command line
              arguments; [8] and [9] provide examples) can be
              deprecated.  In Rubygems deprecation means that use of
              the deprecated interface results in a runtime warning.
              Deprecated interfaces will be available for at least 6
              months (that is, at least 2 minor releases) after being
              marked as such.

        Repository structure changes are not foreseen or planned.  But
        in the unlikely eventuality that they occur, the Rubygems
        community intends to develop migration tools to help end users
        move to newer versions of Rubygems.

        The notion of a development release does not exist in
        Rubygems; experimental features are released in beta versions,
        and they are removed if not found useful.  The beta tag is
        removed after the feature gains maturity, and a release is made.

        Hence any version x.y.z is suitable for inclusion with Solaris
        as long as it is not labelled "beta".

        Rubygems will be a part of the Ruby distribution.  Ruby 1.9
        onward will provide stable releases of Rubygems.


        2.3.    Packaging and Delivery

        The current proposal allows for the inclusion and coexistence
        of multiple versions of Ruby by keeping each installation under
        a version-specific subdirectory.  The package SUNWruby18u,
        and SUNWruby18r, will contain the Ruby and Rubygems interfaces.

        Rubygems[5] provides the gems package management interfaces
        to install or upgrade Ruby libraries over the internet,
        by connecting to a gem repository(using a process similar to
        Perl's CPAN architecture[6]), this will allow end users to
        easily install Rails, or other Ruby libraries.

        Individual Ruby libraries which are distributed as Gems will
        not be packaged with Solaris, and is outside the scope of this
        ARC case.  The Gem packaging system provides programmatic
        features to Ruby programs(such as the ability to specify
        library dependencies in Ruby code), and the growing trend
        among Ruby developers is to package libraries as Gems.
        Migrating Ruby Gems into their component Ruby libraries for
        Solaris packaging is not preferred, since Gem support is
        popular with the Ruby community(and is only expected to grow
        with the acceptance of Rubygems into the Ruby distribution).
        Packaging Ruby libraries which are distributed as Gems with
        Solaris, while maintaining the advantages of Gem packaging for
        Ruby users deserves more research. However the packaging of
        the Rubygems program will allow easy installation of Ruby
        libraries.

        The /var/ruby/1.8/gem_home directory is the home for Ruby libraries
        (gems) installed using Rubygems.

        This is also the home to a subset of the Rubygems
        functionality and documentation.  This, as well as other
        libraries which an user may install, by using the Rubygems
        program, are open to modification on a per zone basis, and
        hence are located in the /var hierarchy.

        Upgrades to the Ruby platform, when available will require
        upgrading the SUNWruby[version] usr and root packages.  It is
        expected that users will have different major versions of the
        package installed, since releases are not guaranteed to be
        compatible across them.  Newer minor versions of the Ruby
        interfaces will upgrade the existing interfaces, since these
        will be compatible.


3.      Ruby Extensions and Gems.

        Ruby supports a loadable module interface(known in Ruby
        parlance as "Extensions"), allowing the Ruby runtime to
        communicate with, and bind to, external interfaces.
        Extensions are implemented using a C interface.  Extensions
        have an associated dynamically loadable shared object(*.so),
        and quite often two, since the extension itself usually loads
        another shared object.  Gems[5] are Ruby libraries that are
        installed using the "gem" interface such that they are located
        in the default search path of the Ruby runtime.  Some Ruby
        gems also include native extensions(Mongrel[7] is an example).


        3.1.    Included Ruby Extensions.

        The initial integration will provide the following, a select subset
        of the extant Ruby extensions.


               readline    [command line support for Ruby and Rails]
               openssl     [HTTPS support]
               readline    [command line input processing for Ruby and Rails]
               tk          [to support the TK toolkit]
               curses      [terminal control library]
               openssl     [HTTPS support]

        Additional extensions can be delivered subsequent to the initial
        integration, depending on user community and customer requests.

4.      Ruby Internationalization.

        Ruby offers the ability to use different character sets based
        on the value of a global variable, $KCODE.  It does not have
        built in features for message localization.

5.      Ruby Documentation.

        Ruby is well documented[3].  The API documentation and a man
        page, a subset of the comprehensive documentation available on
        the internet, are available with the Ruby installation by
        invoking "ri".

        5.1.    Manual Pages.

        Ruby provides a man page, which will be delivered in the man directory
        [/usr/ruby/[<version>.<subversion>/man]. The contents of this
        man page, modified appropriately for Solaris, is provided in
        Appendix 1.

        A symbolic link will be created from the standard Solaris man page
        location(/usr/share/man/man1/ruby.1) to
        /usr/ruby/[<version>.<subversion>]/man1/ruby.1.

6.      Interfaces

        6.1.    Imported Interfaces.

        NAME                            STABILITY               NOTES

        OpenSSL [Secure Sockets Layer]  External/Volatile   PSARC/2003/500
        Curses [CRT screen handling]    Stable              ASARC 1992/040
        Readline (statically linked)    Uncommitted         PSARC 2007/188
        Tcl/Tk                          Uncommitted         PSARC 2007/317


        6.2.    Exported Interfaces.

        NAME                                 STABILITY               NOTES

        SUNWruby18u                         Uncommitted           Package Name
        SUNWruby18r                         Uncommitted           Package Name
        Ruby Language interfaces            Uncommitted    Language Interfaces

        /usr/ruby/[version]/bin
                    erb                     Uncommitted             Executable
                    gem                     Uncommitted             Executable
                    gem_mirror              Uncommitted             Executable
                    gem_server              Uncommitted             Executable
                    gemlock                 Uncommitted             Executable
                    gemri                   Uncommitted             Executable
                    gemwhich                Uncommitted             Executable
                    index_gem_repository.rb Uncommitted             Executable
                    irb                     Uncommitted             Executable
                    rdoc                    Uncommitted             Executable
                    ri                      Uncommitted             Executable
                    ruby                    Uncommitted             Executable
                    testrb                  Uncommitted             Executable
                    update_rubygems         Uncommitted             Executable

        /usr/ruby/[version]/man1/ruby.1     Uncommitted             Man page

        /usr/bin/erb                        Volatile             Symbolic link
        /usr/bin/gem                        Volatile             Symbolic link
        /usr/bin/gem_mirror                 Volatile             Symbolic link
        /usr/bin/gem_server                 Volatile             Symbolic link
        /usr/bin/gemlock                    Volatile             Symbolic link
        /usr/bin/gemri                      Volatile             Symbolic link
        /usr/bin/gemwhich                   Volatile             Symbolic link
        /usr/bin/index_gem_repository.rb    Volatile             Symbolic link
        /usr/bin/irb                        Volatile             Symbolic link
        /usr/bin/rdoc                       Volatile             Symbolic link
        /usr/bin/ri                         Volatile             Symbolic link
        /usr/bin/ruby                       Volatile             Symbolic link
        /usr/bin/testrb                     Volatile             Symbolic link
        /usr/bin/update_rubygems            Volatile             Symbolic link
        /usr/share/man/man1/ruby.1          Volatile             Symbolic link

        /usr/bin/erb1.8                     Uncommitted          Symbolic link
        /usr/bin/gem1.8                     Uncommitted          Symbolic link
        /usr/bin/gem_mirror1.8              Uncommitted          Symbolic link
        /usr/bin/gem_server1.8              Uncommitted          Symbolic link
        /usr/bin/gemlock1.8                 Uncommitted          Symbolic link
        /usr/bin/gemri1.8                   Uncommitted          Symbolic link
        /usr/bin/gemwhich1.8                Uncommitted          Symbolic link
        /usr/bin/index_gem_repository.rb1.8 Uncommitted          Symbolic link
        /usr/bin/irb1.8                     Uncommitted          Symbolic link
        /usr/bin/rdoc1.8                    Uncommitted          Symbolic link
        /usr/bin/ri1.8                      Uncommitted          Symbolic link
        /usr/bin/ruby1.8                    Uncommitted          Symbolic link
        /usr/bin/testrb1.8                  Uncommitted          Symbolic link
        /usr/bin/update_rubygems1.8         Uncommitted          Symbolic link


      Extensions and Libraries

          NAME         STABILITY               NOTES

        readline      Uncommitted      Library to process command line input.
        Tk            Uncommitted      Extension to support the TK toolkit
        curses        Uncommitted      The terminal control library
        openssl       Uncommitted      HTTPS support



7.      References.

     [1]    http://www.ruby-lang.org/
     [2]    http://www.rubyonrails.org/
     [3]    http://ruby-doc.org
     [4]    http://api.rubyonrails.org
     [5]    http://www.rubygems.org/
     [6]    http://www.cpan.org/
     [7]    http://mongrel.rubyforge.org/
     [8]    http://blog.segment7.net/articles/2007/10/08/time-today-going-away
     [9]    http://blog.segment7.net/articles/2007/10/13/rubygems-beta-0-9-4-5




Appendix 1: Ruby man page:

UNIX                                                      RUBY(1)

NAME
     ruby - Interpreted object-oriented scripting language

SYNOPSIS
     ruby [--copyright]  [--version]  [-Sacdlnpswvy]  [-0[octal]]
     [-C   directory]   [-F   pattern]   [-I  directory]  [-K  c]
     [-T[level]]  [-e  command]  [-i[extension]]   [-r   library]
     [-x[directory]] [--] [program_file] [argument ...]

DESCRIPTION
     Ruby is an interpreted scripting language for quick and easy
     object-oriented  programming.   It has many features to pro-
     cess text files and to do system  management  tasks  (as  in
     Perl).  It is simple, straight-forward, and extensible.

     If you want a language for easy object-oriented programming,
     or you don't like the Perl ugliness, or you do like the con-
     cept of LISP, but don't like too much parentheses, Ruby  may
     be the language of your choice.


FILES
     Ruby 1.8 is integrated with Solaris.

     The following files specify the installation  locations  for
     Ruby:

     /var/ruby/1.8/gem_home  Contains the Rubygems repository.
                             Configure the GEM_HOME environment
                             variable to point to
                             /var/ruby/1.8/gem_home to use the
                             this installation of Rubygems.

     /usr/ruby/1.8/bin       Contains  the  Ruby  executable  as
                             well as other utility programs, and
                             Rubygems programs.
                             These programs are linked from
                             /usr/bin. For example:
                             /usr/ruby/1.8/bin/ruby is linked
                             from /usr/bin/ruby1.8, and may be
                             linked from /usr/bin/ruby if 1.8 is
                             the latest version of Ruby installed
                             on this system.



FEATURES
     Ruby's features are as follows:

     Interpretive
          Ruby is an interpreted language, so you don't  have  to
          recompile programs written in Ruby to execute them.

     Variables have no type (dynamic typing)
          Variables in Ruby can contain data of  any  type.   You
          don't  have  to  worry  about  variable typing.  Conse-
          quently, it has a weaker compile time check.

     No declaration needed
          You can use variables in your Ruby programs without any
          declarations.    Variable  names  denote  their  scope,
          local, global, instance, etc.

     Simple syntax
          Ruby has a simple syntax influenced slightly from  Eif-
          fel.

     No user-level memory management
          Ruby  has  automatic  memory  management.   Objects  no
          longer  referenced from anywhere are automatically col-
          lected by the garbage collector built into  the  inter-
          preter.

December 3Last0change: Ruby Programmers Reference Guide         1

UNIX                                                      RUBY(1)

     Everything is an object
          Ruby is the purely object-oriented language, and was so
          since  its  creation.  Even such basic data as integers
          are seen as objects.

     Class, inheritance, and methods
          Of course, as an  object-oriented  language,  Ruby  has
          such  basic  features  like  classes,  inheritance, and
          methods.

     Singleton methods
          Ruby has the ability  to  define  methods  for  certain
          objects.   For  example,  you can define a press-button
          action for  certain  widget  by  defining  a  singleton
          method  for  the  button.  Or, you can make up your own
          prototype based object system using singleton  methods,
          if you want to.

     Mix-in by modules
          Ruby intentionally does not have the  multiple  inheri-
          tance  as  it  is a source of confusion.  Instead, Ruby
          has the ability to  share  implementations  across  the
          inheritance tree.  This is often called `Mix-in'.

     Iterators
          Ruby has iterators for loop abstraction.

     Closures
          In Ruby, you can objectify the procedure.

     Text processing and regular expression
          Ruby has a bunch of text processing  features  like  in
          Perl.

     Bignums
          With built-in bignums, you can  for  example  calculate
          factorial(400).

     Exception handling
          As in Java(tm).

     Direct access to the OS
          Ruby can use most UNIX  system  calls,  often  used  in

December 3Last0change: Ruby Programmers Reference Guide         2

UNIX                                                      RUBY(1)

          system programming.

     Dynamic loading
          On most UNIX systems, you can load  object  files  into
          the Ruby interpreter on-the-fly.

OPTIONS
     Ruby  interpreter  accepts  following  command-line  options
     (switches).  They are quite similar to those of perl(1).

     --copyright
          Prints the copyright notice.

     --version
          Prints the version of Ruby interpreter.

     -0[octal]
          (The  digit  ``zero''.)   Specifies  the  input  record
          separator  ("$/")  as  an  octal number. If no digit is
          given, the null character is taken  as  the  separator.
          Other  switches  may follow the digits.  -00 turns Ruby
          into paragraph mode.  -0777 makes Ruby read whole  file
          at  once  as  a  single  string since there is no legal
          character with that value.

     -C directory
          Causes Ruby to switch to the directory.

     -F pattern
          Specifies input field separator ("$;").

     -I directory
          Used to tell Ruby where to load  the  library  scripts.
          Directory  path will be added to the load-path variable
          ("$:").

     -K kcode
          Specifies KANJI (Japanese) encoding.

     -S   Makes Ruby use the PATH environment variable to  search
          for  script,  unless  if  its name begins with a slash.
          This is used to emulate  #!   on  machines  that  don't

December 3Last0change: Ruby Programmers Reference Guide         3

UNIX                                                      RUBY(1)

          support it, in the following manner:

          #! /usr/bin/ruby
          # This line makes the next one a comment in Ruby \
            exec /usr/bin/ruby -S $0 $*

     -T[level]
          Turns on taint checks at the specified  level  (default
          1).

     -a   Turns on auto-split mode when used with -n or  -p.   In
          auto-split mode, Ruby executes
            $F = $_.split
          at beginning of each loop.

     -c   Causes Ruby to check the syntax of the script and  exit
          without  executing. If there are no syntax errors, Ruby
          will print ``Syntax OK'' to the standard output.

     -d

     --debug
          Turns on debug mode.  "$DEBUG" will be set to true.

     -e command
          Specifies script from command-line while  telling  Ruby
          not  to  search the rest of arguments for a script file
          name.

     -h

     --help
          Prints a summary of the options.

     -i extension
          Specifies in-place-edit mode.  The extension, if speci-
          fied,  is added to old file name to make a backup copy.
          For example:

          % echo matz > /tmp/junk
          % cat /tmp/junk
          matz
          % ruby -p -i.bak -e '$_.upcase!' /tmp/junk
          % cat /tmp/junk
          MATZ

December 3Last0change: Ruby Programmers Reference Guide         4

UNIX                                                      RUBY(1)

          % cat /tmp/junk.bak
          matz

     -l   (The  lowercase  letter  ``ell''.)   Enables  automatic
          line-ending processing, which means to firstly set "$\"
          to the value of "$/", and  secondly  chops  every  line
          read using chop!.

     -n   Causes Ruby to assume the following  loop  around  your
          script, which makes it iterate over file name arguments
          somewhat like sed -n or awk.

          while gets
            ...
          end

     -p   Acts mostly same as -n switch, but print the  value  of
          variable  "$_"  at the each end of the loop.  For exam-
          ple:

          % echo matz | ruby -p -e '$_.tr! "a-z", "A-Z"'
          MATZ

     -r library
          Causes Ruby to load the library using require.   It  is
          useful when using -n or -p.

     -s   Enables some switch parsing for switches  after  script
          name  but  before  any file name arguments (or before a
          --).  Any switches found there are  removed  from  ARGV
          and  set the corresponding variable in the script.  For
          example:

          #! /usr/bin/ruby -s
          # prints "true" if invoked with `-xyz' switch.
          print "true\n" if $xyz

          On some systems "$0" does not always contain  the  full
          pathname,  so  you  need  the -S switch to tell Ruby to
          search for the script if necessary.  To handle embedded
          spaces  or such.  A better construct than "$*" would be
          ${1+"$@"}, but it does not work if the script is  being
          interpreted by csh(1).

     -v

December 3Last0change: Ruby Programmers Reference Guide         5

UNIX                                                      RUBY(1)

     --verbose
          Enables verbose mode.  Ruby will print its  version  at
          the beginning, and set the variable "$VERBOSE" to true.
          Some methods print extra messages if this  variable  is
          true.   If  this switch is given, and no other switches
          are present, Ruby quits after printing its version.

     -w   Enables verbose mode without printing  version  message
          at  the  beginning.  It sets the "$VERBOSE" variable to
          true.

     -x[directory]
          Tells Ruby that the script is embedded  in  a  message.
          Leading  garbage will be discarded until the first that
          starts with ``#!''  and contains the string,  ``ruby''.
          Any meaningful switches on that line will applied.  The
          end of script must be specified with either  EOF,  "^D"
          ("control-D"),  "^Z"  ("control-Z"),  or  reserved word
          __END__.  If the directory name is specified, Ruby will
          switch to that directory before executing script.

     -y

     --yydebug
          Turns on compiler debug mode.  Ruby will print a  bunch
          of  internal  state  messages during compiling scripts.
          You don't have to specify this switch, unless  you  are
          going to debug the Ruby interpreter.

ENVIRONMENT
     RUBYLIB
          A colon-separated list of directories that are added to
          Ruby's  library load path ("$:"). Directories from this
          environment variable are searched before  the  standard
          load path is searched.

          e.g.:
            RUBYLIB="$HOME/lib/ruby:$HOME/lib/rubyext"

     RUBYOPT
          Additional Ruby options.

          e.g.
            RUBYOPT="-w -Ke"

     RUBYPATH

December 3Last0change: Ruby Programmers Reference Guide         6

UNIX                                                      RUBY(1)

          A  colon-separated  list  of  directories   that   Ruby
          searches  for  Ruby programs when the -S flag is speci-
          fied.  This  variable  precedes  the  PATH  environment
          variable.

     RUBYSHELL
          The path to the system shell command.  This environment
          variable is enabled for only mswin32, mingw32, and OS/2
          platforms.  If  this  variable  is  not  defined,  Ruby
          refers to COMSPEC.

     PATH Ruby refers to the PATH environment variable on calling
          Kernel#system.

     RUBYLIB_PREFIX
          This variable is obsolete.

ATTRIBUTES

    See attributes(5) for descriptions of the  following  attri-

    butes:


    ____________________________________________________________
   |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
   |_____________________________|_____________________________|
   | Availability                | SUNWruby18r                 |
   |_____________________________|_____________________________|
   |                             | SUNWruby18u                 |
   |_____________________________|_____________________________|
   | Interface Stability         | Uncommitted                 |
   |_____________________________|_____________________________|



NOTES

    Source for Ruby is available on http://opensolaris.org.

AUTHORS
     Ruby is  designed  and  implemented  by  Yukihiro  Matsumoto
     <matz@netlab.jp>.



6. Resources and Schedule
    6.4. Steering Committee requested information
   	6.4.1. Consolidation C-team Name:
		sfw
    6.5. ARC review type: FastTrack
    6.6. ARC Exposure: open


From gdamore@sun.com Tue Oct 16 11:44:08 2007
Received: from sunmail4.Singapore.Sun.COM (sunmail4.Singapore.Sun.COM [129.158.71.19])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9GIi7mb011887
	for <psarc-ext@sac.sfbay.Sun.COM>; Tue, 16 Oct 2007 11:44:08 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail4.Singapore.Sun.COM (8.13.4+Sun/8.13.3/ENSMAIL,v2.2) with ESMTP id l9GIeVtQ007426
	for <@sunmail2sca.sfbay.sun.com:PSARC-ext@sun.com>; Wed, 17 Oct 2007 02:40:46 +0800 (SGT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ00001ZP7W1M00@nwk-avmta-2.sfbay.sun.com> for PSARC-ext@sun.com
 (ORCPT PSARC-ext@sun.com); Tue, 16 Oct 2007 11:40:45 -0700 (PDT)
Received: from sca-es-mail-2.sun.com ([192.18.43.133])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ000CNUP7NQ6E0@nwk-avmta-2.sfbay.sun.com> for
 PSARC-ext@sun.com (ORCPT PSARC-ext@sun.com); Tue,
 16 Oct 2007 11:40:35 -0700 (PDT)
Received: from fe-sfbay-10.sun.com ([192.18.43.129])
	by sca-es-mail-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id l9GIeZNW022879	for
 <PSARC-ext@sun.com>; Tue, 16 Oct 2007 11:40:35 -0700 (PDT)
Received: from conversion-daemon.fe-sfbay-10.sun.com by fe-sfbay-10.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 id <0JQ000701OHVNT00@fe-sfbay-10.sun.com> (original mail from gdamore@sun.com)
 for PSARC-ext@sun.com (ORCPT PSARC-ext@sun.com); Tue,
 16 Oct 2007 11:40:35 -0700 (PDT)
Received: from [192.168.251.11] ([76.174.83.55])
 by fe-sfbay-10.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb
 28 2007)) with ESMTPSA id <0JQ0009JFP7MB5H0@fe-sfbay-10.sun.com>; Tue,
 16 Oct 2007 11:40:34 -0700 (PDT)
Date: Tue, 16 Oct 2007 11:37:53 -0700
From: "Garrett D'Amore" <gdamore@sun.com>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
Sender: Garrett.Damore@sun.com
To: Jyri Virkki <jyri@sac.sfbay.sun.com>
Cc: psarc-ext@sun.com, chris.zhu@sun.com, Cynthia.Hardenbrook@sun.com,
        Hugo.Rivero@sun.com, Jie.Shen@sun.com, Prashant.Srinivasan@sun.com
Message-id: <47150501.2040704@sun.com>
MIME-version: 1.0
Content-type: text/plain; format=flowed; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.2.0.264296
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
User-Agent: Thunderbird 2.0.0.4 (X11/20070827)
Status: RO
Content-Length: 914

My only thought here is that the man page has a disparaging comment 
about Perl in the introduction.

While I do not necessarily disagree with the statement, I'm not sure it 
is one that we'd normally like to make in documentation we ship; 
especially given that we also ship Perl.

Can we remove that particular phrase, or perhaps alter it to say 
something about "improved readability compared to other scripting 
languages" or somesuch?  (Actually, the whole paragraph describing Ruby 
probably could be removed.  I don't think man pages are usually the best 
place to evangelize a program. :-)

    -- Garrett

PS: Here's the comment to which I refer:

>
>
>      If you want a language for easy object-oriented programming,
>      or you don't like the Perl ugliness, or you do like the con-
>      cept of LISP, but don't like too much parentheses, Ruby  may
>      be the language of your choice.
>
>
>   


From binarycrusader@gmail.com Tue Oct 16 11:55:15 2007
Received: from sunmail2sca.sfbay.sun.com (sunmail2sca [129.145.155.234])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9GItF1Z012420
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 16 Oct 2007 11:55:15 -0700 (PDT)
Received: from brm-avmta-1.central.sun.com (brm-avmta-1.Central.Sun.COM [129.147.4.11])
	by sunmail2sca.sfbay.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l9GIpnUv018190
	for <@sunmail2sca.sfbay.sun.com:psarc-ext@sun.com>; Tue, 16 Oct 2007 11:51:54 -0700 (PDT)
Received: from pmxchannel-daemon.brm-avmta-1.central.sun.com by
 brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ000E2HPQIWG00@brm-avmta-1.central.sun.com> for psarc-ext@sun.com
 (ORCPT psarc-ext@sun.com); Tue, 16 Oct 2007 12:51:54 -0600 (MDT)
Received: from brmea-mail-4.sun.com ([192.18.98.36])
 by brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ0001WBPQB59B0@brm-avmta-1.central.sun.com> for
 psarc-ext@sun.com (ORCPT psarc-ext@sun.com); Tue,
 16 Oct 2007 12:51:47 -0600 (MDT)
Received: from relay42i.sun.com ([192.5.209.72])
	by brmea-mail-4.sun.com (8.13.6+Sun/8.12.9) with ESMTP id l9GInJ4e006511	for
 <psarc-ext@sun.com>; Tue, 16 Oct 2007 18:51:47 +0000 (GMT)
Received: from mms48es.sun.com ([160.41.221.231] [160.41.221.231])
 by relay42i.sun.com with ESMTP id BT-MMP-414210 for psarc-ext@sun.com; Tue,
 16 Oct 2007 18:51:47 +0000 (Z)
Received: from relay44i.sun.com ([192.5.209.118] [192.5.209.118])
 by mms48es.sun.com with ESMTP id BT-MMP-2356378 for psarc-ext@sun.com; Tue,
 16 Oct 2007 18:51:46 +0000 (Z)
Received: from rv-out-0910.google.com ([209.85.198.187] [209.85.198.187])
 by relay4i.sun.com with ESMTP id BT-MMP-7037532 for psarc-ext@sun.com; Tue,
 16 Oct 2007 18:51:46 +0000 (Z)
Received: by rv-out-0910.google.com with SMTP id c27so1448084rvf for
 <psarc-ext@sun.com>; Tue, 16 Oct 2007 11:51:46 -0700 (PDT)
Received: by 10.141.21.19 with SMTP id y19mr3646802rvi.1192560706157; Tue,
 16 Oct 2007 11:51:46 -0700 (PDT)
Received: by 10.140.148.5 with HTTP; Tue, 16 Oct 2007 11:51:46 -0700 (PDT)
Date: Tue, 16 Oct 2007 13:51:46 -0500
From: Shawn Walker <swalker@opensolaris.org>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <47150501.2040704@sun.com>
Sender: binarycrusader@gmail.com
To: "Garrett D'Amore" <gdamore@sun.com>
Cc: Jyri Virkki <jyri@sac.sfbay.sun.com>, chris.zhu@sun.com,
        Cynthia.Hardenbrook@sun.com, Prashant.Srinivasan@sun.com,
        psarc-ext@sun.com, Hugo.Rivero@sun.com, Jie.Shen@sun.com
Message-id: <b9c544f0710161151l5c77761ek390b4eb8044c9af9@mail.gmail.com>
MIME-version: 1.0
Content-type: text/plain; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
Content-disposition: inline
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;        d=gmail.com;
 s=beta;
 h=domainkey-signature:received:received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth;
        bh=TG6WHKhqCP+Vi3jV7l+lMqgaZIuz27LWk8Y2c1HyhDE=;
 b=BTwqJLIUePrzMLuWQh8YfxrmsSyuIn8c3H4qkDoBt5ts1vOcvknycTlaGH7lEXBXWpqRFxvszOBysHRzW/Qmslh9cZqOvXyXlM5Wj0wP60rqbzRAUH2cQG/NYhfG+gBZQllq/8JoV4MCl6lQz+8XHMRW08DV/RQJg/7XJohBAtk=
DomainKey-Signature: a=rsa-sha1; c=nofws;        d=gmail.com; s=beta;
 h=received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth;
 b=fUo5i/x/MEMO+kuTv3ITHMkC9RHtkVwMYX1HlTstM4vj76P8BEwFvUt41NaoxhadFEvgw1nr2SCbyVEwkBmO6LzG3pWNzn4FNO0ygTnm/zwAIQ35GV+D094R3fCfJhD7I/ss4Tt5BoQjOyrdoKwKvIchPiTd7BqMfGw2SFPK1OE=
X-PMX-Version: 5.2.0.264296
X-Brightmail-Tracker: AAAAAA==
X-Google-Sender-Auth: 01190d801f56edf6
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
 <47150501.2040704@sun.com>
Status: RO
Content-Length: 1433

+1, Developers should be responsible and avoid un-constructive
criticism in their documentation.

On 16/10/2007, Garrett D'Amore <gdamore@sun.com> wrote:
> My only thought here is that the man page has a disparaging comment
> about Perl in the introduction.
>
> While I do not necessarily disagree with the statement, I'm not sure it
> is one that we'd normally like to make in documentation we ship;
> especially given that we also ship Perl.
>
> Can we remove that particular phrase, or perhaps alter it to say
> something about "improved readability compared to other scripting
> languages" or somesuch?  (Actually, the whole paragraph describing Ruby
> probably could be removed.  I don't think man pages are usually the best
> place to evangelize a program. :-)
>
>     -- Garrett
>
> PS: Here's the comment to which I refer:
>
> >
> >
> >      If you want a language for easy object-oriented programming,
> >      or you don't like the Perl ugliness, or you do like the con-
> >      cept of LISP, but don't like too much parentheses, Ruby  may
> >      be the language of your choice.
> >
> >
> >
>
> _______________________________________________
> opensolaris-arc mailing list
> opensolaris-arc@opensolaris.org
>


-- 
Shawn Walker, Software and Systems Analyst
binarycrusader@gmail.com - http://binarycrusader.blogspot.com/

"Beware of bugs in the above code; I have only proved it correct, not
tried it. " --Donald Knuth

From Peter.Schow@sun.com Tue Oct 16 15:48:42 2007
Received: from sunmail5.uk.sun.com (sunmail5.UK.Sun.COM [129.156.85.165])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9GMmfxt021958
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 16 Oct 2007 15:48:41 -0700 (PDT)
Received: from nwk-avmta-1.SFBay.Sun.COM (nwk-avmta-1.SFBay.Sun.COM [129.146.11.74])
	by sunmail5.uk.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l9GMinh6015987;
	Tue, 16 Oct 2007 23:45:18 +0100 (BST)
Received: from pmxchannel-daemon.nwk-avmta-1.sfbay.Sun.COM by
 nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ1006030JHJP00@nwk-avmta-1.sfbay.Sun.COM>; Tue,
 16 Oct 2007 15:45:17 -0700 (PDT)
Received: from dm-central-01.central.sun.com ([129.147.62.4])
 by nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ1000MP0JGJB30@nwk-avmta-1.sfbay.Sun.COM>; Tue,
 16 Oct 2007 15:45:16 -0700 (PDT)
Received: from wakulla (wakulla.Central.Sun.COM [129.147.49.230])
	by dm-central-01.central.sun.com (8.13.8+Sun/8.13.8/ENSMAIL,v2.2)
 with SMTP id l9GMjAhv026008; Tue, 16 Oct 2007 16:45:10 -0600 (MDT)
Received: by wakulla (sSMTP sendmail emulation); Tue, 16 Oct 2007 16:45:14 -0600
Date: Tue, 16 Oct 2007 16:45:13 -0600
From: Peter Schow <Peter.Schow@sun.com>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
To: Jyri Virkki <jyri@sac.sfbay.sun.com>
Cc: PSARC-ext@sun.com, Chris.Zhu@sun.com, Cynthia.Hardenbrook@sun.com,
        Hugo.Rivero@sun.com, Jie.Shen@sun.com, Prashant.Srinivasan@sun.com
Message-id: <20071016224513.GA26634@wakulla.Central.Sun.COM>
Organization: Sun Microsystems
MIME-version: 1.0
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Content-disposition: inline
X-PMX-Version: 5.2.0.264296
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
User-Agent: Mutt/1.5.12-2006-07-14
Status: RO
Content-Length: 1152

On Tue, Oct 16, 2007 at 11:19:24AM -0700, Jyri Virkki wrote:
> 
> I am sponsoring this fast track for Prashant Srinivasan. Details below.
> Appendix 2 is in the materials directory.
> 
> 
> Template Version: @(#)sac_nextcase 1.64 07/13/07 SMI
> This information is Copyright 2007 Sun Microsystems
> 1. Introduction
>     1.1. Project/Component Working Name:
> 	 Including Ruby 1.8 with Solaris
>     1.2. Name of Document Author/Supplier:
> 	 Author:  Prashant Srinivasan
>     1.3  Date of This Document:
> 	16 October, 2007
> 4. Technical Description
> 
> Including Ruby 1.8 with Solaris

Good stuff.

1. Who gets to write to the /var/ruby directory, where the gems
   are maintained?  The Ruby development model is tailored to the
   individual downloading of gems, as they are needed.  On a multi-user
   system, this type of updating in a common directory might be 
   a problem.

2. A bundled in Postgres extension would be be ideal, providing
   the worthwhile linkage to the bundled Postgres database on
   Solaris.

3. Any interoperability issues with a Studio-compiled /usr/bin/ruby 
   and gems grabbed from the net that are built with gcc?

From binarycrusader@gmail.com Tue Oct 16 16:49:49 2007
Received: from sunmail4.Singapore.Sun.COM (sunmail4.Singapore.Sun.COM [129.158.71.19])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9GNnm1X023531
	for <psarc-ext@sac.sfbay.Sun.COM>; Tue, 16 Oct 2007 16:49:49 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail4.Singapore.Sun.COM (8.13.4+Sun/8.13.3/ENSMAIL,v2.2) with ESMTP id l9GNkQ6x019217
	for <@sunmail2sca.sfbay.sun.com:PSARC-ext@sun.com>; Wed, 17 Oct 2007 07:46:27 +0800 (SGT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ100H033DDZT00@nwk-avmta-2.sfbay.sun.com> for PSARC-ext@sun.com
 (ORCPT PSARC-ext@sun.com); Tue, 16 Oct 2007 16:46:25 -0700 (PDT)
Received: from sca-ea-mail-3.sun.com ([192.18.43.21])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ100E8Y3DDES50@nwk-avmta-2.sfbay.sun.com> for
 PSARC-ext@sun.com (ORCPT PSARC-ext@sun.com); Tue,
 16 Oct 2007 16:46:25 -0700 (PDT)
Received: from relay41i.sun.com ([192.5.209.70])
	by sca-ea-mail-3.sun.com (8.13.6+Sun/8.12.9) with ESMTP id l9GNgoV3012557	for
 <PSARC-ext@sun.com>; Tue, 16 Oct 2007 23:46:24 +0000 (GMT)
Received: from mms48es.sun.com ([160.41.221.231] [160.41.221.231])
 by relay41i.sun.com with ESMTP id BT-MMP-192697 for PSARC-ext@sun.com; Tue,
 16 Oct 2007 23:46:24 +0000 (Z)
Received: from relay44i.sun.com ([192.5.209.118] [192.5.209.118])
 by mms48es.sun.com with ESMTP id BT-MMP-2828975 for PSARC-ext@sun.com; Tue,
 16 Oct 2007 23:46:24 +0000 (Z)
Received: from rv-out-0910.google.com ([209.85.198.185] [209.85.198.185])
 by relay4i.sun.com with ESMTP id BT-MMP-7266669 for PSARC-ext@sun.com; Tue,
 16 Oct 2007 23:46:24 +0000 (Z)
Received: by rv-out-0910.google.com with SMTP id c27so1509043rvf for
 <PSARC-ext@sun.com>; Tue, 16 Oct 2007 16:46:23 -0700 (PDT)
Received: by 10.141.87.13 with SMTP id p13mr3868890rvl.1192578383738; Tue,
 16 Oct 2007 16:46:23 -0700 (PDT)
Received: by 10.140.148.5 with HTTP; Tue, 16 Oct 2007 16:46:23 -0700 (PDT)
Date: Tue, 16 Oct 2007 18:46:23 -0500
From: Shawn Walker <swalker@opensolaris.org>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <20071016224513.GA26634@wakulla.Central.Sun.COM>
Sender: binarycrusader@gmail.com
To: Peter Schow <Peter.Schow@sun.com>
Cc: Jyri Virkki <jyri@sac.sfbay.sun.com>, Chris.Zhu@sun.com,
        Cynthia.Hardenbrook@sun.com, Prashant.Srinivasan@sun.com,
        PSARC-ext@sun.com, Hugo.Rivero@sun.com, Jie.Shen@sun.com
Message-id: <b9c544f0710161646x50e133a8q76ab46ffabde4893@mail.gmail.com>
MIME-version: 1.0
Content-type: text/plain; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
Content-disposition: inline
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;        d=gmail.com;
 s=beta;
 h=domainkey-signature:received:received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth;
        bh=AhGlqKcuphXlqtphschoL2d76qM21PCr4jKWqlwr/M8=;
 b=Qj3bmHO8SNAMeK0W3Xb+dzxBxmFEgxynr9ka7ymO/bDa9lb8IIVhp1zN3Q+IoWXhxXhGXlIfwf+Qcq4BZFvS3pe63S1YnuyxFKYxoPHEVOFcBmYZBXOs3ZfLffPNlbP8XU7+u48EYmBLKW9Dq2vY5x0hxDGfT5OnsJN8DAjg7Ig=
DomainKey-Signature: a=rsa-sha1; c=nofws;        d=gmail.com; s=beta;
 h=received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth;
 b=uVOzPJ5juARa2xu6/Yf9YJwS1BAtuMGAZ8+SPO2kV55dkCTSKKUM0kDGw5RtWMEDOceHuQ04rKvv11eomJLvg4byTweSAfUh//NKorCNyygU2Fx4rZpjOgO1aHFlaVEg2RYK6y84O2gNuUMD8tIkgVGWW+mkamhiGeTh5PHVjxk=
X-PMX-Version: 5.2.0.264296
X-Brightmail-Tracker: AAAAAA==
X-Google-Sender-Auth: f6e630c300ea9686
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
 <20071016224513.GA26634@wakulla.Central.Sun.COM>
Status: RO
Content-Length: 1387

On 16/10/2007, Peter Schow <Peter.Schow@sun.com> wrote:
> On Tue, Oct 16, 2007 at 11:19:24AM -0700, Jyri Virkki wrote:
> >
> > I am sponsoring this fast track for Prashant Srinivasan. Details below.
> > Appendix 2 is in the materials directory.
> >
> >
> > Template Version: @(#)sac_nextcase 1.64 07/13/07 SMI
> > This information is Copyright 2007 Sun Microsystems
> > 1. Introduction
> >     1.1. Project/Component Working Name:
> >        Including Ruby 1.8 with Solaris
> >     1.2. Name of Document Author/Supplier:
> >        Author:  Prashant Srinivasan
> >     1.3  Date of This Document:
> >       16 October, 2007
> > 4. Technical Description
> >
> > Including Ruby 1.8 with Solaris
>
> Good stuff.
>
> 1. Who gets to write to the /var/ruby directory, where the gems
>    are maintained?  The Ruby development model is tailored to the
>    individual downloading of gems, as they are needed.  On a multi-user
>    system, this type of updating in a common directory might be
>    a problem.

I would assume that they would install them into their home directory instead:

http://www.rubygems.org/read/chapter/3

(Note that I'm not speaking for the thread originator).

-- 
Shawn Walker, Software and Systems Analyst
binarycrusader@gmail.com - http://binarycrusader.blogspot.com/

"Beware of bugs in the above code; I have only proved it correct, not
tried it. " --Donald Knuth

From Prashant.Srinivasan@Sun.COM Tue Oct 16 18:07:27 2007
Received: from sunmail2sca.sfbay.sun.com (sunmail2sca [129.145.155.234])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9H17RBJ025325
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 16 Oct 2007 18:07:27 -0700 (PDT)
Received: from brm-avmta-1.central.sun.com (brm-avmta-1.Central.Sun.COM [129.147.4.11])
	by sunmail2sca.sfbay.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l9H146sb010415
	for <@sunmail2sca.sfbay.sun.com:psarc-ext@sun.com>; Tue, 16 Oct 2007 18:04:06 -0700 (PDT)
Received: from pmxchannel-daemon.brm-avmta-1.central.sun.com by
 brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ100H0J6YTQQ00@brm-avmta-1.central.sun.com> for psarc-ext@sun.com
 (ORCPT psarc-ext@sun.com); Tue, 16 Oct 2007 19:04:05 -0600 (MDT)
Received: from sca-es-mail-1.sun.com ([192.18.43.132])
 by brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ10066W6YS8F60@brm-avmta-1.central.sun.com> for
 psarc-ext@sun.com (ORCPT psarc-ext@sun.com); Tue,
 16 Oct 2007 19:04:04 -0600 (MDT)
Received: from fe-sfbay-10.sun.com ([192.18.43.129])
	by sca-es-mail-1.sun.com (8.13.7+Sun/8.12.9) with ESMTP id l9H144T9019200	for
 <psarc-ext@sun.com>; Tue, 16 Oct 2007 18:04:04 -0700 (PDT)
Received: from conversion-daemon.fe-sfbay-10.sun.com by fe-sfbay-10.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 id <0JQ1007016S5KI00@fe-sfbay-10.sun.com>
 (original mail from Prashant.Srinivasan@Sun.COM)
 for psarc-ext@sun.com (ORCPT psarc-ext@sun.com); Tue,
 16 Oct 2007 18:04:04 -0700 (PDT)
Received: from [129.145.154.69] by fe-sfbay-10.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 with ESMTPSA id <0JQ1002CJ6YRLC30@fe-sfbay-10.sun.com>; Tue,
 16 Oct 2007 18:04:03 -0700 (PDT)
Date: Tue, 16 Oct 2007 18:04:03 -0700
From: Prashant Srinivasan <Prashant.Srinivasan@Sun.COM>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <b9c544f0710161151l5c77761ek390b4eb8044c9af9@mail.gmail.com>
Sender: Prashant.Srinivasan@Sun.COM
To: Shawn Walker <swalker@opensolaris.org>
Cc: "Garrett D'Amore" <gdamore@Sun.COM>, Jyri Virkki <jyri@sac.sfbay.sun.com>,
        chris.zhu@Sun.COM, Cynthia.Hardenbrook@Sun.COM, psarc-ext@Sun.COM,
        Hugo.Rivero@Sun.COM, Jie.Shen@Sun.COM
Message-id: <47155F83.20803@Sun.COM>
MIME-version: 1.0
Content-type: text/plain; format=flowed; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.2.0.264296
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
 <47150501.2040704@sun.com>
 <b9c544f0710161151l5c77761ek390b4eb8044c9af9@mail.gmail.com>
User-Agent: Thunderbird 1.5.0.8 (X11/20061110)
Status: RO
Content-Length: 30951

Thanks for the feedback.  I've removed the below mentioned paragraph.
I've also inlined a modified copy of the ARC case to the bottom of this 
email.
 -ps

Shawn Walker wrote:
> +1, Developers should be responsible and avoid un-constructive
> criticism in their documentation.
>
> On 16/10/2007, Garrett D'Amore <gdamore@sun.com> wrote:
>   
>> My only thought here is that the man page has a disparaging comment
>> about Perl in the introduction.
>>
>> While I do not necessarily disagree with the statement, I'm not sure it
>> is one that we'd normally like to make in documentation we ship;
>> especially given that we also ship Perl.
>>
>> Can we remove that particular phrase, or perhaps alter it to say
>> something about "improved readability compared to other scripting
>> languages" or somesuch?  (Actually, the whole paragraph describing Ruby
>> probably could be removed.  I don't think man pages are usually the best
>> place to evangelize a program. :-)
>>
>>     -- Garrett
>>
>> PS: Here's the comment to which I refer:
>>
>>     
>>>      If you want a language for easy object-oriented programming,
>>>      or you don't like the Perl ugliness, or you do like the con-
>>>      cept of LISP, but don't like too much parentheses, Ruby  may
>>>      be the language of your choice.
>>>
>>>
>>>
>>>       
>> _______________________________________________
>> opensolaris-arc mailing list
>> opensolaris-arc@opensolaris.org
>>
>>     
>
>
>   

Template Version: @(#)sac_nextcase 1.64 07/13/07 SMI
This information is Copyright 2007 Sun Microsystems
1. Introduction
    1.1. Project/Component Working Name:
	 Including Ruby 1.8 with Solaris
    1.2. Name of Document Author/Supplier:
	 Author:  Prashant Srinivasan
    1.3  Date of This Document:
	16 October, 2007
4. Technical Description

Including Ruby 1.8 with Solaris

Prashant Srinivasan <Prashant.Srinivasan@Sun.COM>
15 October 2007

1.      Summary and motivation

        This project delivers Ruby into Solaris.
        Ruby, the scripting language[1], and Rails, the associated web
        application framework[2], are fast gaining popularity, and Ruby's
        inclusion into Solaris will enable it to be a more attractive
        platform for Ruby/Rails developers and deployments.

        Certain extensions[section 3] to the Ruby language, and a packaging
        program, Rubygems[5] are also included based on the necessity for
        an end user to install such programs to have a functional Ruby
        installation and to be able to add functionality in a seamless manner.

        This case seeks Micro Release Binding.

2.      Technical issues

        2.1.    Key objects.

        /usr/ruby/1.8/bin/erb
        /usr/ruby/1.8/bin/irb
        /usr/ruby/1.8/bin/rdoc
        /usr/ruby/1.8/bin/ri
        /usr/ruby/1.8/bin/ruby
        /usr/ruby/1.8/bin/testrb
        /usr/ruby/1.8/bin/gem
        /usr/ruby/1.8/bin/gem_mirror
        /usr/ruby/1.8/bin/gem_server
        /usr/ruby/1.8/bin/gemlock
        /usr/ruby/1.8/bin/gemri
        /usr/ruby/1.8/bin/gemwhich
        /usr/ruby/1.8/bin/index_gem_repository.rb
        /usr/ruby/1.8/bin/update_rubygems


        All other objects will be contained within the
        /usr/ruby/[<version>.<minor-version>] and the
        /var/ruby/<version>.<minor-version>/gems hierarchy.

        The proposed directory layouts for Ruby are:
                /usr/ruby/[<version>.<minor-version>]/
                        bin
                        include
                        lib
                        man
                        share
                        src

                /var/ruby/<version>.<minor-version>/gem_home


        /usr/ruby/[<version>.<minor-version>]/bin/<executable>
        will be linked symbolically from
        /usr/bin/<executable><version>.<minor-version>
        and from /usr/bin/<executable>.  The latter link will always point to
        the highest <version>.<minor-version> of Ruby installed on the system.

        The former will be a set of links to different Ruby major
        versions installed on the system.  This is a direct outcome of
        the versioning policy described in 2.2.

        This will also encourage the usage of the style "#!/usr/bin/env ruby"
        or "#!/usr/bin/env ruby1.8" depending on whether the programmer is
        interested in locking in to a specific <version>.<minor-version>,
        or is open to having her/his program interpreted by the most recent
        Ruby installation.

        The detailed directory and file layout for Ruby is provided in
        Appendix 2.


        2.2.    Versioning

        The Ruby development processes follow the ubiquitous
        "continuous development" model, typical of many Open Source projects.
        Currently, versions 1.8.6 patch 110 is the latest stable release.
        Ruby 1.9 is under development, slated for release in December 2007.

        Ruby 1.9 is the subversion trunk, with Ruby 1.8 forming a
        branch(ruby_1_8).  Ruby 1.8.6 and Ruby 1.8.5 are in
        maintenance mode, with 1.8.7 in development.  It is expected
        that Ruby 1.8.5 will no longer be maintained after Ruby 1.8.7
        is released.

        The versioning model for Ruby is
        <version>.<subversion>.<teeny-version>.
        This project covers the integration of Ruby 1.8 into Solaris.

        The compatibility expectations for Ruby are as follows:

        A development release is an unstable release that can have significant
        feature changes from the previous release, and can potentially break
        compatibility.

        A production release is, as the name suggests, a stable
        release, such that compatibility is largely maintained across
        minor versions.

        The absence of a point release(or the "TEENY" version field), or a
        point release of "0" serves as a development version.
        For example, 1.9(==1.9.0) is a development release,
        and development updates to the corresponding Subversion branch are
        not numbered. Once 1.9 is deemed production ready, it will be
        released as 1.9.l, which will be a production release.

        Version x.y.z is a development release iff z == 0, or z is undefined;
        The oddness/evenness of y not withstanding.
        The corollary is that version x.y.z is a production release iff z > 0.

        Version x.y.z is compatible for different values of z, such that z > 0.
        The corollary being that x.y.z is not compatible for x.p.z if
        y != p. And it is compatible only if y == p.

        Compatibility expectations for Rubygems are as follows:

        Rubygems intends to maintain compatibility across releases,
        with two exceptions:

          (1) It depends on Ruby, hence the Ruby compatibility expectations
              apply.

          (2) Interfaces (which, in this context refers to both APIs
              provided for Ruby programmers, and command line
              arguments; [8] and [9] provide examples) can be
              deprecated.  In Rubygems deprecation means that use of
              the deprecated interface results in a runtime warning.
              Deprecated interfaces will be available for at least 6
              months (that is, at least 2 minor releases) after being
              marked as such.

        Repository structure changes are not foreseen or planned.  But
        in the unlikely eventuality that they occur, the Rubygems
        community intends to develop migration tools to help end users
        move to newer versions of Rubygems.

        The notion of a development release does not exist in
        Rubygems; experimental features are released in beta versions,
        and they are removed if not found useful.  The beta tag is
        removed after the feature gains maturity, and a release is made.

        Hence any version x.y.z is suitable for inclusion with Solaris
        as long as it is not labelled "beta".

        Rubygems will be a part of the Ruby distribution.  Ruby 1.9
        onward will provide stable releases of Rubygems.


        2.3.    Packaging and Delivery

        The current proposal allows for the inclusion and coexistence
        of multiple versions of Ruby by keeping each installation under
        a version-specific subdirectory.  The package SUNWruby18u,
        and SUNWruby18r, will contain the Ruby and Rubygems interfaces.

        Rubygems[5] provides the gems package management interfaces
        to install or upgrade Ruby libraries over the internet,
        by connecting to a gem repository(using a process similar to
        Perl's CPAN architecture[6]), this will allow end users to
        easily install Rails, or other Ruby libraries.

        Individual Ruby libraries which are distributed as Gems will
        not be packaged with Solaris, and is outside the scope of this
        ARC case.  The Gem packaging system provides programmatic
        features to Ruby programs(such as the ability to specify
        library dependencies in Ruby code), and the growing trend
        among Ruby developers is to package libraries as Gems.
        Migrating Ruby Gems into their component Ruby libraries for
        Solaris packaging is not preferred, since Gem support is
        popular with the Ruby community(and is only expected to grow
        with the acceptance of Rubygems into the Ruby distribution).
        Packaging Ruby libraries which are distributed as Gems with
        Solaris, while maintaining the advantages of Gem packaging for
        Ruby users deserves more research. However the packaging of
        the Rubygems program will allow easy installation of Ruby
        libraries.

        The /var/ruby/1.8/gem_home directory is the home for Ruby libraries
        (gems) installed using Rubygems.

        This is also the home to a subset of the Rubygems
        functionality and documentation.  This, as well as other
        libraries which an user may install, by using the Rubygems
        program, are open to modification on a per zone basis, and
        hence are located in the /var hierarchy.

        Upgrades to the Ruby platform, when available will require
        upgrading the SUNWruby[version] usr and root packages.  It is
        expected that users will have different major versions of the
        package installed, since releases are not guaranteed to be
        compatible across them.  Newer minor versions of the Ruby
        interfaces will upgrade the existing interfaces, since these
        will be compatible.


3.      Ruby Extensions and Gems.

        Ruby supports a loadable module interface(known in Ruby
        parlance as "Extensions"), allowing the Ruby runtime to
        communicate with, and bind to, external interfaces.
        Extensions are implemented using a C interface.  Extensions
        have an associated dynamically loadable shared object(*.so),
        and quite often two, since the extension itself usually loads
        another shared object.  Gems[5] are Ruby libraries that are
        installed using the "gem" interface such that they are located
        in the default search path of the Ruby runtime.  Some Ruby
        gems also include native extensions(Mongrel[7] is an example).


        3.1.    Included Ruby Extensions.

        The initial integration will provide the following, a select subset
        of the extant Ruby extensions.


               readline    [command line support for Ruby and Rails]
               openssl     [HTTPS support]
               readline    [command line input processing for Ruby and Rails]
               tk          [to support the TK toolkit]
               curses      [terminal control library]
               openssl     [HTTPS support]

        Additional extensions can be delivered subsequent to the initial
        integration, depending on user community and customer requests.

4.      Ruby Internationalization.

        Ruby offers the ability to use different character sets based
        on the value of a global variable, $KCODE.  It does not have
        built in features for message localization.

5.      Ruby Documentation.

        Ruby is well documented[3].  The API documentation and a man
        page, a subset of the comprehensive documentation available on
        the internet, are available with the Ruby installation by
        invoking "ri".

        5.1.    Manual Pages.

        Ruby provides a man page, which will be delivered in the man directory
        [/usr/ruby/[<version>.<subversion>/man]. The contents of this
        man page, modified appropriately for Solaris, is provided in
        Appendix 1.

        A symbolic link will be created from the standard Solaris man page
        location(/usr/share/man/man1/ruby.1) to
        /usr/ruby/[<version>.<subversion>]/man1/ruby.1.

6.      Interfaces

        6.1.    Imported Interfaces.

        NAME                            STABILITY               NOTES

        OpenSSL [Secure Sockets Layer]  External/Volatile   PSARC/2003/500
        Curses [CRT screen handling]    Stable              ASARC 1992/040
        Readline (statically linked)    Uncommitted         PSARC 2007/188
        Tcl/Tk                          Uncommitted         PSARC 2007/317


        6.2.    Exported Interfaces.

        NAME                                 STABILITY               NOTES

        SUNWruby18u                         Uncommitted           Package Name
        SUNWruby18r                         Uncommitted           Package Name
        Ruby Language interfaces            Uncommitted    Language Interfaces

        /usr/ruby/[version]/bin
                    erb                     Uncommitted             Executable
                    gem                     Uncommitted             Executable
                    gem_mirror              Uncommitted             Executable
                    gem_server              Uncommitted             Executable
                    gemlock                 Uncommitted             Executable
                    gemri                   Uncommitted             Executable
                    gemwhich                Uncommitted             Executable
                    index_gem_repository.rb Uncommitted             Executable
                    irb                     Uncommitted             Executable
                    rdoc                    Uncommitted             Executable
                    ri                      Uncommitted             Executable
                    ruby                    Uncommitted             Executable
                    testrb                  Uncommitted             Executable
                    update_rubygems         Uncommitted             Executable

        /usr/ruby/[version]/man1/ruby.1     Uncommitted             Man page

        /usr/bin/erb                        Volatile             Symbolic link
        /usr/bin/gem                        Volatile             Symbolic link
        /usr/bin/gem_mirror                 Volatile             Symbolic link
        /usr/bin/gem_server                 Volatile             Symbolic link
        /usr/bin/gemlock                    Volatile             Symbolic link
        /usr/bin/gemri                      Volatile             Symbolic link
        /usr/bin/gemwhich                   Volatile             Symbolic link
        /usr/bin/index_gem_repository.rb    Volatile             Symbolic link
        /usr/bin/irb                        Volatile             Symbolic link
        /usr/bin/rdoc                       Volatile             Symbolic link
        /usr/bin/ri                         Volatile             Symbolic link
        /usr/bin/ruby                       Volatile             Symbolic link
        /usr/bin/testrb                     Volatile             Symbolic link
        /usr/bin/update_rubygems            Volatile             Symbolic link
        /usr/share/man/man1/ruby.1          Volatile             Symbolic link

        /usr/bin/erb1.8                     Uncommitted          Symbolic link
        /usr/bin/gem1.8                     Uncommitted          Symbolic link
        /usr/bin/gem_mirror1.8              Uncommitted          Symbolic link
        /usr/bin/gem_server1.8              Uncommitted          Symbolic link
        /usr/bin/gemlock1.8                 Uncommitted          Symbolic link
        /usr/bin/gemri1.8                   Uncommitted          Symbolic link
        /usr/bin/gemwhich1.8                Uncommitted          Symbolic link
        /usr/bin/index_gem_repository.rb1.8 Uncommitted          Symbolic link
        /usr/bin/irb1.8                     Uncommitted          Symbolic link
        /usr/bin/rdoc1.8                    Uncommitted          Symbolic link
        /usr/bin/ri1.8                      Uncommitted          Symbolic link
        /usr/bin/ruby1.8                    Uncommitted          Symbolic link
        /usr/bin/testrb1.8                  Uncommitted          Symbolic link
        /usr/bin/update_rubygems1.8         Uncommitted          Symbolic link


      Extensions and Libraries

          NAME         STABILITY               NOTES

        readline      Uncommitted      Library to process command line input.
        Tk            Uncommitted      Extension to support the TK toolkit
        curses        Uncommitted      The terminal control library
        openssl       Uncommitted      HTTPS support



7.      References.

     [1]    http://www.ruby-lang.org/
     [2]    http://www.rubyonrails.org/
     [3]    http://ruby-doc.org
     [4]    http://api.rubyonrails.org
     [5]    http://www.rubygems.org/
     [6]    http://www.cpan.org/
     [7]    http://mongrel.rubyforge.org/
     [8]    http://blog.segment7.net/articles/2007/10/08/time-today-going-away
     [9]    http://blog.segment7.net/articles/2007/10/13/rubygems-beta-0-9-4-5




Appendix 1: Ruby man page:

UNIX                                                      RUBY(1)

NAME
     ruby - Interpreted object-oriented scripting language

SYNOPSIS
     ruby [--copyright]  [--version]  [-Sacdlnpswvy]  [-0[octal]]
     [-C   directory]   [-F   pattern]   [-I  directory]  [-K  c]
     [-T[level]]  [-e  command]  [-i[extension]]   [-r   library]
     [-x[directory]] [--] [program_file] [argument ...]

DESCRIPTION
     Ruby is an interpreted scripting language for quick and easy
     object-oriented  programming.   It has many features to pro-
     cess text files and to do system  management  tasks  (as  in
     Perl).  It is simple, straight-forward, and extensible.

FILES
     Ruby 1.8 is integrated with Solaris.

     The following files specify the installation  locations  for
     Ruby:

     /var/ruby/1.8/gem_home  Contains the Rubygems repository.
                             Configure the GEM_HOME environment
                             variable to point to
                             /var/ruby/1.8/gem_home to use the
                             this installation of Rubygems.

     /usr/ruby/1.8/bin       Contains  the  Ruby  executable  as
                             well as other utility programs, and
                             Rubygems programs.
                             These programs are linked from
                             /usr/bin. For example:
                             /usr/ruby/1.8/bin/ruby is linked
                             from /usr/bin/ruby1.8, and may be
                             linked from /usr/bin/ruby if 1.8 is
                             the latest version of Ruby installed
                             on this system.



FEATURES
     Ruby's features are as follows:

     Interpretive
          Ruby is an interpreted language, so you don't  have  to
          recompile programs written in Ruby to execute them.

     Variables have no type (dynamic typing)
          Variables in Ruby can contain data of  any  type.   You
          don't  have  to  worry  about  variable typing.  Conse-
          quently, it has a weaker compile time check.

     No declaration needed
          You can use variables in your Ruby programs without any
          declarations.    Variable  names  denote  their  scope,
          local, global, instance, etc.

     Simple syntax
          Ruby has a simple syntax influenced slightly from  Eif-
          fel.

     No user-level memory management
          Ruby  has  automatic  memory  management.   Objects  no
          longer  referenced from anywhere are automatically col-
          lected by the garbage collector built into  the  inter-
          preter.

December 3Last0change: Ruby Programmers Reference Guide         1

UNIX                                                      RUBY(1)

     Everything is an object
          Ruby is the purely object-oriented language, and was so
          since  its  creation.  Even such basic data as integers
          are seen as objects.

     Class, inheritance, and methods
          Of course, as an  object-oriented  language,  Ruby  has
          such  basic  features  like  classes,  inheritance, and
          methods.

     Singleton methods
          Ruby has the ability  to  define  methods  for  certain
          objects.   For  example,  you can define a press-button
          action for  certain  widget  by  defining  a  singleton
          method  for  the  button.  Or, you can make up your own
          prototype based object system using singleton  methods,
          if you want to.

     Mix-in by modules
          Ruby intentionally does not have the  multiple  inheri-
          tance  as  it  is a source of confusion.  Instead, Ruby
          has the ability to  share  implementations  across  the
          inheritance tree.  This is often called `Mix-in'.

     Iterators
          Ruby has iterators for loop abstraction.

     Closures
          In Ruby, you can objectify the procedure.

     Text processing and regular expression
          Ruby has a bunch of text processing  features  like  in
          Perl.

     Bignums
          With built-in bignums, you can  for  example  calculate
          factorial(400).

     Exception handling
          As in Java(tm).

     Direct access to the OS
          Ruby can use most UNIX  system  calls,  often  used  in

December 3Last0change: Ruby Programmers Reference Guide         2

UNIX                                                      RUBY(1)

          system programming.

     Dynamic loading
          On most UNIX systems, you can load  object  files  into
          the Ruby interpreter on-the-fly.

OPTIONS
     Ruby  interpreter  accepts  following  command-line  options
     (switches).  They are quite similar to those of perl(1).

     --copyright
          Prints the copyright notice.

     --version
          Prints the version of Ruby interpreter.

     -0[octal]
          (The  digit  ``zero''.)   Specifies  the  input  record
          separator  ("$/")  as  an  octal number. If no digit is
          given, the null character is taken  as  the  separator.
          Other  switches  may follow the digits.  -00 turns Ruby
          into paragraph mode.  -0777 makes Ruby read whole  file
          at  once  as  a  single  string since there is no legal
          character with that value.

     -C directory
          Causes Ruby to switch to the directory.

     -F pattern
          Specifies input field separator ("$;").

     -I directory
          Used to tell Ruby where to load  the  library  scripts.
          Directory  path will be added to the load-path variable
          ("$:").

     -K kcode
          Specifies KANJI (Japanese) encoding.

     -S   Makes Ruby use the PATH environment variable to  search
          for  script,  unless  if  its name begins with a slash.
          This is used to emulate  #!   on  machines  that  don't

December 3Last0change: Ruby Programmers Reference Guide         3

UNIX                                                      RUBY(1)

          support it, in the following manner:

          #! /usr/bin/ruby
          # This line makes the next one a comment in Ruby \
            exec /usr/bin/ruby -S $0 $*

     -T[level]
          Turns on taint checks at the specified  level  (default
          1).

     -a   Turns on auto-split mode when used with -n or  -p.   In
          auto-split mode, Ruby executes
            $F = $_.split
          at beginning of each loop.

     -c   Causes Ruby to check the syntax of the script and  exit
          without  executing. If there are no syntax errors, Ruby
          will print ``Syntax OK'' to the standard output.

     -d

     --debug
          Turns on debug mode.  "$DEBUG" will be set to true.

     -e command
          Specifies script from command-line while  telling  Ruby
          not  to  search the rest of arguments for a script file
          name.

     -h

     --help
          Prints a summary of the options.

     -i extension
          Specifies in-place-edit mode.  The extension, if speci-
          fied,  is added to old file name to make a backup copy.
          For example:

          % echo matz > /tmp/junk
          % cat /tmp/junk
          matz
          % ruby -p -i.bak -e '$_.upcase!' /tmp/junk
          % cat /tmp/junk
          MATZ

December 3Last0change: Ruby Programmers Reference Guide         4

UNIX                                                      RUBY(1)

          % cat /tmp/junk.bak
          matz

     -l   (The  lowercase  letter  ``ell''.)   Enables  automatic
          line-ending processing, which means to firstly set "$\"
          to the value of "$/", and  secondly  chops  every  line
          read using chop!.

     -n   Causes Ruby to assume the following  loop  around  your
          script, which makes it iterate over file name arguments
          somewhat like sed -n or awk.

          while gets
            ...
          end

     -p   Acts mostly same as -n switch, but print the  value  of
          variable  "$_"  at the each end of the loop.  For exam-
          ple:

          % echo matz | ruby -p -e '$_.tr! "a-z", "A-Z"'
          MATZ

     -r library
          Causes Ruby to load the library using require.   It  is
          useful when using -n or -p.

     -s   Enables some switch parsing for switches  after  script
          name  but  before  any file name arguments (or before a
          --).  Any switches found there are  removed  from  ARGV
          and  set the corresponding variable in the script.  For
          example:

          #! /usr/bin/ruby -s
          # prints "true" if invoked with `-xyz' switch.
          print "true\n" if $xyz

          On some systems "$0" does not always contain  the  full
          pathname,  so  you  need  the -S switch to tell Ruby to
          search for the script if necessary.  To handle embedded
          spaces  or such.  A better construct than "$*" would be
          ${1+"$@"}, but it does not work if the script is  being
          interpreted by csh(1).

     -v

December 3Last0change: Ruby Programmers Reference Guide         5

UNIX                                                      RUBY(1)

     --verbose
          Enables verbose mode.  Ruby will print its  version  at
          the beginning, and set the variable "$VERBOSE" to true.
          Some methods print extra messages if this  variable  is
          true.   If  this switch is given, and no other switches
          are present, Ruby quits after printing its version.

     -w   Enables verbose mode without printing  version  message
          at  the  beginning.  It sets the "$VERBOSE" variable to
          true.

     -x[directory]
          Tells Ruby that the script is embedded  in  a  message.
          Leading  garbage will be discarded until the first that
          starts with ``#!''  and contains the string,  ``ruby''.
          Any meaningful switches on that line will applied.  The
          end of script must be specified with either  EOF,  "^D"
          ("control-D"),  "^Z"  ("control-Z"),  or  reserved word
          __END__.  If the directory name is specified, Ruby will
          switch to that directory before executing script.

     -y

     --yydebug
          Turns on compiler debug mode.  Ruby will print a  bunch
          of  internal  state  messages during compiling scripts.
          You don't have to specify this switch, unless  you  are
          going to debug the Ruby interpreter.

ENVIRONMENT
     RUBYLIB
          A colon-separated list of directories that are added to
          Ruby's  library load path ("$:"). Directories from this
          environment variable are searched before  the  standard
          load path is searched.

          e.g.:
            RUBYLIB="$HOME/lib/ruby:$HOME/lib/rubyext"

     RUBYOPT
          Additional Ruby options.

          e.g.
            RUBYOPT="-w -Ke"

     RUBYPATH

December 3Last0change: Ruby Programmers Reference Guide         6

UNIX                                                      RUBY(1)

          A  colon-separated  list  of  directories   that   Ruby
          searches  for  Ruby programs when the -S flag is speci-
          fied.  This  variable  precedes  the  PATH  environment
          variable.

     RUBYSHELL
          The path to the system shell command.  This environment
          variable is enabled for only mswin32, mingw32, and OS/2
          platforms.  If  this  variable  is  not  defined,  Ruby
          refers to COMSPEC.

     PATH Ruby refers to the PATH environment variable on calling
          Kernel#system.

     RUBYLIB_PREFIX
          This variable is obsolete.

ATTRIBUTES

    See attributes(5) for descriptions of the  following  attri-

    butes:


    ____________________________________________________________
   |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
   |_____________________________|_____________________________|
   | Availability                | SUNWruby18r                 |
   |_____________________________|_____________________________|
   |                             | SUNWruby18u                 |
   |_____________________________|_____________________________|
   | Interface Stability         | Uncommitted                 |
   |_____________________________|_____________________________|



NOTES

    Source for Ruby is available on http://opensolaris.org.

AUTHORS
     Ruby is  designed  and  implemented  by  Yukihiro  Matsumoto
     <matz@netlab.jp>.



6. Resources and Schedule
    6.4. Steering Committee requested information
   	6.4.1. Consolidation C-team Name:
		sfw
    6.5. ARC review type: FastTrack
    6.6. ARC Exposure: open



-- 
Prashant Srinivasan
F/OSS Enthusiast
Sun Microsystems, Inc.
http://blogs.sun.com/prashant
GnuPG key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x82FBDE5A


From Prashant.Srinivasan@sun.com Tue Oct 16 18:14:10 2007
Received: from sunmail5.uk.sun.com (sunmail5.UK.Sun.COM [129.156.85.165])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9H1E96X025394
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 16 Oct 2007 18:14:09 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail5.uk.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l9H1AkVp011527
	for <@sunmail2sca.sfbay.sun.com:PSARC-ext@sun.com>; Wed, 17 Oct 2007 02:10:48 +0100 (BST)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ10000179Y1W00@nwk-avmta-2.sfbay.sun.com> for PSARC-ext@sun.com
 (ORCPT PSARC-ext@sun.com); Tue, 16 Oct 2007 18:10:46 -0700 (PDT)
Received: from sca-es-mail-2.sun.com ([192.18.43.133])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ100E3R79XESD0@nwk-avmta-2.sfbay.sun.com> for
 PSARC-ext@sun.com (ORCPT PSARC-ext@sun.com); Tue,
 16 Oct 2007 18:10:45 -0700 (PDT)
Received: from fe-sfbay-10.sun.com ([192.18.43.129])
	by sca-es-mail-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id l9H1AjeY016389	for
 <PSARC-ext@sun.com>; Tue, 16 Oct 2007 18:10:45 -0700 (PDT)
Received: from conversion-daemon.fe-sfbay-10.sun.com by fe-sfbay-10.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 id <0JQ100C01743OE00@fe-sfbay-10.sun.com>
 (original mail from Prashant.Srinivasan@Sun.COM)
 for PSARC-ext@sun.com (ORCPT PSARC-ext@sun.com); Tue,
 16 Oct 2007 18:10:45 -0700 (PDT)
Received: from [129.145.154.69] by fe-sfbay-10.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 with ESMTPSA id <0JQ1002EM79WLC50@fe-sfbay-10.sun.com>; Tue,
 16 Oct 2007 18:10:45 -0700 (PDT)
Date: Tue, 16 Oct 2007 18:10:44 -0700
From: Prashant Srinivasan <Prashant.Srinivasan@sun.com>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <20071016224513.GA26634@wakulla.Central.Sun.COM>
Sender: Prashant.Srinivasan@sun.com
To: Peter Schow <Peter.Schow@sun.com>
Cc: Jyri Virkki <jyri@sac.sfbay.sun.com>, psarc-ext@sun.com, chris.zhu@sun.com,
        Cynthia.Hardenbrook@sun.com, Hugo.Rivero@sun.com, Jie.Shen@sun.com
Message-id: <47156114.7000600@Sun.COM>
MIME-version: 1.0
Content-type: text/plain; format=flowed; charset=us-ascii
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.2.0.264296
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
 <20071016224513.GA26634@wakulla.Central.Sun.COM>
User-Agent: Thunderbird 1.5.0.8 (X11/20061110)
Status: RO
Content-Length: 2146

Peter,
Thanks for the comments. Please see inline . . .

Peter Schow wrote:
> On Tue, Oct 16, 2007 at 11:19:24AM -0700, Jyri Virkki wrote:
>   
>> I am sponsoring this fast track for Prashant Srinivasan. Details below.
>> Appendix 2 is in the materials directory.
>>
>>
>> Template Version: @(#)sac_nextcase 1.64 07/13/07 SMI
>> This information is Copyright 2007 Sun Microsystems
>> 1. Introduction
>>     1.1. Project/Component Working Name:
>> 	 Including Ruby 1.8 with Solaris
>>     1.2. Name of Document Author/Supplier:
>> 	 Author:  Prashant Srinivasan
>>     1.3  Date of This Document:
>> 	16 October, 2007
>> 4. Technical Description
>>
>> Including Ruby 1.8 with Solaris
>>     
>
> Good stuff.
>
> 1. Who gets to write to the /var/ruby directory, where the gems
>    are maintained?  The Ruby development model is tailored to the
>    individual downloading of gems, as they are needed.  On a multi-user
>    system, this type of updating in a common directory might be 
>    a problem.
>   

It's expected that the /var/ruby will be updated by an administrator, 
and non root users who need to install private(or sysadmin-unsupported) 
gems can install them into private directories.
Chaining of system-wide and a private gem repositories is possible by 
tweaking the GEM_PATH variable.

> 2. A bundled in Postgres extension would be be ideal, providing
>    the worthwhile linkage to the bundled Postgres database on
>    Solaris.
>   

Thanks. We have a list of requested feature adds(which include memcached 
client and Apache mod ruby, among others). We will add Postgres into 
this list.
We propose to tackle more features(Rails being one of the prominent), in 
upcoming integrations.


> 3. Any interoperability issues with a Studio-compiled /usr/bin/ruby 
>    and gems grabbed from the net that are built with gcc?
>   


We don't know of any, at this time. Mongrel, for one, runs fine.(and any 
such potential problems will be avoided by using gcc).
-ps


-- 
Prashant Srinivasan
F/OSS Enthusiast
Sun Microsystems, Inc.
http://blogs.sun.com/prashant
GnuPG key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x82FBDE5A


From binarycrusader@gmail.com Tue Oct 16 18:15:30 2007
Received: from sunmail5.uk.sun.com (sunmail5.UK.Sun.COM [129.156.85.165])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9H1FUWt025417
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 16 Oct 2007 18:15:30 -0700 (PDT)
Received: from brm-avmta-1.central.sun.com (brm-avmta-1.Central.Sun.COM [129.147.4.11])
	by sunmail5.uk.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l9H1C4Vi012367
	for <@sunmail2sca.sfbay.sun.com:psarc-ext@sun.com>; Wed, 17 Oct 2007 02:12:08 +0100 (BST)
Received: from pmxchannel-daemon.brm-avmta-1.central.sun.com by
 brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ100I017C5G100@brm-avmta-1.central.sun.com> for psarc-ext@sun.com
 (ORCPT psarc-ext@sun.com); Tue, 16 Oct 2007 19:12:06 -0600 (MDT)
Received: from brmea-mail-1.sun.com ([192.18.98.31])
 by brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ10066Z7C58G70@brm-avmta-1.central.sun.com> for
 psarc-ext@sun.com (ORCPT psarc-ext@sun.com); Tue,
 16 Oct 2007 19:12:05 -0600 (MDT)
Received: from relay16i.sun.com
 (ip126.net129179-4.block1.us.syntegra.com [129.179.4.126])
	by brmea-mail-1.sun.com (8.13.6+Sun/8.12.9) with ESMTP id l9H1C4IF026737	for
 <psarc-ext@sun.com>; Wed, 17 Oct 2007 01:12:04 +0000 (GMT)
Received: from mmp11es.sun.com ([160.41.209.21] [160.41.209.21])
 by relay16i.sun.com with ESMTP id BT-MMP-394864 for psarc-ext@sun.com; Wed,
 17 Oct 2007 01:12:04 +0000 (Z)
Received: from relay13i.sun.com (relay13i.sun.com [129.179.4.123])
 by mmp11es.sun.com with ESMTP id BT-MMP-136177 for psarc-ext@sun.com; Wed,
 17 Oct 2007 01:12:04 +0000 (Z)
Received: from rv-out-0910.google.com ([209.85.198.184] [209.85.198.184])
 by relay1i.sun.com with ESMTP id BT-MMP-1868360 for psarc-ext@sun.com; Wed,
 17 Oct 2007 01:12:04 +0000 (Z)
Received: by rv-out-0910.google.com with SMTP id c27so1523108rvf for
 <psarc-ext@sun.com>; Tue, 16 Oct 2007 18:12:03 -0700 (PDT)
Received: by 10.141.21.19 with SMTP id y19mr3899094rvi.1192583523377; Tue,
 16 Oct 2007 18:12:03 -0700 (PDT)
Received: by 10.140.148.5 with HTTP; Tue, 16 Oct 2007 18:12:03 -0700 (PDT)
Date: Tue, 16 Oct 2007 20:12:03 -0500
From: Shawn Walker <swalker@opensolaris.org>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <47155F83.20803@Sun.COM>
Sender: binarycrusader@gmail.com
To: Prashant Srinivasan <Prashant.Srinivasan@sun.com>
Cc: "Garrett D'Amore" <gdamore@sun.com>, Jyri Virkki <jyri@sac.sfbay.sun.com>,
        chris.zhu@sun.com, Cynthia.Hardenbrook@sun.com, psarc-ext@sun.com,
        Hugo.Rivero@sun.com, Jie.Shen@sun.com
Message-id: <b9c544f0710161812v528da1ddgff9059e5433b10d@mail.gmail.com>
MIME-version: 1.0
Content-type: text/plain; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
Content-disposition: inline
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;        d=gmail.com;
 s=beta;
 h=domainkey-signature:received:received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth;
        bh=5fHR8TIOFdF/poW6MfxoqNHN+xw7nzH3R6cv8Wveask=;
 b=maREA7TkC0+bmgjxAxYSSAnMDAMQBHxBkTsKIAmYwvQxNMQkLP5TW2l/yNGC+/62zAAEY8yPYJrOG7AgadNJgssu7sEM1cI287N5dnf1evb1LjWkG2BYRURKP5qmyDVRpRynKSIwPgnCAiphMhGmZIyy5/GoWWYK9Z7+wn+fbPc=
DomainKey-Signature: a=rsa-sha1; c=nofws;        d=gmail.com; s=beta;
 h=received:message-id:date:from:sender:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth;
 b=cUS7h8b6yUGYmDTW86zI53KRjbpCTwaAj6g9D1OC+ej3JFRlfeENpf2rMRq7KvEWtzjMzrfHmwlESFtKEdoY0LeBsj8v/lJMAIBYIkjDS3zq1Y3fA6A8xDIWNDH9OogZ/u26r5qV3WDldGWYz7FMf0raK5Ka9pY0R6czk7MHec0=
X-PMX-Version: 5.2.0.264296
X-Brightmail-Tracker: AAAAAA==
X-Google-Sender-Auth: 54853ad617d06345
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
 <47150501.2040704@sun.com>
 <b9c544f0710161151l5c77761ek390b4eb8044c9af9@mail.gmail.com>
 <47155F83.20803@Sun.COM>
Status: RO
Content-Length: 690

On 16/10/2007, Prashant Srinivasan <Prashant.Srinivasan@sun.com> wrote:
> Thanks for the feedback.  I've removed the below mentioned paragraph.
> I've also inlined a modified copy of the ARC case to the bottom of this
> email.
>  -ps

<snip!>

> NOTES
>
>     Source for Ruby is available on http://opensolaris.org.

Should that be:

"The source code for this version of Ruby is available from
http://src.opensolaris.org."

Is there a more specific URL that the source will be at?

-- 
Shawn Walker, Software and Systems Analyst
binarycrusader@gmail.com - http://binarycrusader.blogspot.com/

"Beware of bugs in the above code; I have only proved it correct, not
tried it. " --Donald Knuth

From Prashant.Srinivasan@Sun.COM Tue Oct 16 18:16:44 2007
Received: from sunmail2sca.sfbay.sun.com (sunmail2sca [129.145.155.234])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9H1GiY9025431
	for <psarc-ext@sac.sfbay.sun.com>; Tue, 16 Oct 2007 18:16:44 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail2sca.sfbay.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l9H1DNYa012732
	for <@sunmail2sca.sfbay.sun.com:PSARC-ext@sun.com>; Tue, 16 Oct 2007 18:13:23 -0700 (PDT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ1000077EBAW00@nwk-avmta-2.sfbay.sun.com> for PSARC-ext@sun.com
 (ORCPT PSARC-ext@sun.com); Tue, 16 Oct 2007 18:13:23 -0700 (PDT)
Received: from sca-es-mail-2.sun.com ([192.18.43.133])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ100EDN7EBEVC0@nwk-avmta-2.sfbay.sun.com> for
 PSARC-ext@sun.com (ORCPT PSARC-ext@sun.com); Tue,
 16 Oct 2007 18:13:23 -0700 (PDT)
Received: from fe-sfbay-10.sun.com ([192.18.43.129])
	by sca-es-mail-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id l9H1DMfr016545	for
 <PSARC-ext@sun.com>; Tue, 16 Oct 2007 18:13:22 -0700 (PDT)
Received: from conversion-daemon.fe-sfbay-10.sun.com by fe-sfbay-10.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 id <0JQ100H017DM8300@fe-sfbay-10.sun.com>
 (original mail from Prashant.Srinivasan@Sun.COM)
 for PSARC-ext@sun.com (ORCPT PSARC-ext@sun.com); Tue,
 16 Oct 2007 18:13:22 -0700 (PDT)
Received: from [129.145.154.69] by fe-sfbay-10.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 with ESMTPSA id <0JQ1002C27EALC60@fe-sfbay-10.sun.com>; Tue,
 16 Oct 2007 18:13:22 -0700 (PDT)
Date: Tue, 16 Oct 2007 18:13:22 -0700
From: Prashant Srinivasan <Prashant.Srinivasan@Sun.COM>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <b9c544f0710161646x50e133a8q76ab46ffabde4893@mail.gmail.com>
Sender: Prashant.Srinivasan@Sun.COM
To: Shawn Walker <swalker@opensolaris.org>
Cc: Peter Schow <Peter.Schow@Sun.COM>, Jyri Virkki <jyri@sac.sfbay.sun.com>,
        chris.zhu@Sun.COM, Cynthia.Hardenbrook@Sun.COM, psarc-ext@Sun.COM,
        Hugo.Rivero@Sun.COM, Jie.Shen@Sun.COM
Message-id: <471561B2.2010706@Sun.COM>
MIME-version: 1.0
Content-type: text/plain; format=flowed; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.2.0.264296
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
 <20071016224513.GA26634@wakulla.Central.Sun.COM>
 <b9c544f0710161646x50e133a8q76ab46ffabde4893@mail.gmail.com>
User-Agent: Thunderbird 1.5.0.8 (X11/20061110)
Status: RO
Content-Length: 1569

Shawn Walker wrote:
> On 16/10/2007, Peter Schow <Peter.Schow@sun.com> wrote:
>   
>> On Tue, Oct 16, 2007 at 11:19:24AM -0700, Jyri Virkki wrote:
>>     
>>> I am sponsoring this fast track for Prashant Srinivasan. Details below.
>>> Appendix 2 is in the materials directory.
>>>
>>>
>>> Template Version: @(#)sac_nextcase 1.64 07/13/07 SMI
>>> This information is Copyright 2007 Sun Microsystems
>>> 1. Introduction
>>>     1.1. Project/Component Working Name:
>>>        Including Ruby 1.8 with Solaris
>>>     1.2. Name of Document Author/Supplier:
>>>        Author:  Prashant Srinivasan
>>>     1.3  Date of This Document:
>>>       16 October, 2007
>>> 4. Technical Description
>>>
>>> Including Ruby 1.8 with Solaris
>>>       
>> Good stuff.
>>
>> 1. Who gets to write to the /var/ruby directory, where the gems
>>    are maintained?  The Ruby development model is tailored to the
>>    individual downloading of gems, as they are needed.  On a multi-user
>>    system, this type of updating in a common directory might be
>>    a problem.
>>     
>
> I would assume that they would install them into their home directory instead:
>
> http://www.rubygems.org/read/chapter/3
>
> (Note that I'm not speaking for the thread originator).
>   

Here's a reference on how to use multiple repositories with Rubygems -
 http://wiki.rubyonrails.org/rails/pages/HowToUseMultipleGemRepositories

 -ps



-- 
Prashant Srinivasan
F/OSS Enthusiast
Sun Microsystems, Inc.
http://blogs.sun.com/prashant
GnuPG key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x82FBDE5A


From Prashant.Srinivasan@sun.com Tue Oct 16 19:47:38 2007
Received: from sunmail4.Singapore.Sun.COM (sunmail4.Singapore.Sun.COM [129.158.71.19])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9H2laa3026820
	for <psarc-ext@sac.sfbay.Sun.COM>; Tue, 16 Oct 2007 19:47:37 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail4.Singapore.Sun.COM (8.13.4+Sun/8.13.3/ENSMAIL,v2.2) with ESMTP id l9H2iD49025701
	for <@sunmail2sca.sfbay.sun.com:psarc-ext@sun.com>; Wed, 17 Oct 2007 10:44:15 +0800 (SGT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ100603BLQ4C00@nwk-avmta-2.sfbay.sun.com> for psarc-ext@sun.com
 (ORCPT psarc-ext@Sun.COM); Tue, 16 Oct 2007 19:44:14 -0700 (PDT)
Received: from brmea-mail-2.sun.com ([192.18.98.43])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ1005PUBLP9500@nwk-avmta-2.sfbay.sun.com> for
 psarc-ext@sun.com (ORCPT psarc-ext@Sun.COM); Tue,
 16 Oct 2007 19:44:13 -0700 (PDT)
Received: from fe-amer-10.sun.com ([192.18.109.80])
	by brmea-mail-2.sun.com (8.13.6+Sun/8.12.9) with ESMTP id l9H2iDcE014743	for
 <psarc-ext@Sun.COM>; Wed, 17 Oct 2007 02:44:13 +0000 (GMT)
Received: from conversion-daemon.mail-amer.sun.com by mail-amer.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 id <0JQ100N01BJS4X00@mail-amer.sun.com>
 (original mail from Prashant.Srinivasan@Sun.COM)
 for psarc-ext@Sun.COM (ORCPT psarc-ext@Sun.COM); Tue,
 16 Oct 2007 20:44:13 -0600 (MDT)
Received: from [129.150.13.103] by mail-amer.sun.com
 (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007))
 with ESMTPSA id <0JQ100GLKBLNJ220@mail-amer.sun.com>; Tue,
 16 Oct 2007 20:44:13 -0600 (MDT)
Date: Tue, 16 Oct 2007 19:41:00 -0700
From: Prashant Srinivasan <Prashant.Srinivasan@sun.com>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <b9c544f0710161812v528da1ddgff9059e5433b10d@mail.gmail.com>
Sender: Prashant.Srinivasan@sun.com
To: Shawn Walker <swalker@opensolaris.org>
Cc: "Garrett D'Amore" <gdamore@sun.com>, Jyri Virkki <jyri@sac.sfbay.sun.com>,
        chris.zhu@sun.com, Cynthia.Hardenbrook@sun.com, psarc-ext@sun.com,
        Hugo.Rivero@sun.com, Jie.Shen@sun.com
Message-id: <4715763C.2070206@Sun.COM>
MIME-version: 1.0
Content-type: text/plain; format=flowed; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.2.0.264296
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
 <47150501.2040704@sun.com>
 <b9c544f0710161151l5c77761ek390b4eb8044c9af9@mail.gmail.com>
 <47155F83.20803@Sun.COM>
 <b9c544f0710161812v528da1ddgff9059e5433b10d@mail.gmail.com>
User-Agent: Thunderbird 2.0.0.0 (X11/20070419)
Status: RO
Content-Length: 702


>>     Source for Ruby is available on http://opensolaris.org.
>>     
>
> Should that be:
>
> "The source code for this version of Ruby is available from
> http://src.opensolaris.org."
>
> Is there a more specific URL that the source will be at?
>
>   

 The source will be visible using http://src.opensolaris.org since it 
will be a part of Nevada.  Are there any other ways to obtain the 
source?(ie., any planned cd/dvd downloads etc.,).   If so, then I feel 
we should link to the main page.

Else, I'll change the case.
 -ps

-- 
Prashant Srinivasan
F/OSS Enthusiast
Sun Microsystems, Inc.
http://blogs.sun.com/prashant
GnuPG key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x82FBDE5A



From jyri@buye.red.iplanet.com Wed Oct 17 00:46:06 2007
Received: from sunmail5.uk.sun.com (sunmail5.UK.Sun.COM [129.156.85.165])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9H7k5LC001347
	for <psarc-ext@sac.sfbay.sun.com>; Wed, 17 Oct 2007 00:46:06 -0700 (PDT)
Received: from brm-avmta-1.central.sun.com (brm-avmta-1.Central.Sun.COM [129.147.4.11])
	by sunmail5.uk.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l9H7gad3025502;
	Wed, 17 Oct 2007 08:42:37 +0100 (BST)
Received: from pmxchannel-daemon.brm-avmta-1.central.sun.com by
 brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ100001PEZHI00@brm-avmta-1.central.sun.com>; Wed,
 17 Oct 2007 01:42:36 -0600 (MDT)
Received: from buye.red.iplanet.com ([192.18.65.224])
 by brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ100EWLPEY4K40@brm-avmta-1.central.sun.com>; Wed,
 17 Oct 2007 01:42:35 -0600 (MDT)
Received: from buye.red.iplanet.com (localhost [127.0.0.1])
	by buye.red.iplanet.com (8.13.7+Sun/8.13.7) with ESMTP id l9H7Z4E5017383; Wed,
 17 Oct 2007 00:35:04 -0700 (PDT)
Received: (from jyri@localhost)
	by buye.red.iplanet.com (8.13.7+Sun/8.13.7/Submit) id l9H7Z4La017382; Wed,
 17 Oct 2007 00:35:04 -0700 (PDT)
Date: Wed, 17 Oct 2007 00:35:04 -0700
From: Jyri Virkki <Jyri.Virkki@Sun.COM>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <b9c544f0710161812v528da1ddgff9059e5433b10d@mail.gmail.com>
To: Shawn Walker <swalker@opensolaris.org>
Cc: Prashant Srinivasan <Prashant.Srinivasan@Sun.COM>, chris.zhu@Sun.COM,
        Cynthia.Hardenbrook@Sun.COM, psarc-ext@Sun.COM, Hugo.Rivero@Sun.COM,
        Jie.Shen@Sun.COM
Message-id: <20071017073504.GB17361@sun.com>
MIME-version: 1.0
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Content-disposition: inline
X-PMX-Version: 5.2.0.264296
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
 <47150501.2040704@sun.com>
 <b9c544f0710161151l5c77761ek390b4eb8044c9af9@mail.gmail.com>
 <47155F83.20803@Sun.COM>
 <b9c544f0710161812v528da1ddgff9059e5433b10d@mail.gmail.com>
User-Agent: Mutt/1.5.11
Status: RO
Content-Length: 497

Shawn Walker wrote:
>
> > NOTES
> >
> >     Source for Ruby is available on http://opensolaris.org.
> 
> Should that be:
> 
> "The source code for this version of Ruby is available from
> http://src.opensolaris.org."
> 
> Is there a more specific URL that the source will be at?


The text

   "NOTES

       Source for <foo> is available on http://opensolaris.org."

is the standard verbiage inserted into sfw consolidation manpages.


-- 
Jyri J. Virkki - jyri.virkki@sun.com - Sun Microsystems

From sch@rosseau.sfbay.sun.com Wed Oct 17 09:35:01 2007
Received: from sunmail4.Singapore.Sun.COM (sunmail4.Singapore.Sun.COM [129.158.71.19])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9HGZ0vF010951
	for <psarc-ext@sac.sfbay.Sun.COM>; Wed, 17 Oct 2007 09:35:00 -0700 (PDT)
Received: from nwk-avmta-1.SFBay.Sun.COM (nwk-avmta-1.SFBay.Sun.COM [129.146.11.74])
	by sunmail4.Singapore.Sun.COM (8.13.4+Sun/8.13.3/ENSMAIL,v2.2) with ESMTP id l9HGVRnp012796;
	Thu, 18 Oct 2007 00:31:34 +0800 (SGT)
Received: from pmxchannel-daemon.nwk-avmta-1.sfbay.Sun.COM by
 nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQ20061FDWI9G00@nwk-avmta-1.sfbay.Sun.COM>; Wed,
 17 Oct 2007 09:31:30 -0700 (PDT)
Received: from rosseau.sfbay.sun.com ([129.146.228.252])
 by nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQ2004WPDWH20B0@nwk-avmta-1.sfbay.Sun.COM>; Wed,
 17 Oct 2007 09:31:29 -0700 (PDT)
Received: from rosseau.sfbay.sun.com (localhost [127.0.0.1])
	by rosseau.sfbay.sun.com (8.14.1+Sun/8.14.1) with ESMTP id l9HGO02P007189;
 Wed, 17 Oct 2007 09:24:00 -0700 (PDT)
Received: (from sch@localhost)
	by rosseau.sfbay.sun.com (8.14.1+Sun/8.14.1/Submit) id l9HGO0jb007188; Wed,
 17 Oct 2007 09:24:00 -0700 (PDT)
Date: Wed, 17 Oct 2007 09:24:00 -0700
From: Stephen Hahn <sch@sun.com>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <b9c544f0710161812v528da1ddgff9059e5433b10d@mail.gmail.com>
To: Shawn Walker <swalker@opensolaris.org>
Cc: Prashant Srinivasan <Prashant.Srinivasan@sun.com>, chris.zhu@sun.com,
        Cynthia.Hardenbrook@sun.com, "Garrett D'Amore" <gdamore@sun.com>,
        psarc-ext@sun.com, Hugo.Rivero@sun.com,
        Jyri Virkki <jyri@sac.sfbay.sun.com>, Jie.Shen@sun.com
Message-id: <20071017162400.GD7130@eng.sun.com>
Organization: Solaris Kernel Development; Sun Microsystems, Inc.
MIME-version: 1.0
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Content-disposition: inline
X-PMX-Version: 5.2.0.264296
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
 <47150501.2040704@sun.com>
 <b9c544f0710161151l5c77761ek390b4eb8044c9af9@mail.gmail.com>
 <47155F83.20803@Sun.COM>
 <b9c544f0710161812v528da1ddgff9059e5433b10d@mail.gmail.com>
User-Agent: Mutt/1.5.7i
Status: RO
Content-Length: 1085

* Shawn Walker <swalker@opensolaris.org> [2007-10-17 01:13]:
> On 16/10/2007, Prashant Srinivasan <Prashant.Srinivasan@sun.com> wrote:
> > Thanks for the feedback.  I've removed the below mentioned paragraph.
> > I've also inlined a modified copy of the ARC case to the bottom of this
> > email.
> >  -ps
> 
> <snip!>
> 
> > NOTES
> >
> >     Source for Ruby is available on http://opensolaris.org.
> 
> Should that be:
> 
> "The source code for this version of Ruby is available from
> http://src.opensolaris.org."
> 
> Is there a more specific URL that the source will be at?

  The boilerplate SFW "Source for ____ is available on
  http://opensolaris.org" is in part my fault--because I am not certain
  that we understand how the consolidations and other source delivering
  functions will migrate around the domain, over the lifetime of the
  distributions that might include the manual pages in question.

  Assuming the existence of a src.opensolaris.org seems pretty safe.
  (What it might do could change, of course.)

  - Stephen

-- 
sch@sun.com  http://blogs.sun.com/sch/

From jyri@buye.red.iplanet.com Thu Oct 25 10:41:14 2007
Received: from sunmail3mpk.sfbay.sun.com (sunmail3mpk [129.146.11.52])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id l9PHfEOM021580
	for <psarc-ext@sac.sfbay.sun.com>; Thu, 25 Oct 2007 10:41:14 -0700 (PDT)
Received: from nwk-avmta-2.sfbay.sun.com (nwk-avmta-2.SFBay.Sun.COM [129.145.155.6])
	by sunmail3mpk.sfbay.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.2) with ESMTP id l9PHbhrf009367;
	Thu, 25 Oct 2007 10:37:43 -0700 (PDT)
Received: from pmxchannel-daemon.nwk-avmta-2.sfbay.sun.com by
 nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0JQH00901AAVDS00@nwk-avmta-2.sfbay.sun.com>; Thu,
 25 Oct 2007 10:37:43 -0700 (PDT)
Received: from buye.red.iplanet.com ([192.18.65.224])
 by nwk-avmta-2.sfbay.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0JQH001XAAAUNCE0@nwk-avmta-2.sfbay.sun.com>; Thu,
 25 Oct 2007 10:37:42 -0700 (PDT)
Received: from buye.red.iplanet.com (localhost [127.0.0.1])
	by buye.red.iplanet.com (8.13.7+Sun/8.13.7) with ESMTP id l9PHbgoH021853; Thu,
 25 Oct 2007 10:37:42 -0700 (PDT)
Received: (from jyri@localhost)
	by buye.red.iplanet.com (8.13.7+Sun/8.13.7/Submit) id l9PHbgOG021852; Thu,
 25 Oct 2007 10:37:42 -0700 (PDT)
Date: Thu, 25 Oct 2007 10:37:42 -0700
From: Jyri Virkki <Jyri.Virkki@sun.com>
Subject: Re: Including Ruby 1.8 with Solaris [PSARC/2007/600 FastTrack timeout
 10/24/2007]
In-reply-to: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
To: psarc-ext@sun.com
Cc: Chris.Zhu@sun.com, Cynthia.Hardenbrook@sun.com, Hugo.Rivero@sun.com,
        Jie.Shen@sun.com, Prashant.Srinivasan@sun.com
Message-id: <20071025173742.GA21848@sun.com>
MIME-version: 1.0
Content-type: text/plain; charset=us-ascii
Content-transfer-encoding: 7BIT
Content-disposition: inline
X-PMX-Version: 5.2.0.264296
References: <200710161819.l9GIJOdL011146@sac.sfbay.sun.com>
User-Agent: Mutt/1.5.11
Status: RO
Content-Length: 239


This case has timed out and is now closed approved.

I updated the materials with an edited copy from the project team
containing the changes discussed earlier in this thread.


-- 
Jyri J. Virkki - jyri.virkki@sun.com - Sun Microsystems

