Opensource software for Solaris (OBSOLETE)
Introduction
The setup is based on
http://www.blastwave.org/. Consider the setup in CS to be BETA.
We have setup at
core.cs:/opt/csw/
which is on the netapp and consequently is backed up.
An automount setup has been put in place on other hosts.
Conflicts with Xhier
Note that this collection of software has a version of tset that's incompatible
with the version distributed by xhier, and therefore will break peoples' login
scripts if csw comes first in one's PATH. (
Possible Fix. Use
xh-ln
to link
in xhier version. To ensure that running
pkg-get upgrade
would not clobber
this link would entail writing a cover for
pkg-get
in the same way that there
already exists a cover for
apt-get
in the
xhier
package
debian-1
that
uninstalls xhier redirects prior to updating CSW packages)
Automount Setup
To the automount setup. Setup a mount point:
-
mkdir -p /autofs/software
-
ln -s /autofs/software/csw /opt/csw
Set up the automount maps in
/etc/auto_master
:
# New open source software directory
/autofs/software auto_software
Create
/etc/auto_software
:
# csw tree is the opensource software we're getting from
# http://www.blastwave.org/. We do the install of the software
# on core.cs using /opt/csw/bin/pkg-get which installs it on the
# fs102.cs file server. The backup host then rsync's fs102.cs to
# fs02.student.cs file server that night.
#
csw -ro,soft,intr,nosuid,vers=3 fs-software.cs.uwaterloo.ca:/software/csw fs-software.student.cs.uwaterloo.ca(5):/vol/software/csw
Solaris 8:
Ensure
/etc/init.d/autofs
is present (along with
/etc/rc{0,1,S}.d/K41autofs
and
/etc/rc2.d/S74autofs
.
Run
/etc/init.d/autofs start
. Maybe consider putting /opt/csw/bin last in
your PATH, but note that some xhier packages may conflict so watch out for
that.
Some packages install startup scripts into
/etc/init.d/
and
/etc/rc?.d/
which are directories
local to a given host. It's not clear where the post install script are located for a given package
since these are need to install on the automount client hosts. Note that
/var/sadm/
is where
Sun's packaging tools store state information and they do have some scripts in here
under
/var/sadm/pkg//install
. For example,
/var/sadm/pkg/CSWcupsd/install/.:
total 112
drwxr-xr-x 2 root other 512 Oct 24 13:05 .
drwxr-xr-x 4 root other 512 Oct 24 13:05 ..
-rw-r--r-- 1 root other 390 Sep 8 13:17 checkinstall
-rw-r--r-- 1 root other 48724 Sep 8 13:21 copyright
-rw-r--r-- 1 root other 378 Sep 8 13:17 depend
-rw-r--r-- 1 root other 150 Sep 8 13:17 postremove
-rw-r--r-- 1 root other 1044 Sep 8 13:17 preremove
-rw-r--r-- 1 root other 192 Sep 8 13:17 space
Solaris 10
- Check for an existing automount daemon:
- restart it:
-
svcadm restart svc:/system/filesystem/autofs
Accessing /opt/csw software
To access the software, users will need to add
/opt/csw/bin
to their PATH variable. Probably it's best to add it to the end, to avoid conflicts, mentioned above.
Updating the Software and Configuration
I have examined
/opt/csw/etc/pkg-get.conf
used by
pkg-get
. Clearly these tools are analogues of the Debian
counterparts of
/etc/apt/sources.list
and
apt-get
, respectively. According to
http://www.blastwave.org/userguide
there are two choices of repositories of packages, known, respectively as
stable
and
unstable
. To choose one
or the other we do:
To select stable or unstable , set the url= entry in
/opt/csw/etc/pkg-get.conf to point to a mirror's unstable or stable
subdirectory.
I did one
pkg-get upgrade
to
unstable and then edited the above file to say
stable. I think
if we intend to offer this to our users making it
stable is appropriate.
For information on the uage of
pkg-get
, see
man page
and
Howto.
To update CSW packages, logon to core.cs and run
pkg-get -U
and
pkg-get upgrade
. You may be prompted
to remove older versions of packages. Provided they don't remove the configuration files associated
to a package you should answer
y
.
See
http://www.blastwave.org/standards/pkgcreation.php for some guidance on how the packages are organized.
Automount Setup is not sufficient for some packages
Some packages have daemons in them and thus install init scripts into
/etc/init.d/
and
/etc/rc?.d/
which are
local to the host and so require that the package be installed locally. In particular
CUPS.