Bruce Rothermal wrote: > > I have questions about packaging and install of an opensource package > I'm working on. The source is all php so there is no compile/build. > The package is a web application "MediaWiki". Install instructions say > that it requires a web server like Apache and a few others which > amounts to the amp consolidation package. The package is then to be > extracted to a web-accessible folder on the server. I take that to > mean it is some where in the web servers accessible folders. So the > standard /usr location may not be appropriate here. Can someone please > advise as to any area that is standardized for OpenSolaris?
We (webstack-discuss at opensolaris.org - you may want to participate there as well if you'll be porting some of these php apps) have talked about these kinds of apps on and off. BTW don't depend on 'amp', that brings in too much. Depend on the specific components it actually needs. I favor delivering the static binaries (they may be written in PHP but that's an implementation detail) under /usr somewhere since that's where static binaries go, if possible. For an example take a look at the Drupal delivered in Web Stack repo: http://pkg.opensolaris.org/webstack/manifest/0/drupal%406.3%2C5.11-1%3A20090310T220655Z All the application files live under /usr/drupal/* Config file is under /etc/drupal/ (with a link from usr/drupal/sites) Drupal's layout made it very easy to make the clean partitioning work. Maybe some other apps make that harder to do than others though. I haven't tried it with MediaWiki. Something to explore. Finally, the package delivers /etc/apache2/2.2/samples-conf.d/drupal.conf containing a configuration ready to go for Apache 2.2. Note the config is dropped into samples-conf.d so user can link to it from conf.d as soon as they're ready to make the site go live. Another benefit here is that Drupal is not tied to apache2. If users want to use this drupal package with a different web server that'll work fine since the bits are in a generic location under /usr and /etc. Apache being common, it delivers samples-conf.d for apache2 as a nicety (see below) but doesn't in any way limit the package to be useful only for Apache. > Also would > the packaging contain each individual file in the source package or > bring down to the user machine the tar.gz file with instruction file > to unpack as needed. That I find almost[1] entirely pointless. If all it does is drop a tarball somewhere, it's actually easier to ignore your package and simply download the tarball from mediawiki.org which has the added benefit of getting me the very latest version! If there's going to be a package, the package should really deliver some added value so there is a benefit to doing 'pkg install mediawiki' instead of 'wget mediawiki.org/latest.tar.gz' (not the real URL..) One good way to deliver that added value is with a ready-to-go configuration tuned to OpenSolaris, such as in the drupal example above. [1] Still has the benefit of bringing in dependencies. -- Jyri J. Virkki - jyri.virkki at sun.com - Sun Microsystems
