Solaris

What's the difference between SunOS and Solaris?

Question: 

What's the difference between SunOS and Solaris? What's a SPARC? Do SPARC packages run on Intel/x86?

Answer: 

The terms SunOS and Solaris both refer to the Solaris operating environment released by Sun Microsystems (http://www.sun.com/). Several years ago they were separate products, but now they are one and the same. SunOS was replaced in marketing material by Solaris, but there are still some places in a modern Solaris system where SunOS is made reference to (most notably in the output of "uname").

SunOS version numbers that might be seen today range from 4.x (pre-Solaris versions of SunOS) to 5.10 (which corresponds to Solaris 2.10 or Solaris 10).

Solaris version numbers that are common range from 2.5 (a.k.a. Solaris 5) to 2.10 (a.k.a. Solaris 10). The "2." prefix is not used in marketing material for Solaris -- it is only used internally.

Putting this all together, SunOS 5.10 is the same beast as Solaris 2.10 which is the same as Solaris 10.

As well as having multiple names and multiple version identifiers, Solaris runs primarily on two types of CPUs. One is the SPARC architecture, which is an advanced RISC architecture, and the other is the Intel/x86 architecture. Sun Microsystems is the primary source of SPARC-based systems, while the x86 version of Solaris runs on commodity IA32 (x86) and AMD x86_64 machines. The two machine types are not compatible; packages for SPARC will not run on x86, and vice versa.

A notable feature of Solaris is that modern versions of the operating system will often have no problems running programs built for earlier versions. For example, ActivePerl built on Solaris 6 will run without issue on Solaris 10. The converse is not true, however. Programs built on a given version of the system will usually not work on an earlier version.

Recently there has been an initiative called OpenSolaris (http://www.opensolaris.org/) that embodies the next version of Solaris. Currently code-named Nevada, it forms the basis for what will be Solaris 11 (a.k.a. Solaris 2.11, a.k.a. SunOS 5.11). Compatibility with software built for earlier versions of Solaris is expected to be mostly kept.

Unattended installation of ActivePerl in a custom directory on Solaris

Question: 

I need to install ActivePerl in a custom directory on Solaris without any user interaction. How can I do that?

Answer: 

There are two ways to install ActivePerl in a custom directory on Solaris such that the installation can be run unattended.

The first is to use the "--license-accepted --prefix /path/to/install/to" arguments to the install.sh provided in the Tar/Gzip ActivePerl package:

gnutar zxf ActivePerl-solaris-package.tar.gz
cd ActivePerl-directory
sh install.sh --license-accepted --prefix /opt/ActiveState/ActivePerl

The above can be used in a shell script, for example.

Alternatively, you can make your own Solaris package. This has the benefit of registering ActivePerl with the Solaris packaging system, making upgrades easier in some cases. A good tutorial on making Solaris packages can be found here:

http://www.sunfreeware.com/pkgadd.html