Skip to content

Powered by Grav

The original scripts (2009)

The original scripts (2009)

The public BOA repository's history begins in January 2010. These three shell scripts are older: dated 20 November 2009, they are the oldest surviving BOA code — the direct ancestors of Barracuda and Octopus, written in the months when the whole approach was still being worked out on a single VPS. They were preserved in the historical area of the project's static file mirrors, in a directory named alpha3 after the Ægir release they pin (provision-6.x-0.4-alpha3), and they are published here byte-for-byte, 2009-era hardcoded credentials included (long dead — see below).

The three scripts in the mirrors' dev/alpha3 directory, dated 20 November 2009

The find, as found: the mirrors' dev/alpha3 directory — the November 2009 timestamps and the exact byte sizes (5234 / 6255 / 4810) of the copies published below.

They are historical documents, not templates: every URL scheme, repository host and credential in them belongs to 2009, and nothing on this page should ever be run.

What each script did

  • AegirCoreVPSinit.sh — installs the Ægir layer on an already-prepared VPS: creates the aegir system user, checks Drush out of drupal.org CVS, fetches Provision 0.4-alpha3 plus a patch from the omega8.cc/dev/ webroot, branches Pressflow 6 from Launchpad as the base core, assembles the Hostmaster platform with drush hostmaster make, and creates the database. The direct ancestor of Barracuda's Master Ægir setup.
  • AegirCoreVPSupgrade.sh — the upgrade path, with the backup-first discipline already in place: stop cron, copy the platform tree and toolchain aside, mysqldump the hostmaster database, rebuild Drush, Provision and the platform, run drush hostmaster migrate, restart cron, and finish with updatedb. The ancestor of today's barracuda up-* runs.
  • AegirDistrosVPS.sh — builds a set of ready-to-install platforms into a per-account tree under /data/disk/… — recognisably Octopus before Octopus had a name.

What survived

  • The /data tree. The distros script already builds into /data/disk/<account>/…, the same per-account layout every Octopus instance lives in today.
  • The aegir system user — created with its own group and added to the web group, by a command BOA still runs almost verbatim today (master.sh.inc:1075); the privilege split still defines the stack (BOA runs as root; Ægir runs as aegir).
  • Pressflow 6 as the hardened base core, and the eldir theme — named in the config block (its own fetch already commented out in favour of drush hostmaster make) and still the Hostmaster theme today. BOA still hosts Pressflow 6 estates.
  • Tool delivery from a /dev/ web path. The 2009 scripts fetch their patches from omega8.cc/dev/; today's mirrors publish the release trees under dev/<tree>/. Same idea, same directory name, sixteen years apart.
  • The division of labour. One script installs the Ægir layer, one upgrades it, one builds platform sets — the outline of Barracuda's Master Ægir setup, the up-* verbs, and Octopus.

Period details

  • Four version-control systems in three scripts: Drush and drush_make from drupal.org CVS, Pressflow 6 via bzr from Launchpad, Acquia Drupal via SVN, provision_boost and Open Atrium via git (Koumbit and GitHub respectively). That is simply what fetching open source looked like in 2009.
  • The distro menu of 2009: Drupal 5.20, Acquia Drupal, Open Atrium, ProsePoint, Pressflow, Ubercart, OpenPublish, ManagingNews. Most of these are gone — Acquia Drupal, Open Atrium, ProsePoint, OpenPublish and ManagingNews among them — while Pressflow and Ubercart are still installable on BOA today. The list is a snapshot of the Drupal distribution landscape in the year Ægir reached 0.4-alpha3.
  • The credentials. The install and upgrade scripts both pass a literal MySQL root password on the command line, and the install script grants ALL ON *.* to the hostmaster user at '%'. It was 2009, the box was single-tenant, and those passwords died with it. They are preserved unchanged because altering a historical document is worse than blushing at it.

The scripts

Historical listings — never run them. Every URL, repository host and credential below belongs to 2009.

Each listing below is byte-identical to the preserved original; the raw file is linked above each one.

AegirCoreVPSinit.sh

Raw file: AegirCoreVPSinit.sh.txt

BASH
#!/bin/sh

echo ... Install START!

###------------------###
##  Installing Aegir  ##
###------------------###

###---### config
#
ROOT=/data
DISTRO=distro01
DOMAIN=aegir.example.com
#
AEGIROOT="$ROOT/aegir/$DISTRO"
WEB_GROUP=www
DRUSHCMD="/usr/local/bin/php $ROOT/tools/drush/drush.php"
#
DRUSH=drush-All-Versions-HEAD
PROVISION=provision-6.x-0.4-alpha3
HOSTMASTER=hostmaster-6.x-0.4-alpha3
HOSTING=hosting-6.x-0.4-alpha3
ADMINMENU=admin_menu-6.x-3.x-dev
ELDIR=eldir-6.x-0.4-alpha3
PROFILEAPI=install_profile_api-6.x-2.1
JQUERY_UI=jquery_ui-6.x-1.3
MODALFRAME=modalframe-6.x-1.4
BOOST=boost-6.x-1.x-dev
#
#
###---### Add required users and create directories
#
adduser --system --group --home /home/aegir aegir
adduser aegir www
mkdir -p $ROOT/aegir
mkdir -p $ROOT/$DISTRO
mkdir -p $ROOT/src/$DISTRO
mkdir -p $ROOT/src/modules
mkdir -p $ROOT/src/themes
mkdir -p $ROOT/tools
# mkdir -p $ROOT/u/backups
# mkdir -p $ROOT/u/config/vhost.d
mkdir -p $ROOT/aegir/backups
mkdir -p $ROOT/aegir/config/vhost.d
#
#
###---### Build Drush and Provision
#
cd $ROOT/tools
cvs -z6 -d:pserver:anonymous:[email protected]:/cvs/drupal-contrib checkout -d drush contributions/modules/drush/
ln -s $ROOT/tools/drush/drush /usr/sbin/drush
mkdir -p /home/aegir/.drush
cd /home/aegir/.drush
wget http://ftp.drupal.org/files/projects/$PROVISION.tar.gz &&
tar -xzf $PROVISION.tar.gz &&
rm -f $PROVISION.tar.gz
git clone git://git.koumbit.net/drupal/contrib/modules/provision_boost.git &&
cvs -z6 -d:pserver:anonymous:[email protected]:/cvs/drupal-contrib checkout -d drush_make contributions/modules/drush_make/ &&
wget http://omega8.cc/dev/provision.patch.txt &&
patch -p1 <./provision.patch.txt &&
chown -R aegir:www /home/aegir
chmod 700 /home/aegir
#
#
###---### Prepare Pressflow core
#
cd $ROOT/src/$DISTRO
rm -f -r $ROOT/src/$DISTRO/pressflow-6
bzr branch lp:pressflow/6.x pressflow-6 &&
cd $ROOT/src/$DISTRO/pressflow-6/
rm -f $ROOT/src/$DISTRO/pressflow-6/*.txt
wget http://omega8.cc/robots.txt &&
wget http://omega8.cc/dev/index.patch &&
patch -p1 <./index.patch &&
#
#
#
###---### Build Aegir base
#
mkdir -p $AEGIROOT
cd $AEGIROOT
cp -af $ROOT/src/$DISTRO/pressflow-6/* $AEGIROOT/
ln -s $AEGIROOT $ROOT/u/$DOMAIN
mkdir -p $AEGIROOT/sites/all/modules
mkdir -p $AEGIROOT/sites/all/themes
$DRUSHCMD hostmaster make $AEGIROOT &&
# cd $AEGIROOT/profiles
# wget http://ftp.drupal.org/files/projects/$HOSTMASTER.tar.gz &&
# tar -xzf $HOSTMASTER.tar.gz &&
# rm -f $HOSTMASTER.tar.gz
# mkdir -p $AEGIROOT/profiles/hostmaster/modules
# mkdir -p $AEGIROOT/profiles/hostmaster/themes
# cd $AEGIROOT/profiles/hostmaster/modules
# wget http://ftp.drupal.org/files/projects/$HOSTING.tar.gz &&
# tar -xzf $HOSTING.tar.gz &&
# rm -f $HOSTING.tar.gz
cd $AEGIROOT/profiles/hostmaster/modules
rm -f -r $AEGIROOT/profiles/hostmaster/modules/admin_menu
wget http://ftp.drupal.org/files/projects/$ADMINMENU.tar.gz &&
tar -xzf $ADMINMENU.tar.gz &&
rm -f $ADMINMENU.tar.gz
# wget http://ftp.drupal.org/files/projects/$PROFILEAPI.tar.gz &&
# tar -xzf $PROFILEAPI.tar.gz &&
# rm -f $PROFILEAPI.tar.gz
# wget http://ftp.drupal.org/files/projects/$JQUERY_UI.tar.gz &&
# tar -xzf $JQUERY_UI.tar.gz &&
# rm -f $JQUERY_UI.tar.gz
# cd $AEGIROOT/profiles/hostmaster/modules/jquery_ui
# wget http://jquery-ui.googlecode.com/files/jquery.ui-1.6.zip &&
# unzip jquery.ui-1.6.zip &&
# rm -f -r jquery.ui
# mv jquery.ui-1.6 jquery.ui
# rm -f jquery.ui-1.6.zip
# cd $AEGIROOT/profiles/hostmaster/modules/
# wget http://ftp.drupal.org/files/projects/$MODALFRAME.tar.gz
# tar -xzf $MODALFRAME.tar.gz &&
# rm -f $MODALFRAME.tar.gz
wget http://ftp.drupal.org/files/projects/$BOOST.tar.gz
tar -xzf $BOOST.tar.gz &&
rm -f $BOOST.tar.gz
# cd $AEGIROOT/profiles/hostmaster/themes/
# wget http://ftp.drupal.org/files/projects/$ELDIR.tar.gz &&
# tar -xzf $ELDIR.tar.gz &&
# rm -f $ELDIR.tar.gz
cp -af $ROOT/src/$DISTRO/pressflow-6/* $AEGIROOT/
cd $AEGIROOT
mkdir $AEGIROOT/sites/$DOMAIN
cp $AEGIROOT/sites/default/default.settings.php $AEGIROOT/sites/$DOMAIN/settings.php
chmod g+w $AEGIROOT/sites/$DOMAIN/settings.php
mkdir $AEGIROOT/sites/$DOMAIN/files
chmod 2770 $AEGIROOT/sites/$DOMAIN/files
chgrp $WEB_GROUP $AEGIROOT/sites/$DOMAIN/settings.php
chgrp $WEB_GROUP $AEGIROOT/sites/$DOMAIN/files
#
#
#
###---### Set permissions for all
#
rm -f -r $ROOT/$DISTRO/*/modules/php
chown -R aegir:www $ROOT/aegir
chown -R aegir:www $ROOT/$DISTRO
chown -R aegir:www $ROOT/u
chown -R aegir:www $ROOT/tools
# chown -R aegir $ROOT/u/backups
# chown -R aegir $ROOT/u/config
# chmod a+X $ROOT/u/config
# chmod 700 $ROOT/u/backups
chown -R aegir $ROOT/aegir/backups
chown -R aegir $ROOT/aegir/config
chmod a+X $ROOT/aegir/config
chmod 700 $ROOT/aegir/backups
#
#
###---### Create database for Aegir
#
#
/usr/bin/mysqladmin -u root -h localhost --port=3306 --password=NdKBu34erty325r6mUHxWy create hostmaster &&
/usr/bin/mysql -h localhost --port=3306 --password=NdKBu34erty325r6mUHxWy -u root mysql<<EOFMYSQL
FLUSH PRIVILEGES;
GRANT ALL PRIVILEGES ON *.* TO 'hostmaster'@'%' IDENTIFIED BY 'Bu34erty3aegir25r6mUH' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EOFMYSQL
/usr/bin/mysqladmin -u root -h localhost --port=3306 --password=NdKBu34erty325r6mUHxWy reload &&
echo database ready
#
echo ...... DONE!

AegirCoreVPSupgrade.sh

Raw file: AegirCoreVPSupgrade.sh.txt

BASH
#!/bin/sh

echo ... Upgrade START!

###------------------###
##    Upgrade Aegir   ##
###------------------###

###---### custom config
#
DOMAIN=aegir.example.com
ROOT=/data
DISTRO=distro02
OLD_DISTRO=distro01
#
#
###---### config
#
AEGIR_ROOT_CLASSIC="$ROOT/aegir/pressflow-aegir"
if [ -e $AEGIR_ROOT_CLASSIC ] ; then
OLD_AEGIROOT="$AEGIR_ROOT_CLASSIC"
else
OLD_AEGIROOT="$ROOT/aegir/$OLD_DISTRO"
fi
#
AEGIROOT="$ROOT/aegir/$DISTRO"
WEB_GROUP=www
DRUSHCMD="/usr/local/bin/php $ROOT/tools/drush/drush.php"
#
DRUSH=drush-All-Versions-HEAD
PROVISION=provision-6.x-0.4-alpha3
HOSTMASTER=hostmaster-6.x-0.4-alpha3
HOSTING=hosting-6.x-0.4-alpha3
ADMINMENU=admin_menu-6.x-3.x-dev
ELDIR=eldir-6.x-0.4-alpha3
PROFILEAPI=install_profile_api-6.x-2.1
JQUERY_UI=jquery_ui-6.x-1.3
MODALFRAME=modalframe-6.x-1.4
BOOST=boost-6.x-1.x-dev
#
#
###---### Add required users and create directories
#
mkdir -p $ROOT/$DISTRO
mkdir -p $ROOT/src/$DISTRO
mkdir -p $ROOT/aegir/backups
mkdir -p $ROOT/aegir/config/vhost.d
#
#
###---### Create backup
#
TIMES=`date +%y%m%d-%H%M%S`
/etc/init.d/cron stop &&
mkdir -p $ROOT/aegir/backup/$OLD_DISTRO/$TIMES
mkdir -p $ROOT/aegir/backup/$OLD_DISTRO/$TIMES/tools
mkdir -p $ROOT/aegir/backup/$OLD_DISTRO/$TIMES/aegir
mkdir -p $ROOT/aegir/backup/$OLD_DISTRO/$TIMES/db
cp -af /home/aegir/.drush $ROOT/aegir/backup/$OLD_DISTRO/$TIMES/
cp -af $ROOT/tools/* $ROOT/aegir/backup/$OLD_DISTRO/$TIMES/tools/
cp -af $OLD_AEGIROOT $ROOT/aegir/backup/$OLD_DISTRO/$TIMES/aegir/
/usr/bin/mysqldump --port=3306 --default-character-set=utf8 -h localhost --password=NdKBu34erty325r6mUHxWy -Q -C -e --hex-blob --add-drop-table -q -u root hostmaster > $ROOT/aegir/backup/$OLD_DISTRO/$TIMES/db/hostmaster-$TIMES.sql &&
#
### for upgrade only
#
#
#
#
###---### Build Drush and Provision
#
cd $ROOT/tools
rm -f -r $ROOT/tools/drush
cvs -z6 -d:pserver:anonymous:[email protected]:/cvs/drupal-contrib checkout -d drush contributions/modules/drush/
rm -f /usr/sbin/drush
ln -s $ROOT/tools/drush/drush /usr/sbin/drush
cd /home/aegir/.drush
rm -f -r /home/aegir/.drush/provision
rm -f /home/aegir/.drush/provision.patch.txt
rm -f -r /home/aegir/.drush/provision_boost
rm -f -r /home/aegir/.drush/drush_make
wget http://ftp.drupal.org/files/projects/$PROVISION.tar.gz &&
tar -xzf $PROVISION.tar.gz &&
rm -f $PROVISION.tar.gz
cd /home/aegir/.drush
git clone git://git.koumbit.net/drupal/contrib/modules/provision_boost.git &&
cvs -z6 -d:pserver:anonymous:[email protected]:/cvs/drupal-contrib checkout -d drush_make contributions/modules/drush_make/ &&
cd /home/aegir/.drush
wget http://omega8.cc/dev/provision.patch.txt &&
patch -p1 <./provision.patch.txt &&
chown -R aegir:www /home/aegir
chmod 700 /home/aegir
#
#
###---### Prepare Pressflow core
#
cd $ROOT/src/$DISTRO
rm -f -r $ROOT/src/$DISTRO/pressflow-6
bzr branch lp:pressflow/6.x pressflow-6 &&
cd $ROOT/src/$DISTRO/pressflow-6/
rm -f $ROOT/src/$DISTRO/pressflow-6/*.txt
wget http://omega8.cc/robots.txt &&
wget http://omega8.cc/dev/index.patch &&
patch -p1 <./index.patch &&
#
#
#
###---### Build Aegir base
#
cd $OLD_AEGIROOT && $DRUSHCMD hostmaster migrate $DOMAIN $AEGIROOT &&

# rm -f -r $AEGIROOT
# rm -f $ROOT/u/$DOMAIN
# mv -f $ROOT/aegir/pressflow-aegir $ROOT/aegir/pressflow-aegir-back-$DISTRO
# mkdir -p $ROOT/aegir/pressflow-aegir
# cd $ROOT/aegir/pressflow-aegir
cp -af $ROOT/src/$DISTRO/pressflow-6/* $AEGIROOT/
# rm -f $ROOT/aegir/pressflow-aegir/*.txt
# wget http://omega8.cc/robots.txt &&
# ln -s $ROOT/aegir/pressflow-aegir $AEGIROOT
# ln -s $ROOT/aegir/pressflow-aegir $ROOT/u/$DOMAIN
# mkdir -p $AEGIROOT/sites/all/modules
# mkdir -p $AEGIROOT/sites/all/themes
# cd $AEGIROOT/profiles
# rm -f -r $AEGIROOT/profiles/hostmaster
# cvs -z6 -d:pserver:anonymous:[email protected]:/cvs/drupal-contrib checkout -d hostmaster contributions/profiles/hostmaster/ &&
# mkdir -p $AEGIROOT/profiles/hostmaster/modules
# mkdir -p $AEGIROOT/profiles/hostmaster/themes
# cd $AEGIROOT/profiles/hostmaster/modules
# cvs -z6 -d:pserver:anonymous:[email protected]:/cvs/drupal-contrib checkout -d hosting contributions/modules/hosting/ &&
# cd $AEGIROOT/profiles/hostmaster/modules
# wget http://ftp.drupal.org/files/projects/$ADMINMENU.tar.gz &&
# tar -xzf $ADMINMENU.tar.gz &&
# rm -f $ADMINMENU.tar.gz
# wget http://ftp.drupal.org/files/projects/$PROFILEAPI.tar.gz &&
# tar -xzf $PROFILEAPI.tar.gz &&
# rm -f $PROFILEAPI.tar.gz
# wget http://ftp.drupal.org/files/projects/$JQUERY_UI.tar.gz &&
# tar -xzf $JQUERY_UI.tar.gz &&
# rm -f $JQUERY_UI.tar.gz
# cd $AEGIROOT/profiles/hostmaster/modules/jquery_ui
# wget http://jquery-ui.googlecode.com/files/jquery.ui-1.6.zip &&
# unzip jquery.ui-1.6.zip &&
# rm -f -r jquery.ui
# mv jquery.ui-1.6 jquery.ui
# rm -f jquery.ui-1.6.zip
# cd $AEGIROOT/profiles/hostmaster/modules/
# wget http://ftp.drupal.org/files/projects/$MODALFRAME.tar.gz
# tar -xzf $MODALFRAME.tar.gz &&
# rm -f $MODALFRAME.tar.gz
# wget http://ftp.drupal.org/files/projects/$BOOST.tar.gz
# tar -xzf $BOOST.tar.gz &&
# rm -f $BOOST.tar.gz
# cd $AEGIROOT/profiles/hostmaster/themes/
# cvs -z6 -d:pserver:anonymous:[email protected]:/cvs/drupal-contrib checkout -d eldir contributions/themes/eldir/ &&
# mkdir -p $AEGIROOT/sites/default/files
# mkdir -p $AEGIROOT/files
# cp $ROOT/$TIMES/aegir/pressflow-aegir/sites/default/settings.php $AEGIROOT/sites/default/ &&
# if test -f $AEGIROOT/sites/default/settings.php ; then
# echo ... settings.php exist ...
# echo ... continue ...
# sleep 8
# else
# cp -af $AEGIROOT/sites/default/default.settings.php $AEGIROOT/sites/default/settings.php
# chmod a+rw $AEGIROOT/sites/default/settings.php
# fi
# chmod a+rwx $AEGIROOT/sites/default/files
#
#
#
###---### Set permissions for all
#
rm -f -r $ROOT/$DISTRO/*/modules/php
chown -R aegir:www $ROOT/aegir
chown -R aegir:www $ROOT/$DISTRO
# chown -R aegir:www $ROOT/u
chown -R aegir:www $ROOT/tools
# chown -R aegir $ROOT/u/backups
# chown -R aegir $ROOT/u/config
# chmod a+X $ROOT/u/config
# chmod 700 $ROOT/u/backups
chown -R aegir $ROOT/aegir/backups
chown -R aegir $ROOT/aegir/config
chmod a+X $ROOT/aegir/config
chmod 700 $ROOT/aegir/backups
/etc/init.d/cron start &&
#
#
cd $AEGIROOT && $DRUSHCMD updatedb root='/data/u/$DOMAIN' --uri='$DOMAIN'
#
#
echo ...... DONE!

AegirDistrosVPS.sh

Raw file: AegirDistrosVPS.sh.txt

BASH
#!/bin/sh

echo ... START!

###------------------###
##  Installing Aegir  ##
###------------------###

###---### config
#
ROOT=/data/disk/aquarius
DISTRO=distro01
DRUPAL5=drupal-5.20
PROSEPOINT=0.28
UBERCART=ubercart
OPENPUBLISH=1.5.1-309
MANAGINGNEWS=1.0-beta5
#
#
###---### Add required users and create directories
#
mkdir -p $ROOT/$DISTRO
mkdir -p $ROOT/src/$DISTRO
mkdir -p $ROOT/src/modules
mkdir -p $ROOT/src/themes
#
#
###---### Prepare Pressflow core
#
cd $ROOT/src/$DISTRO
rm -f -r $ROOT/src/$DISTRO/pressflow-6
bzr branch lp:pressflow/6.x pressflow-6 &&
cd $ROOT/src/$DISTRO/pressflow-6/
rm -f $ROOT/src/$DISTRO/pressflow-6/*.txt
wget http://omega8.cc/robots.txt &&
wget http://omega8.cc/dev/index.patch &&
patch -p1 <./index.patch &&
#
#
###---### Drupal 5
#
cd $ROOT/$DISTRO/
wget http://ftp.drupal.org/files/projects/$DRUPAL5.tar.gz &&
tar -xzf $DRUPAL5.tar.gz &&
rm -f $DRUPAL5.tar.gz
cd $ROOT/$DISTRO/$DRUPAL5
rm -f $ROOT/$DISTRO/$DRUPAL5/*.txt
wget http://omega8.cc/robots.txt &&
mkdir ./sites/default/files
# cp ./sites/default/default.settings.php ./sites/default/settings.php
chmod a+rw ./sites/default/settings.php
chmod a+rwx ./sites/default/files
#
#
###---### Acquia
#
mkdir -p $ROOT/$DISTRO/acquia
cd $ROOT/$DISTRO/acquia
svn co https://svn.acquia.com/drupal/branches/1.x-6.x .
cp -af $ROOT/src/$DISTRO/pressflow-6/* $ROOT/$DISTRO/acquia/
rm -f $ROOT/$DISTRO/acquia/*.txt
wget http://omega8.cc/robots.txt &&
mkdir ./sites/default/files
cp ./sites/default/default.settings.php ./sites/default/settings.php
chmod a+rw ./sites/default/settings.php
chmod a+rwx ./sites/default/files
#
#
###---### Open Atrium
#
cd $ROOT/$DISTRO/
git clone git://github.com/developmentseed/Atrium.git &&
mv $ROOT/$DISTRO/Atrium $ROOT/$DISTRO/atrium
cd $ROOT/$DISTRO/atrium
cp -af $ROOT/src/$DISTRO/pressflow-6/* $ROOT/$DISTRO/atrium/
rm -f $ROOT/$DISTRO/atrium/*.txt
wget http://omega8.cc/robots.txt &&
mkdir ./sites/default/files
cp ./sites/default/default.settings.php ./sites/default/settings.php
chmod a+rw ./sites/default/settings.php
chmod a+rwx ./sites/default/files
#
#
###---### Prosepoint
#
cd $ROOT/$DISTRO/
wget http://launchpad.net/prosepoint/trunk/$PROSEPOINT/+download/prosepoint-$PROSEPOINT.tar.gz &&
tar -xzf prosepoint-$PROSEPOINT.tar.gz &&
rm -f prosepoint-$PROSEPOINT.tar.gz
cd $ROOT/$DISTRO/prosepoint-$PROSEPOINT
cp -af $ROOT/src/$DISTRO/pressflow-6/* $ROOT/$DISTRO/prosepoint-$PROSEPOINT/
rm -f $ROOT/$DISTRO/prosepoint-$PROSEPOINT/*.txt
wget http://omega8.cc/robots.txt &&
mkdir ./sites/default/files
cp ./sites/default/default.settings.php ./sites/default/settings.php
chmod a+rw ./sites/default/settings.php
chmod a+rwx ./sites/default/files
#
#
###---### Pressflow
#
mkdir -p $ROOT/$DISTRO/pressflow
cp -af $ROOT/src/$DISTRO/pressflow-6/* $ROOT/$DISTRO/pressflow/
cd $ROOT/$DISTRO/pressflow
mkdir ./sites/default/files
cp ./sites/default/default.settings.php ./sites/default/settings.php
chmod a+rw ./sites/default/settings.php
chmod a+rwx ./sites/default/files
#
#
###---### Ubercart
#
cd $ROOT/$DISTRO/
wget http://omega8.cc/dev/$UBERCART.tar.gz &&
tar -xzf $UBERCART.tar.gz &&
cd $ROOT/$DISTRO/$UBERCART
cp -af $ROOT/src/$DISTRO/pressflow-6/* $ROOT/$DISTRO/$UBERCART/
rm -f $ROOT/$DISTRO/$UBERCART/*.txt
wget http://omega8.cc/robots.txt &&
mkdir ./sites/default/files
cp ./sites/default/default.settings.php ./sites/default/settings.php
chmod a+rw ./sites/default/settings.php
chmod a+rwx ./sites/default/files
#
#
###---### OpenPublish
#
cd $ROOT/$DISTRO/
wget http://www.opensourceopenminds.com/sites/default/files/releases/openpublish-$OPENPUBLISH.tar.gz &&
tar -xzf openpublish-$OPENPUBLISH.tar.gz &&
rm -f openpublish-$OPENPUBLISH.tar.gz
cp -af $ROOT/src/$DISTRO/pressflow-6/* $ROOT/$DISTRO/openpublish/
cd $ROOT/$DISTRO/openpublish/profiles
rm -f -r $ROOT/$DISTRO/openpublish/profiles/openpublish
wget http://omega8.cc/dev/openpublish_installer.tar.gz &&
tar -xzf openpublish_installer.tar.gz &&
rm -f openpublish_installer.tar.gz &&
cd $ROOT/$DISTRO/openpublish
mkdir ./sites/default/files
chmod a+rw ./sites/default/settings.php
chmod a+rwx ./sites/default/files
#
#
###---### ManagingNews
#
cd $ROOT/$DISTRO/
wget http://managingnews.com/files/managingnews-$MANAGINGNEWS.zip &&
unzip managingnews-$MANAGINGNEWS.zip &&
rm -f managingnews-$MANAGINGNEWS.zip
cp -af $ROOT/src/$DISTRO/pressflow-6/* $ROOT/$DISTRO/managingnews-$MANAGINGNEWS/
cd $ROOT/$DISTRO/managingnews-$MANAGINGNEWS
mkdir ./sites/default/files
cp ./sites/default/default.settings.php ./sites/default/settings.php
chmod a+rw ./sites/default/settings.php
chmod a+rwx ./sites/default/files
#
#
###---### Set permissions for all
#
rm -f -r $ROOT/$DISTRO/*/modules/php
cp -af $ROOT/src/$DISTRO/pressflow-6/modules/php $ROOT/$DISTRO/openpublish/modules/
chown -R aegir:www $ROOT/$DISTRO
#
#
echo ...... DONE!

© 2026 BOA Documentation. All rights reserved.