Existing Solaris packaging stuff

Since there is no "linux-like" Solaris distributions (in terms of: number of apps., support, coherency,...) you would think that finding pre-compiled software packages is difficult. But strangely, there is redundant work in this area. Since too much redundancy often implies waste, we think some convergence here would be good.

Note: it seems almost no one (excepts Sun) defines dependencies between SVR4 packages (such as: package bar needs packaged library foolib).
A notable exception is Community SoftWare for Solaris (read below), which provides packages with explicit dependencies, automatically fetched with the pkg-get utility.

Solaris-Only Resources

Sunfreeware and its SunSITE mirrors propose an impressive list of pre-compiled packages of free software (using the SVR4 pkg format) alongside plenty of useful documentation.
The ibiblio Solaris page
is an alternative "Solaris package archive", also featuring insightful packaging documentation. It is mirrored by SunSITE. Instead of using the usual PaCkAgE DaTaStReAm SVR4 format, the maintainer avoids the pkgtrans Sun tool by simply tar.gz-ing the SVR4 directory structure.
Yet another Solaris packages repository. This one is located in Poland.
The companion CD
is Sun's packages repository. Its specificities are: - it's mainly available on CD; - it's more or less (on a app.-by-app. basis) "supported" by Sun; - downloading requires registration (and there are no mirrors).
Community SoftWare for Solaris
is an effort to build and distribute binary packages. Using pkg-get is the repository's normal access method.
Philip Brown's Solaris page
Interesting Solaris scripts and advices, including the very nice pkg-get "one-shot" install script. (automates download and install procedures for SVr4 packages)
The Solaris Package System ("solpkg") is a framework and repository of Makefile "recipes" that can be used to build Solaris packages out of software source tarballs. It supplies the missing link between widely available source and Solaris binaries.
Note: this project looks quite like pkgsrc -- it works the same way (it builds elements of a package tree), but is mono-platform.
... is a huge and noisy Solaris links table, with some interesting packaging pointers inside.

Multi-OS stuff

The NetBSD packages collection
...is a multi-platform 'port' of NetBSD's packaging system, pkgsrc. More details and links below.
Cable & Wireless has developed internal tools to reduce the TCO of an hybrid pool of unix machines ("Currently Solaris, Linux and FreeBSD are officially and fully supported. Additionally, NetBSD, OpenBSD, and Compaq Tru64 are unofficially and/or partly supported."). Their system is loosely based on the RPM format. They have just released all their code under a original-BSD -like licence.
Open Packages
This system's primary target is {Free,Net,Open}BSD (and about unifying efforts among these), but also targets other OS like Solaris and MacOSX. This project seems to be active and to have produced nice specifications. Their goals are as wide as those of common linux distributions. They have their own package .ops format, but this is just a directory structure tar-ed and bzip-ed.
...is Darwin's package management system of choice. It's not really "multi-OS" (yet), but has stolen and adapted some Debian packaging software for MacOSX, as well as some concepts from the BSD pkgsrc packaging infrastrucutre.
Ben Collins, one of the Debian Project leader, once ported the Debian packaging tools for Solaris. It's now old and probably not very well tested. Collins has of course other priorities on his agenda.
It seems softagency, a japanese company, has built a similar but much more recent version, and that on Mark A. Hershberger's web pages, one can find an even slightly more up-to-date version! More information on this apparent mess is welcome.
Debian, GNU, OpenBSD
Some guys are trying to make the debian packaging system work upon OpenBSD, so they may have found good solutions to some technical issues.
buildpkg is a bunch of scripts which provides a meta-packaging functionality: a single, abstract .def configuration file allows the building of several different packages from source. Solaris' format is supported.

Further related sites

About the Debian packaging system

The Debian GNU/Linux FAQ:
Chapter 6 - Basics of the Debian Package Management System;
Chapter 7 - The Debian Package Management Tools
An easy introduction to the Debian GNU/Linux package management system.
APT How-to
This document intends to provide the user with a good understanding of the workings of the Debian package management utility, APT. Its goal is to make life easier for new Debian users and to help those who wish to deepen their understanding of the administration of this system. It was created for the Debian project in order to help improve the support available for users of this distribution.
Debian New Maintainers' Guide
Quoted from debian.org: "This document will try to describe building of a Debian GNU/Linux package to the common Debian user (and wannabe developer) in common language, and well covered with working examples."
Debian Policy Manual
This manual describes the policy requirements for the Debian GNU/Linux distribution. This includes the structure and contents of the Debian archive, several design issues of the operating system, as well as technical requirements that each package must satisfy to be included in the distribution.

About the NetBSD packaging system

The NetBSD packages collection (pkgsrc)
The NetBSD Packages Collection is a set of software utilities and libraries which have been ported to NetBSD. The packages collection software can
  1. Retrieve the software from its home site or a mirror (assuming you are connected in some way to the Internet).
  2. Verify its integrity.
  3. Apply any patches.
  4. Configure the software for NetBSD, then build and install.
  5. Track all installed files to permit easy removal of software using the packaging utilities.
  6. Optionally create a binary package that can be installed on other hosts.
Any prerequisite software will also be automatically downloaded, built, and installed.
Documentation on the NetBSD Package System (plain text)
pkgsrc for Solaris and other non-NetBSD systems
The NetBSD Packages Collection provides an easy way to install, remove and maintain 3rd party software on a NetBSD system. It provides a set of Makefiles and patches (called pkgsrc) which makes building 3rd party software from source easier. The idea of Zoularis is to port the build system to operating systems other than NetBSD. This was originally done for the Solaris operating system by Christos Zoulas (hence the name "Zoularis").

On this page, you will find Zoularis binary kits for various operating systems that will enable you to use the pkgsrc source tree to build software for your system.


Exhaustive Sun documentation repository. Efficient search engine. Includes the lengthy reference "Application Packaging Developer's Guide", inside the "Solaris N Software Developer Collection". This collection can be found for instance inside the documentation node "Subject Categories->Programming->Tools". Of course you can start to read pkgadd, etc. man pages before that.
Sun's involvement in open source software (not necessarily free). Official company site.
Is RPM Doomed?
This rant around RPM contains in fact very interesting ideas and comparisons about packaging and life in general.
Debian Documentation Project
This is a point of comparison: we should achieve something so complete!