Search:  
Gentoo Wiki

Sun_Ray

Contents

SRSS on Gentoo/Linux

The following instructions are a quick HOWTO which explains how to install SRSS4.0 on a Gentoo2007.0 system. Aside a custom archive of required ebuilds, it explains how to successfully set up a base installation of SRSS under Gentoo2007.0. Large portions of this guide assume that the installation is performed on a pure 32-bit x86 system because the sunray archive supplied by SUN is known to contain 32bit binaries only. The installation, however, is known to be running also on 64bit systems such as amd64. All you need is the set of 'emul-linux-x86-XXXX' packages installed on Gentoo in addition to some other 32bit library binaries.

Installation

 emerge -v gdm
 emerge -v tftp-hpa
 http://wiki.sun-rays.org/images/3/37/Sunray_gentoo_v0.1.tar.bz2
 PORTDIR_OVERLAY="/usr/local/portage"
 sunray
 sunray/srss -* *
 sunray/SUNWutfw -* *
 sunray/SUNWutgsm -* *
 sunray/SUNWkior -* *
 sunray/SUNWutsto -* *
 sunray/SUNWutr -* *
 sunray/SUNWutwl -* *
 sunray/SUNWuttsc -* *
 sunray/SUNWutps -* *
 sunray/SUNWutio -* *
 sunray/SUNWutwar -* *
 sunray/SUNWduto -* *
 sunray/SUNWutprol -* *
 sunray/SUNWuti -* *
 sunray/SUNWuto -* *
 sunray/SUNWutm -* *
 sunray/SUNWutdso -* *
 sunray/SUNWutkau -* *
 sunray/SUNWutwh -* *
 sunray/SUNWkiom -* *
 sunray/SUNWutu -* *
 sunray/SUNWutwa -* *
 sunray/SUNWkio -* *
 sunray/SUNWutref -* *
 sunray/SUNWutdsk -* *
 sunray/SUNWutstr -* *
 sunray/SUNWutdsr -* *
 sunray/SUNWuttsc-kiosk -* *
 sunray/SUNWlibusbut -* *
 sunray/SUNWuta -* *
 srss_4.0_linux.zip - http://www.sun.com/software/sunray
 srwc_2.0_linux.zip - http://www.sun.com/software/sunray
 127555-02.zip - http://sunsolve.sun.com/search/document.do?assetkey=urn:cds:docid:1-21-127555-02-1
 127558-01.zip - http://sunsolve.sun.com/search/document.do?assetkey=urn:cds:docid:1-21-127558-01-1
 128167-01.zip - http://sunsolve.sun.com/search/document.do?assetkey=urn:cds:docid:1-21-128167-01-1
 SUNWutprol-0.9-1.i386.rpm - http://www.sun.com/download/products.xml?id=42f00055
 sunray/srss web kiosk doc uttsc prolific
 sunray/SUNWkio doc
 sunray/SUNWuttsc pcsc-lite
 emerge -v x11-misc/xkbdata

If x11-misc/xkbdata blocked by x11-misc/xkeyboard-config, uninstall x11-misc/xkeyboard-config before installing x11-misc/xkbdata.

 emerge -v sunray/srss
 cd /usr
 ln -s ../usr X11R6
 eselect java-vm
 cd /usr/lib32
 ln -s libldap.so libldap.so.199
 ln -s liblber.so liblber.so.199

Also libsasl2.so.2 is required. However, there doesn't seem to be an emul-linux-x86-XXXX package for a 32bit version of libsasl2. So you might perfectly grab a 32bit binary from a different system and install it in /usr/lib32.

 /opt/SUNWut/sbin/utadm -A network_number
 /opt/SUNWut/lib/utctl.d/features/utcompatlinksctl enable; ldconfig
 /opt/SUNWut/sbin/utconfig
 Configure Sun Ray Web Administration? ([y]/n)? y
 Enter Apache Tomcat installation directory [/usr/share/tomcat-6]:
 Enter HTTP port number [1660]:
 Enable secure connections? ([y]/n)? y
 Enter HTTPS port number [1661]:
 Enter Tomcat process username [utwww]:
 Enable remote server administration? (y/[n])? y
 Configure Sun Ray Kiosk Mode? (y/[n])?
 Configure this server for a failover group? (y/[n])
 destination sunray_messages { file("/var/opt/SUNWut/log/messages" perm(0640) owner(root) group(utadmin)); };
 destination sunray_admin_log { file("/var/opt/SUNWut/log/admin_log" perm(0640) owner(root) group(utadmin)) ; };
 filter sunray_messages { facility(user) and level(info); };
 filter sunray_admin_log { facility(local1) and level(info); };
 log { source(src); filter(sunray_messages); destination(sunray_messages); };
 log { source(src); filter(sunray_admin_log); destination(sunray_admin_log); };
 PATH="/opt/SUNWut/bin"
 ROOTPATH="/opt/SUNWut/sbin:/opt/SUNWut/bin"
 MANPATH="/opt/SUNWut/share/man"

then run env-update after you created that file.

 /etc/init.d/xinetd restart
 /etc/init.d/xdm restart
 /etc/init.d/srss start
 /etc/init.d/syslog-ng restart

Notes

Bugs/ToDo

/usr/share/fonts/encodings/large/jisx0208.1990-0.enc.gz and edit /usr/share/fonts/encodings/large/encodings.dir.

  1. Not tested. Use fontserver to access True Type fonts.
  2. Download http://mirror.centos.org/centos/4/os/i386/CentOS/RPMS/freetype-2.1.9-6.el4.i386.rpm and install rpm to system with following commands
 rpm2cpio freetype-2.1.9-6.el4.i386.rpm | cpio -idmv
 cp -P usr/lib/libfreetype.so.* /opt/SUNWut/lib/
 ldconfig

Create file /usr/bin/Xnewt.sh

 touch /usr/bin/Xnewt.sh
 chmod 755 /usr/bin/Xnewt.sh

with content

 #!/bin/sh
 export LD_PRELOAD="/etc/opt/SUNWut/basedir/lib/libfreetype.so.6":${LD_PRELOAD}
 exec /usr/bin/Xnewt $@

Then apply following patch

 --- /opt/SUNWut/lib/xmgr/gdm/add-dpy.orig       2008-06-06 19:36:56.000000000 +0300
 +++ /opt/SUNWut/lib/xmgr/gdm/add-dpy    2008-06-06 19:37:09.000000000 +0300
 @@ -64,7 +64,7 @@
  xcdesc="DisplayManager.*_%d.exportList: SUN_SUNRAY_TOKEN=$token CORONA_TOKEN=$token"
  if [ "$type" = normal ]
  then
 -       xsdesc=":%d SunRay local /usr/bin/Xnewt :%d"
 +       xsdesc=":%d SunRay local /usr/bin/Xnewt.sh :%d"
  else
         xsdesc="# :%d RESERVED"
  fi
 --- /opt/SUNWut/lib/utxinit.orig        2008-06-06 19:43:10.000000000 +0300
 +++ /opt/SUNWut/lib/utxinit     2008-06-06 20:02:24.000000000 +0300
 @@ -101,7 +101,7 @@
  then
  
         XSERVER="/bin/false"
 -       for XSERVERBIN in /usr/openwin/bin/Xsun /usr/bin/Xnewt ; do
 +       for XSERVERBIN in /usr/openwin/bin/Xsun /usr/bin/Xnewt.sh ; do
                 if [ -x $XSERVERBIN ] ; then
                         XSERVER=$XSERVERBIN
                         break
 --- /opt/SUNWut/lib/utxsun.orig 2008-06-06 19:50:59.000000000 +0300
 +++ /opt/SUNWut/lib/utxsun      2008-06-06 19:51:22.000000000 +0300
 @@ -8,7 +8,7 @@
  INFODIR=/var/opt/SUNWut
  RESDIR=$INFODIR/dispinfo
  SUNWUTBIN=/opt/SUNWut/bin
 -XSUN=/usr/bin/Xnewt
 +XSUN=/usr/bin/Xnewt.sh
  # XSERVER can be 1 of Xsun  (on sparc with openwin)
  #                     Xnewt (on linux with mit-based static server)
  #                     Xorg  (on linux with xorg-based static server)
 @@ -58,7 +58,7 @@
      fi
  fi
  
 -if [ "${XSUN##*/}" = "Xnewt" ]; then
 +if [ "${XSUN##*/}" = "Xnewt.sh" ]; then
      # turn on the backingstore for the static Xnewt server
      XMOREOPTS="$XMOREOPTS +bs"
  fi

com.sun.ut.service.ServiceException: /etc/opt/SUNWut/basedir/lib/utprodinfo -p SUNWkio Kiosk NAME VERSION PSTAMP , ErrorCode: 1

 [blocks B     ] x11-misc/xkeyboard-config (is blocking x11-misc/xkbdata-1.0.1-r10)
 [blocks B     ] x11-misc/xkbdata (is blocking x11-misc/xkeyboard-config-1.2)

So xkeyboard-config is blocking xkbdata which needs to be resolved in some future version of this SRSS packages for gentoo.

Everywhere in ebuild from /usr/portage construction used

 || ( x11-misc/xkeyboard-config x11-misc/xkbdata )

except >=x11-base/xorg-server/xorg-server-1.4.0.90-r3. So, maybe, workaround is to add following lines to /etc/portage/package.mask

 >=x11-base/xorg-server-1.4.0.90-r3

It seems that in future versions of gentoo ebuilds x11-misc/xkbdata dependency would be removed, but xkb files in old format from x11-misc/xkbdata required for Xnewt.

 /etc/dhcp/dhcp.conf
 /etc/conf.d/net

When running /opt/SUNWut/sbin/utconfig and/or /etc/init.d/utsyscfg script, it can modify

 /etc/xinetd.d/tftp
 /etc/pam.d/gdm-srss
 /etc/pam.d/utadmingui
 /etc/pam.d/utselfreg
 /etc/nsswitch.conf
 /etc/services
 /etc/syslog.conf

and run following commands

 rc-config add dhcpd
 rc-config delete dhcpd

At first, I supposed to disable such weird behavior, but then decided to keep port to gentoo as close as possible to original version of sunray software.

Retrieved from "http://www.gentoo-wiki.info/Sun_Ray"

Last modified: Wed, 01 Oct 2008 09:20:00 +0000 Hits: 1,114