Gadgets Installation
Created by: Douglas Hunter
Permissions: read[all users] edit[all users] reply[all users]

mkdir -p /ob/gadgets/build/

cd /ob/gadgets/build/

perl -MCPAN -e shell; install LWP::UserAgent quit

Apache/mod-perl

wget http://www.modssl.org/source/mod_ssl-2.8.31-1.3.41.tar.gz wget http://perl.apache.org/dist/mod_perl-1.0-current.tar.gz wget http://www.poolsaboveground.com/apache/httpd/apache_1.3.41.tar.gz

UNDER MAC OS X also execute because linking against the system libraries is broken:

wget http://www.openssl.org/source/openssl-0.9.8g.tar.gz tar xvfz openssl-0.9.8g.tar.gz cd openssl-0.9.8g ./config make

END MAC OS X HUNK

tar -zxvf apache_1.3.41.tar.gz tar -zxvf mod_perl-1.0-current.tar.gz tar -zxvf mod_ssl-2.8.31-1.3.41.tar.gz

cd /ob/gadgets/build/mod_ssl-2.8.31-1.3.41 ./configure --with-apache=../apache_1.3.41 # MAC OS X: ./configure --with-apache=../apache_1.3.41 --with-ssl=../openssl-0.9.8g cd /ob/gadgets/build/mod_perl-1.30/

perl Makefile.PL USE_APACI=1 EVERYTHING=1 SSL_BASE=SYSTEM \ APACHE_PREFIX=/ob/gadgets/apache-gadgets/ \ APACI_ARGS=--enable-module=ssl,--enable-module=rewrite

MAC OS X HUNK

perl Makefile.PL USE_APACI=1 EVERYTHING=1 SSL_BASE=/path/to/downloaded/and/configured/openssl \ APACHE_PREFIX=/ob/gadgets/apache-gadgets/ \ APACI_ARGS=--enable-module=ssl,--enable-module=rewrite

END MAC OS X HUNK

make test make install

inside the Apache::Test install above, path to httpd => /ob/gadgets/apache-gadgets/bin/httpd

Comma

mkdir /ob/gadgets/comma

/usr/sbin/usermod -a -G apache USERNAME re-login

perl -MCPAN -e shell; install Class::ClassDecorator Clone Crypt::Blowfish Crypt::CBC DBI Digest::HMAC_MD5 Inline Lingua::Stem Math::BaseCalc PAR Proc::Exists String::CRC get DBD::mysql quit

You may need to do a: sudo yum install mysql-devel.x86_64 if you don't already have the mysql dev files

cd /root/.cpan/build/DBD-mysql-4.006 # or wherever your CPAN is configured # to store build files perl Makefile.PL make test; make install;

cd .. (back to root of build directory)

svn co https://chronicle.allafrica.com:8080/repository/trunk/XML-Comma /ob/gadgets/build/XML-Comma

cd /ob/gadgets/build/XML-Comma perl Makefile.PL

make

make test # t/indexing....................ok 1/0grep: # .test/usr/local/comma/log.comma: No such file or directory # may fail, that's okay make install

yum install gd-devel.x86_64

perl -MCPAN -e shell; force install HTML::FromText install Apache::DBI Class::Container Convert::UU GD GD::Image::Thumbnail HTML::Mason::Plugin HTML::TreeBuilder i18n JSON Lingua::EN::Numbers MIME::Lite Crypt::Twofish Email::Address quit`

Gadgets

svn co https://chronicle.allafrica.com:8080/repository/branches/Gadgets-Oblong/ /ob/gadgets/build/Gadgets

cd /ob/gadgets/build/Gadgets perl Makefile.pl make make install

Qmail

mkdir /ob/gadgets/mail/ mkdir /ob/gadgets/mail/qmail mkdir /ob/gadgets/mail/ucspi-tcp

mkdir /ob/gadgets/mail/daemontools

mkdir /ob/gadgets/build/qmail cd /ob/gadgets/build/qmail wget http://www.qmail.org/netqmail-1.06.tar.gz wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz

tar -zxvf netqmail-1.06.tar.gz tar -zxvf ucspi-tcp-0.88.tar.gz

cd /ob/gadgets/build/qmail/netqmail-1.06 head -15 INSTALL.ids | grep "#" | perl -lne 's|^\s+#\s+(.*)$|/usr/sbin/$1|; s|/var/|/ob/gadgets/mail/|; print;' > IDS chmod +x IDS ./IDS

perl -i -p -e 's|/var/qmail|/ob/gadgets/mail/qmail|' conf-qmail

make setup check

./config-fast gadgets.yourdomain.com

cd /ob/gadgets/build/qmail/ucspi-tcp-0.88 patch < /ob/gadgets/build/qmail/netqmail-1.06/other-patches/ucspi-tcp-0.88.errno.patch perl -i -p -e 's|/usr/local|/ob/gadgets/mail/ucspi-tcp|' conf-home

make make setup check

NOTE: Now we're going to install the damontools package. It's not easily relocatable, as it needs to write to the inittab during the installation, so we'll simply follow the instructions in section 2.7 here http://lifewithqmail.org/lwq.html#installation instead of mucking about

mkdir /package cd /package /ob/gadgets/build/qmail/daemontools-0.76.tar.gz . tar -zxvf daemontools-0.76.tar.gz cd /package/admin/daemontools-0.76/src/ patch < /ob/gadgets/build/qmail/netqmail-1.06/other-patches/daemontools-0.76.errno.patch cd /package/admin/daemontools-0.76/ package/install

end damontools installation


echo "./Maildir/" > /ob/gadgets/mail/qmail/control/defaultdelivery
cp /ob/gadgets/build/qmail/setupfiles/rc /ob/gadgets/mail/qmail/

cp /ob/gadgets/build/qmail/setupfiles/qmailctl /ob/gadgets/mail/qmail/bin/
mkdir -p /ob/gadgets/mail/qmail/supervise/qmail-send/log
mkdir -p /ob/gadgets/mail/qmail/supervise/qmail-smtpd/log

cp /ob/gadgets/build/qmail/setupfiles/qmail-send-run /ob/gadgets/mail/qmail/supervise/qmail-send/run
cp /ob/gadgets/build/qmail/setupfiles/qmail-send-log-run /ob/gadgets/mail/qmail/supervise/qmail-send/log/run

cp /ob/gadgets/build/qmail/setupfiles/qmail-smtpd-run /ob/gadgets/mail/qmail/supervise/qmail-smtpd/run
cp /ob/gadgets/build/qmail/setupfiles/qmail-smtpd-log-run /ob/gadgets/mail/qmail/supervise/qmail-smtpd/log/run

chmod 755 /ob/gadgets/mail/qmail/supervise/qmail-send/run
chmod 755 /ob/gadgets/mail/qmail/supervise/qmail-send/log/run
chmod 755 /ob/gadgets/mail/qmail/supervise/qmail-smtpd/run
chmod 755 /ob/gadgets/mail/qmail/supervise/qmail-smtpd/log/run

mkdir -p /ob/gadgets/mail/log/qmail/smtpd
chown qmaill /ob/gadgets/mail/log/qmail /ob/gadgets/mail/log/qmail/smtpd

echo 20 > /ob/gadgets/mail/qmail/control/concurrencyincoming
echo '127.:allow,RELAYCLIENT=""' >>/ob/gadgets/mail/ucspi-tcp/tcp.smtp
/ob/gadgets/mail/qmail/bin/qmailctl cdb

/sbin/chkconfig sendmail off

cp /ob/gadgets/build/Gadgets/misc/bin/email_wiki_posts_from_cron.pl /ob/gadgets/mail/qmail/bin/
cp /ob/gadgets/build/Gadgets/misc/bin/process_email_relay.pl /ob/gadgets/mail/qmail/bin/
cp /ob/gadgets/build/Gadgets/misc/bin/process_email_wikipost.pl /ob/gadgets/mail/qmail/bin/
cp /ob/gadgets/build/Gadgets/misc/bin/process_email_wikireply.pl /ob/gadgets/mail/qmail/bin/

chown root:qmail /ob/gadgets/mail/qmail/bin/*.pl

cp /ob/gadgets/build/qmail/setupfiles/qmail* /ob/gadgets/mail/qmail/alias/

chown -R apache:nofiles /ob/gadgets/comma/
chmod -R 664 /ob/gadgets/comma/

ln -s /ob/gadgets/mail/qmail/supervise/qmail-send /service
ln -s /ob/gadgets/mail/qmail/supervise/qmail-smtpd /service