Index: openacs-4/packages/acs-core-docs/www/xml/install-guide/other-software.xml =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/xml/install-guide/other-software.xml,v diff -u -r1.30 -r1.31 --- openacs-4/packages/acs-core-docs/www/xml/install-guide/other-software.xml 7 Aug 2017 23:47:55 -0000 1.30 +++ openacs-4/packages/acs-core-docs/www/xml/install-guide/other-software.xml 8 Nov 2017 09:42:12 -0000 1.31 @@ -73,7 +73,7 @@ [root tmp]# Debian users: apt-get install psgml - Note: The new nxml mode for emacs, when used in combination with psgml, provides a pretty good set of functionality that makes DocBook editing much less painless. In particular, nxml does syntax testing in real-time so that you can see syntax errors immediately instead of in the output of the xsltproc hours or days later. For debian, apt-get install nxml. + Note: The new nxml mode for emacs, when used in combination with psgml, provides a pretty good set of functionality that makes DocBook editing much less painless. In particular, nxml does syntax testing in real-time so that you can see syntax errors immediately instead of in the output of the xsltproc hours or days later. For Debian, apt-get install nxml. @@ -206,143 +206,25 @@ Install qmail (OPTIONAL) - Qmail is a Mail Transfer Agent. It handles incoming and + Qmail is a secure, reliable, efficient, simple Mail Transfer Agent. It handles incoming and outgoing mail. Install qmail if you want your OpenACS server to send and receive mail, and you don't want to use an alternate MTA. - Red Hat 9: all djb tools (qmail, daemontools, ucspi) will - fail to compile in Red Hat 9 because of changes to glibc (patches) + - Install ucspi - This program handles incoming tcp connections. - Download ucspi and install it. - - [root root]# cd /usr/local/src -[root src]# wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz -[root src]# tar xzf ucspi-tcp-0.88.tar.gz -cd /usr/local/src -wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz -tar xzf ucspi-tcp-0.88.tar.gz - Red Hat 9 only -wget http://moni.csi.hu/pub/glibc-2.3.1/ucspi-tcp-0.88.errno.patch -cd ucspi-tcp-0.88 -patch -p1 <../ucspi-tcp-0.88.errno.patch -cd .. - All platforms continue: -[root src]# cd ucspi-tcp-0.88 -[root ucspi-tcp-0.88]# make -( cat warn-auto.sh; \ -echo 'main="$1"; shift'; \(many lines omitted) -./compile instcheck.c -./load instcheck hier.o auto_home.o unix.a byte.a -[root ucspi-tcp-0.88]# make setup check -./install -./instcheck -[root ucspi-tcp-0.88]# - -cd ucspi-tcp-0.88 -make -make setup check - Verify that ucspi-tcp was installed successfully by -running the tcpserver program which is part of ucspi-tcp: - [root ucspi-tcp-0.88]# tcpserver -tcpserver: usage: tcpserver [ -1UXpPhHrRoOdDqQv ] [ -c limit ] [ -x rules.cdb ] [ -B banner ] [ -g gid ] [ -u uid -] [ -b backlog ] [ -l localname ] [ -t timeout ] host port program -[root ucspi-tcp-0.88]# - - - qmail - rcpthosts error message - -(I'm not sure if this next step is 100% necessary, but when I skip it -I get problems. If you get the error 553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1) then you need to do this.) AOLserver sends outgoing mail via the ns_sendmail -command, which pipes a command to the sendmail executable. Or, in our -case, the qmail replacement wrapper for the sendmail executable. In -some cases, though, the outgoing mail requset is apparently sent -through tcp/ip, so that it comes to qmail from 127.0.0.1 (a special IP -address that means the local machine - the "loopback" interface). -Unless this mail is addressed to the same machine, qmail thinks that -it's an attempt to relay mail, and rejects it. So these two commands -set up an exception so that any mail sent from 127.0.0.1 is allowed to -send outgoing mail. - [root ucspi-tcp-0.88]# cp /tmp/&tarballpath;/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp -[root ucspi-tcp-0.88]# tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp -cp /tmp/&tarballpath;/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp -tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp - - - - Install Qmail - - qmail - installation - - - - Download qmail, - set up the standard supporting users and build the binaries: - [root root]# cd /usr/local/src -[root src]# wget http://www.qmail.org/netqmail-1.04.tar.gz -[root src]# tar xzf netqmail-1.04.tar.gz ---15:04:11-- http://www.qmail.org/netqmail-1.04.tar.gz - => `netqmail-1.04.tar.gz' -Resolving www.qmail.org... done. -Connecting to www.qmail.org[192.203.178.37]:80... connected. -HTTP request sent, awaiting response... 200 OK -Length: 242,310 [application/x-gunzip] - -88% [===============================> ] 214,620 22.93K/s ETA 00:01 - -15:04:21 (24.04 KB/s) - `netqmail-1.04.tar.gz' saved [242310/242310] - -[root src]# mkdir /var/qmail -[root src]# groupadd nofiles -[root src]# useradd -g nofiles -d /var/qmail/alias alias -[root src]# useradd -g nofiles -d /var/qmail qmaild -[root src]# useradd -g nofiles -d /var/qmail qmaill -[root src]# useradd -g nofiles -d /var/qmail qmailp -[root src]# groupadd qmail -[root src]# useradd -g qmail -d /var/qmail qmailq -[root src]# useradd -g qmail -d /var/qmail qmailr -[root src]# useradd -g qmail -d /var/qmail qmails -[root src]# cd netqmail-1.04 -[root netqmail-1.04]# ./collate.sh - -You should see 7 lines of text below. If you see anything -else, then something might be wrong. -[1] Extracting qmail-1.03... -[2] Patching qmail-1.03 into netqmail-1.04. Look for errors below: - 20 -[4] The previous line should say 20 if you used GNU patch. -[5] Renaming qmail-1.03 to netqmail-1.04... -[6] Continue installing qmail using the instructions found at: -[7] http://www.lifewithqmail.org/lwq.html#installation -[root netqmail-1.04]# cd netqmail-1.04 -[root netqmail-1.04]# make setup check -( cat warn-auto.sh; \ -echo CC=\'`head -1 conf-cc`\'; \(many lines omitted) -./install -./instcheck -cd /usr/local/src -wget http://www.qmail.org/netqmail-1.04.tar.gz -tar xzf netqmail-1.04.tar.gz -mkdir /var/qmail -groupadd nofiles -useradd -g nofiles -d /var/qmail/alias alias -useradd -g nofiles -d /var/qmail qmaild -useradd -g nofiles -d /var/qmail qmaill -useradd -g nofiles -d /var/qmail qmailp -groupadd qmail -useradd -g qmail -d /var/qmail qmailq -useradd -g qmail -d /var/qmail qmailr -useradd -g qmail -d /var/qmail qmails -cd netqmail-1.04 -./collate.sh -cd netqmail-1.04 -make setup check - Replace sendmail with qmail's wrapper. + Install qmail + QMail is available as standard Debian/Ubuntu package, + rpms for Fedora/Redhat/CenTOS are available from QMail wiki + page + + + + + Replace sendmail with qmail's wrapper. + sendmail removing @@ -496,510 +378,25 @@ full text search installation - If you want full text search, and you are running PostgreSQL, install this module to support FTS. Do this step after you have installed both PostgreSQL and - AOLserver. You will need the tsearch2 module form PostgreSQL - contrib. This is included with the PostgreSQL full source - distribution. It is also available with the PostgreSQL contrib - package provided by most distribution packages. On debian it is - called postgresql-contrib. - - - For PostgreSQL 7.3 or 7.4, download the - http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/regprocedure_7.4.patch.gz - tsearch2 patch - to correctly restore from a pg_dump backup. If you installed - tsearch2 from a package, you can use the - http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/regprocedure_update.sql - regprocedure script to update the database after tsearch2 is - installed into it. TODO link to section describing how to fix - an existing tsearch2 database with this patch. - - - As of May 9, 2004 there is a source patch available - for - tsearch2. The patch provides changes to the pg_ts_ - configuration - tables to allow for easy dump and restore of a database - containing - tsearch2. The patch is available here : - [http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/regprocedure_7.4.patch.gz] + In earlier versions of PostgreSQL (7.4), tsearch2 was a contrib + module. With PostgreSQL 9.*, it was included in the standard + PostgreSQL package with minor naming changes (e.g. the function + "rank" became "ts_rank"). PostgreSQL 9 included a backward + compatibility module named "tsearch2". Newer OpenACS + installations (at least 5.9.0 or newer) do not + need the compatiblity package. In PostgreSQL 10 the tsearch2 + compatiblity package has been removed. + + + On new OpenACS installations for PostgreSQL, install the + tsearch2-driver package via "/acs-admin/install/" and mount the + search package under "/search" via "/admin/site-map" if + necessary. + - To apply this patch, download the mentioned file and - place it in your postgreSQL source tree ($PGSQL_SRC). This - patch makes the backup and restore procedures very - simple. - - [postgres pgsql]$ cd /tmp - [postgres tmp]$ wget http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/regprocedure_7.4.patch.gz - [postgres pgsql]$ cd /usr/local/src/postgresql-7.4.5/ - [postgres postgresql-7.4.5] gunzip /tmp/regprocedure_7.4.patch.gz - [postgres postgresql-7.4.5] patch -b -p1 < regprocedure_7.4.patch - - If you have a working version of tsearch2 in your - database, you - do not need to re-install the tsearch2 module. Just - apply the patch - and run make. This patch only affects the tsearch2.sql - file. You - can run the SQL script found : - [right here] This script will make the - modifications found in - the patch, and update the fields from the existing - data. From this - point on, you can dump and restore the database in a - normal - fashion. Without this patch, you must follow the - instructions later - in this document for backup and restore. - This patch is only needed for tsearch2 in PostgreSQL - versions - 7.3.x and 7.4.x. The patch has been applied to the - sources for - 8.0. - - - Install Tsearch2. This is a PostgreSQL module - that the tsearch2-driver OpenACS package requires. These - instructions assume you are using the latest point - release of PostgreSQL 7.4.5. - [root root]# su - postgres -[postgres pgsql]$ cd /usr/local/src/postgresql-7.4.5/contrib/tsearch2/ -[postgres tsearch2]$ make -[postgres tsearch2]$ make install -mkdir /usr/local/pgsql/share/contrib -mkdir /usr/local/pgsql/doc/contrib -(2 lines omitted) -/bin/sh ../../config/install-sh -c -m 755 libtsearch.so.0.0 /usr/local/pgsql/lib/tsearch.so -[postgres tsearch]$ exit -logout - -[root root]# -su - postgres -cd /usr/local/src/postgresql-7.4.5/contrib/tsearch2 -make -make install -exit - - - - - Install Full Text Search Engine Package in OpenACS - - - Click Admin on the top of the default home page. If prompted, log in with the account and password you entered during install. - - - Click on the Install -software link. - - - Click on the Install -new service link. - - - Click on the - Install - link next to Tsearch2 Driver. If you have installed tsearch2 - into your PostgreSQL database, the installer will - automatically enable tsearch in your OpenACS database instance. - - - Restart the service. -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ svc -t /service/$OPENACS_SERVICE_NAME -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ - - Wait a minute, then browse back to the home page. - - - Click on Admin on the top of the screen. - - - Click on Main Site Administration in the "Subsite Administration" section. - - - Click on Site Map in the "Advanced Features" section. - - - - Mount the Search interface in the site map. - - Click the -new sub folder link on the -Main Site line. - Type search -and click New. - Click the new -application link on the search - line. - Type search -where it says -untitled, choose -search from the -drop-down list, and click -New. - - Click the -Parameters link - next to the Search package istance. - Type tsearch2-driver -where it says -openfts-driver - in the - FtsEngineDriver parameter. - - - - - - - Restart the service. - [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ svc -t /service/$OPENACS_SERVICE_NAME -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ - - Wait a minute, then click on Main Site at the top of the page. - - - - - - Enable Full Text Search in packages - Enabling Full Text Search in packages at the moment is not trivial. It involves a couple of steps, which I will illustrate taking lars-blogger as an example package - - - Install the package. - - - Click Admin on the top of the default home page. If prompted, log in with the account and password you entered during install. - - - Click on the Install - software link. - - - Click on the Install - new application link. - - - Click on the Install link next to Weblogger. - - - Install all required packages as well (always say okay until you shall restart the server) - - - - - - Load the service contracts datamodell and enable the service contract - [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ cd packages/lars-blogger/sql/postgresql -[$OPENACS_SERVICE_NAME postgresql]$ psql $OPENACS_SERVICE_NAME -f lars-blogger-sc-create.sql -Note: Usually this script is called package_name-sc-create.sql - - - Restart the service. - [$OPENACS_SERVICE_NAME postgresql]$ svc -t /service/$OPENACS_SERVICE_NAME - [$OPENACS_SERVICE_NAME postgresl]$ - - - If you are lucky, Full Text Search is enabled now, if not consult http://openacs.org/forums/message-view?message_id=154759. This link also contains some hints on how to make sure it is enabled. - - - - Install Full Text Search using OpenFTS (deprecated see tsearch2) - - By Joel Aufrecht and Malte Sussdorff - - OpenFTS and tsearch1 use is deprecated in favor of - Tsearch2. See - . Tsearch2 is much easier to install, requiring only - compilation of one module from PostgreSQL contrib, with an - automated install process using the tsearch2-driver package. - - - Install OpenFTS module - - full text search - installation - - If you want full text search, and you are running PostgreSQL, install this module to support FTS. Do this step after you have installed both PostgreSQL and - AOLserver. You will need the openfts - tarball in /tmp. - - - Install Tsearch. This is a PostgreSQL module that - OpenFTS requires. - [root root]# su - postgres -[postgres pgsql]$ cd /usr/local/src/postgresql-7.3.4/contrib/tsearch/ -[postgres tsearch]$ make -sed 's,MODULE_PATHNAME,$libdir/tsearch,g' tsearch.sql.in >tsearch.sql -/usr/bin/flex -8 -Ptsearch_yy -o'parser.c' parser.l(many lines omitted) -rm -f libtsearch.so -ln -s libtsearch.so.0.0 libtsearch.so -[postgres tsearch]$ make install -mkdir /usr/local/pgsql/share/contrib -mkdir /usr/local/pgsql/doc/contrib -(2 lines omitted) -/bin/sh ../../config/install-sh -c -m 755 libtsearch.so.0.0 /usr/local/pgsql/lib/tsearch.so -[postgres tsearch]$ exit -logout -[root root]# -su - postgres -cd /usr/local/src/postgresql-7.3.4/contrib/tsearch -make -make install -exit - - - Unpack the OpenFTS tarball and compile and install - the driver. - [root root]# cd /usr/local/src -[root src]# tar xzf /tmp/Search-OpenFTS-tcl-0.3.2.tar.gz -[root src]# cd /usr/local/src/Search-OpenFTS-tcl-0.3.2/ -[root Search-OpenFTS-tcl-0.3.2]# ./configure --with-aolserver-src=/usr/local/src/aolserver/aolserver --with-tcl=/usr/lib/ -checking prefix... /usr/local -checking for gcc... gcc -(many lines omitted) -configure: creating ./config.status -config.status: creating Makefile.global -[root Search-OpenFTS-tcl-0.3.2]# make -(cd parser; make all) -make[1]: Entering directory `/usr/local/src/Search-OpenFTS-tcl-0.3.2/parser' -(many lines omitted) -packages provided were {Lingua::Stem::Snowball 0.3.2} -processed fts_base_snowball.tcl -[root Search-OpenFTS-tcl-0.3.2]# cd aolserver -[root aolserver]# make -gcc -c -fPIC -DPACKAGE=\"OPENFTS\" -DVERSION=\"0.3.2\" -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STR -(many lines omitted) -n_stem.o italian_stem.o norwegian_stem.o portuguese_stem.o russian_stem.o nsfts.o -o nsfts.so -[root aolserver]# cp nsfts.so /usr/local/aolserver/bin/ -[root aolserver]# -cd /usr/local/src -tar xzf /tmp/Search-OpenFTS-tcl-0.3.2.tar.gz -cd /usr/local/src/Search-OpenFTS-tcl-0.3.2/ -./configure --with-aolserver-src=/usr/local/src/aolserver/aolserver --with-tcl=/usr/lib/ -make -cd AOLserver -make -cp nsfts.so /usr/local/aolserver/bin - - - - Build some supplemental modules. - [root aolserver]# cd /usr/local/src/Search-OpenFTS-tcl-0.3.2 -[root Search-OpenFTS-tcl-0.3.2]# cp -r pgsql_contrib_openfts /usr/local/src/postgresql-7.3.4/contrib -[root Search-OpenFTS-tcl-0.3.2]# cd /usr/local/src/postgresql-7.3.4/contrib/pgsql_contrib_openfts -[root pgsql_contrib_openfts]# make -sed 's,MODULE_PATHNAME,$libdir/openfts,g' openfts.sql.in >openfts.sql -gcc -O2 -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -I. -I../../src/include -c -o openfts.o openfts.c -gcc -shared -o openfts.so openfts.o -rm openfts.o -[root pgsql_contrib_openfts]# su postgres -[postgres pgsql_contrib_openfts]$ make install -/bin/sh ../../config/install-sh -c -m 644 openfts.sql /usr/local/pgsql/share/contrib -/bin/sh ../../config/install-sh -c -m 755 openfts.so /usr/local/pgsql/lib -/bin/sh ../../config/install-sh -c -m 644 ./README.openfts /usr/local/pgsql/doc/contrib -[postgres pgsql_contrib_openfts]$ exit -[root pgsql_contrib_openfts]# -cd /usr/local/src/Search-OpenFTS-tcl-0.3.2 -cp -r pgsql_contrib_openfts /usr/local/src/postgresql-7.3.4/contrib -cd /usr/local/src/postgresql-7.3.4/contrib/pgsql_contrib_openfts -make -su postgres -make install -exit - - - - - - Install OpenFTS prerequisites in PostgreSQL instance - - full text search - installation - - If you are installing Full Text Search, add required - packages to the new database. (In order for full text search - to work, you must also install the PostgreSQL - OpenFTS module and prerequisites.) - [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ /usr/local/pgsql/bin/psql $OPENACS_SERVICE_NAME -f /usr/local/src/postgresql-7.3.4/contrib/tsearch/tsearch.sql -BEGIN -CREATE -(many lines omitted) -INSERT 0 1 -COMMIT -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ /usr/local/pgsql/bin/psql $OPENACS_SERVICE_NAME -f /usr/local/src/postgresql-7.3.4/contrib/pgsql_contrib_openfts/openfts.sql -CREATE -CREATE -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ -/usr/local/pgsql/bin/psql $OPENACS_SERVICE_NAME -f /usr/local/src/postgresql-7.3.4/contrib/tsearch/tsearch.sql -/usr/local/pgsql/bin/psql $OPENACS_SERVICE_NAME -f /usr/local/src/postgresql-7.3.4/contrib/pgsql_contrib_openfts/openfts.sql - - - If you get the error - ERROR: could not access file "$libdir/tsearch": no such file or directory - It is probably because PostgreSQL's libdir configuration variable points to a diffent directory than where tsearch is. - You can find out where PostgreSQL expects to find tsearch via - pg_config --pkglibdir - - - - - - Enable OpenFTS in config.tcl - If you have installed OpenFTS, you can enable it for this service. Uncomment this line from config.tcl. (To uncomment a line in a Tcl file, remove the # at the beginning of the line.) - #ns_param nsfts ${bindir}/nsfts.so - - - - Install Full Text Search Engine - - - Click Admin on the top of the default home page. If prompted, log in with the account and password you entered during install. - - - Click on the Install -software link. - - - Click on the Install -new service link. - - - Click on the Install link next to OpenFTS Driver. - - - Restart the service. -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ svc -t /service/$OPENACS_SERVICE_NAME -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ - - Wait a minute, then browse back to the home page. - - - Click on Admin on the top of the screen. - - - Click on Main Site Administration in the "Subsite Administration" section. - - - Click on Site Map in the "Advanced Features" section. - - - - Mount the OpenFTS Full Text Search Engine in the site map. - - Click the new sub folder link on the "/" line, the first line under Main Site:/. - Type openfts -and click New. - On the new openfts line, click the mount link. - Click OpenFTS -Driver. - On the openfts line, click set parameters. - - Change openfts_tcl_src_path to /usr/local/src/Search-OpenFTS-tcl-0.3.2/ and click Set Parameters - - - - - - Mount the Search interface in the site map. - - Click the -new sub folder link on the -Main Site line. - Type search -and click New. - Click the new -application link on the search - line. - Type search -where it says -untitled, choose -search from the -drop-down list, and click -New. - - - - - Restart the service. - [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ svc -t /service/$OPENACS_SERVICE_NAME -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ - - Wait a minute, then click on Main Site at the top of the page. - - - Initialize the OpenFTS Engine. This creates a set of tables in the database to support FTS. - Near the bottom of the page, click on the OpenFTS Driver link. Click on Administration. -Click on Initialize OpenFTS Engine. -Click Initialize OpenFTS Engine. - - - Add the FTS Engine service contract - - Click on the DevAdmin. - Click on the Service Contract link. - On the FtsEngineDriver -line, click -Install. - - - - - Restart the service. - [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ svc -t /service/$OPENACS_SERVICE_NAME -[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ - - - - - Enable Full Text Search in packages - Enabling Full Text Search in packages at the moment is not trivial. It involves a couple of steps, which I will illustrate taking lars-blogger as an example package - - - Install the package. - - - Click Admin on the top of the default home page. If prompted, log in with the account and password you entered during install. - - - Click on the Install - software link. - - - Click on the Install - new application link. - - - Click on the Install link next to Weblogger. - - - Install all required packages as well (always say okay until you shall restart the server) - - - - - - Load the service contracts datamodell and enable the service contract - [$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ cd packages/lars-blogger/sql/postgresql -[$OPENACS_SERVICE_NAME postgresql]$ psql $OPENACS_SERVICE_NAME -f lars-blogger-sc-create.sql -Note: Usually this script is called package_name-sc-create.sql - - - Restart the service. - [$OPENACS_SERVICE_NAME postgresql]$ svc -t /service/$OPENACS_SERVICE_NAME - [$OPENACS_SERVICE_NAME postgresl]$ - - - If you are lucky, Full Text Search is enabled now, if not consult http://openacs.org/forums/message-view?message_id=154759. This link also contains some hints on how to make sure it is enabled. - - - Install nsopenssl