Manual:Running MediaWiki on Solaris 9

For Solaris, one can do a native installation, or use one of the package providers. = OpenCSW = http://www.opencsw.org offers a packaging strategy inspired by http://debian.org. Installing the Mediawiki Solaris package is straightforward and installs the dependencies automatically.

pkgadd -d http://mirror.opencsw.org/opencsw/pkg_get.pkg pkg-get install apache2 mediawiki mysql

= native =

The toolsets built into MediaWiki and Bugzilla provide a freely available boost toward the management of product development. This reference document derives from my first experience instantiating MediaWiki [and Bugzilla] software stacks on Solaris 9. It is intended as a guide for others who walk this path. It is intended to be refined and automated.

Software Stack Selection
MediaWiki is architected using the PHP language, HTTP document services, and a relational back-end database. These are the components of the software stack chosen to operate MediaWiki:


 * MySQL 4.1.13
 * Apache 1.3.x
 * PHP 5.0.4
 * MediaWiki 1.4.7

The following packages obtained from http://sunfreeware.com are required to support retrieval, installation, and/or configuration of the above components. Indented items indicate supporting pre-requisites for the parent package.


 * gunzip or bunzip2
 * tar (GNU or Solaris Ok)
 * pkgadd
 * wget
 * lynx
 * ncurses
 * iconv
 * GCC 3.4.2
 * make
 * autoconf
 * m4
 * ImageMagick 6.4.2
 * your favorite text editor

Selection criteria
Additional notes regarding the decision trees leading to the matrix above.

The driving project goal was to get operational as quickly as possible. Total configurability and control is the desirable characteristic of open source tooling for the experienced integrator with very clear use cases. The same characteristic is a pitfall of decision tree paralysis for the novice integrator. Build on the shoulders of giants: select pre-built binaries where possible. Configuration refinements can and will be made "later"--when operational needs are better quantified and personal experience is greater.

Blastwave.org and Sunfreeware.org are the premiere sites for pre-packaged Solaris software. Blastwave builds all of its packages using Sun's FORTE compiler tool stack. Sunfreeware builds all of its packages using the GNU compiler collection (GCC) [with Sun's linker and loader at the back-end of the tool chain for object level compatibility]. The decision tilted to Sunfreeware.org:


 * out of the need to compile PHP, because the pre-packaged copies at both Sunfreeware and Blastwave were not compatible with the pre-built and configured Apache 1.3.x;


 * out of convenience of access and installation of the GCC suite on the target platform for compiling PHP. Footnote: Our organization licenses the Sun FORTE suite, but the necessary products were not installed and configured on the target test platform.


 * we already use a variety of Sunfreeware packages and are familiar with the file-system organization and layout encouraged by that group of package maintainers.

Blastwave.org is worth a revisit for automating this installation. Its package install and dependency checking support is thorough.

Note: the "Solaris Software Companion" CD has most or all of this software already Danx 23:15, 4 November 2005 (UTC)

Policy Considerations
MediaWiki is perceived here as a collaborative documentation tool with effective version control and increasingly capable document management features.


 * Everyone in the organization should be able to read and comment on the documentation.
 * Only traceable and authenticated users may create and revise the published content.

We will likely deploy a read-only version for remote reference, synchronized from a master read-write version.

Data Storage Considerations
Our documents reference a considerable amount of imagery for laboratory equipment integration, development and deployment: image and media upload must be enabled. Accordingly, due consideration must be given to storage requirements (location and mass) for these common resources.