Getting SRSS to work on OpenSolaris: An evolving recipe for hacking SRSS/OpenSolaris to work together
Contents:
Goals for this page
This page is an evolving attempt at providing a recipe that can be followed to get SRSS running on OpenSolaris (2008.05 or later). Over time, the plan is to refine this page as knowledge and the product evolves until SRSS officially supports OpenSolaris seamlessly (target release unknown at this time). Initially it will require some ugly hacks and code that has not been tested thoroughly, and not everything will work as expected. The reader will have to carefully weigh their desire to achieve an OpenSolaris desktop against the risk that they may screw up their testbed. This documentation should not be construed as a recommendation to try it in any environment that you care about. Obviously there is no plan to address patching or upgrades of this software at this time.
Basic functioning desktop, August 13, 2008
Required
To get a basic functioning desktop at this time, you will need the following pieces:
Instructions
- Install and boot OpenSolaris 2008.05
- Fix networking to use a static address: edit /etc/nwam/llp to contain:
NIC static IP/maskbits
where NIC is the name of your network interface, IP is the desired IP address, and maskbits is the length of your netmask. I use:
e1000g0 static 172.16.0.43/16
e1000g1 static 192.168.128.43/24
to configure both a primary and a dedicated network address. Then restart NWAM via:
svcadm restart nwam
- Make sure your networking is fully configured to use DNS (edit /etc/nsswitch.conf to add 'dns' to the 'hosts' line, and make sure /etc/resolv.conf has appropriate entries)
- Install SRSS
- Configure the Xsession.d/xinitrc.d area:
# mkdir -p /etc/X11/xinit/xinitrc.d
# ln -s /etc/opt/SUNWut/xinitrc.d/0100.SUNWut /etc/X11/xinit/xinitrc.d
# ln -s /etc/opt/SUNWut/xinitrc.d/0010.SUNWut.xdmEnv /etc/X11/xinit/xinitrc.d
- Enable use of GDM by SRSS
# touch /etc/opt/SUNWut/ut_enable_gdm
- edit /etc/opt/SUNWut/auth.props and set allowLANconnections=true
Note that you can alternatively install the DHCP and TFTP packages and use utadm -A or utadm -L
- update /etc/pam.conf to add these stacks for gdm:
gdm auth requisite /opt/SUNWut/lib/pam_sunray_hotdesk.so.1
gdm auth requisite /opt/SUNWut/lib/sunray_get_user.so.1 property=username
gdm auth required /opt/SUNWut/lib/pam_sunray_amgh.so.1
gdm auth sufficient /opt/SUNWkio/lib/pam_kiosk.so log=user ignoreuser
gdm auth requisite /opt/SUNWkio/lib/pam_kiosk.so log=user
gdm auth sufficient /opt/SUNWut/lib/pam_sunray.so
gdm auth requisite /opt/SUNWut/lib/sunray_get_user.so.1 prompt
gdm auth required /opt/SUNWut/lib/pam_sunray_amgh.so.1 clearuser
gdm auth requisite pam_authtok_get.so.1
gdm auth required pam_dhkeys.so.1
gdm auth required pam_unix_cred.so.1
gdm auth required pam_unix_auth.so.1
gdm account sufficient /opt/SUNWkio/lib/pam_kiosk.so log=user
gdm account sufficient /opt/SUNWut/lib/pam_sunray.so
gdm account requisite pam_roles.so.1
gdm account required pam_unix_account.so.1
gdm session requisite /opt/SUNWut/lib/pam_sunray_hotdesk.so.1
gdm session required /opt/SUNWkio/lib/pam_kiosk.so log=user
gdm session required pam_unix_session.so.1
gdm password required pam_dhkeys.so.1
gdm password requisite pam_authtok_get.so.1
gdm password requisite pam_authtok_check.so.1
gdm password required pam_authtok_store.so.1
# /opt/SUNWut/sbin/utconfig
# /opt/SUNWut/sbin/utpolicy -a -g -z both -D
# /opt/SUNWut/sbin/utrestart -c
Enjoy your shiny new OpenSolaris SRSS environment!
Known to work
- Basic session creation/login
- policies
- audio
- USB device detection and node creation (although ownership is wrong)
- utconfig/SRDS
- FOGs/utreplica
- utadm (if you install the necessary OpenSolaris DHCP and TFTP packages first: SUNWdhcs SUNWdhcsb SUNWdhcm SUNWtftp)
Possibly not working
- Kiosk configurations that use dtwm
- USB device mounts (probably due to wrong owner)
- NSCM (can be made to work by adding packages, but see 'Known issues' below)
- RHA (can be made to work by adding packages, but see 'Known issues' below)
- utmhscreen (can be made to work by adding packages, but see 'Known issues' below)
Suspected to not work
- utselect (no dtksh)
- utwall (no dterror.ds)
Known major issues
- loginGUI depends on SUNWmfrun (libXm.so.4) (affects NSCM, SC, and RHA)
- loginGUI depends on SUNWdtbas (libDtWidget.so.2) (affects NSCM, SC, and RHA)
- loginGUI depends on SUNWtltk (libtt.so.2) (affects NSCM and SC, and RHA)
- loginGUI depends on SUNWxwptl (libXt.so.4) (this was broken in OS2008.05, fixed in nv_93: Bug ID 6683217)
- After adding the above packages - very long startup delay in loginGUI (XListFonts) but NSCM and RHA eventually work
- Adding the above packages may break OpenSolaris legacy symlinks (e.g. /usr/openwin) and cause unknown collateral damage with legacy applications
Due to the loginGUI startup delay and issues related to adding the above packages to OpenSolaris, it is recommended at this time that NSCM not be configured, and that the -D option be used with utpolicy to avoid RHA. Although NSCM and RHA can be used and do function properly, the startup delays may be unacceptably lengthy.