aboutsummaryrefslogtreecommitdiffstats
path: root/www/openacs
diff options
context:
space:
mode:
authorlawrance <lawrance@FreeBSD.org>2005-08-01 21:16:47 +0800
committerlawrance <lawrance@FreeBSD.org>2005-08-01 21:16:47 +0800
commit93d61b6a4ea0555833281eb07367545c138bc302 (patch)
tree385f37e17bedacff21f244854d75368c1f9212b5 /www/openacs
parent5b71e70644c98f804163bbaffd0a258509f2ea95 (diff)
downloadfreebsd-ports-gnome-93d61b6a4ea0555833281eb07367545c138bc302.tar.gz
freebsd-ports-gnome-93d61b6a4ea0555833281eb07367545c138bc302.tar.zst
freebsd-ports-gnome-93d61b6a4ea0555833281eb07367545c138bc302.zip
Add openacs:
OpenACS (Open Architecture Community System) is a web application platform designed for high traffic community websites. It is built on a free and open source foundation. OpenACS is the foundation for many products and websites including the .LRN e-learning platform (www.dotlrn.org). PR: ports/84146 Submitted by: Aldert Nooitgedagt <aldert@nooitgedagt.net>
Diffstat (limited to 'www/openacs')
-rw-r--r--www/openacs/Makefile140
-rw-r--r--www/openacs/distinfo4
-rw-r--r--www/openacs/files/pkg-deinstall.in24
-rw-r--r--www/openacs/files/pkg-install.in117
-rw-r--r--www/openacs/files/pkg-message.in61
-rw-r--r--www/openacs/files/post-config.in84
-rw-r--r--www/openacs/files/svscan.sh62
-rw-r--r--www/openacs/pkg-descr17
8 files changed, 509 insertions, 0 deletions
diff --git a/www/openacs/Makefile b/www/openacs/Makefile
new file mode 100644
index 000000000000..65ca038a59d7
--- /dev/null
+++ b/www/openacs/Makefile
@@ -0,0 +1,140 @@
+# New ports collection makefile for: openACS
+# Date created: July 2005
+# Whom: Aldert Nooitgedagt <aldert@nooitgedagt.net>
+#
+# $FreeBSD$
+#
+
+PORTNAME?= openacs
+PORTVERSION?= 5.1.5
+CATEGORIES= www
+MASTER_SITES?= http://openacs.org/projects/openacs/download/download/
+
+MAINTAINER?= aldert@nooitgedagt.net
+COMMENT?= A modular web application platform for high traffic communities
+
+OPENACS_USER?= service0
+OPENACS_GROUP= web
+PG_USER= pgsql
+
+DATADIR= ${PREFIX}/share/${OPENACS_USER}
+EXAMPLESDIR= ${PREFIX}/share/examples/${OPENACS_USER}
+OPENACSBASE= ${PREFIX}/share
+VIRTUALBASE= /var/lib
+AOLSERVERBASE= ${LOCALBASE}/aolserver
+DTSERVICEBASE= /var/service
+RCCONF= /etc/rc.conf
+
+IP_ADDRESS= 0.0.0.0
+
+USE_RC_SUBR= YES
+PKGINSTALL= ${WRKDIR}/pkg-install
+PKGMESSAGE= ${WRKDIR}/pkg-message
+PKGDEINSTALL= ${WRKDIR}/pkg-deinstall
+.if defined(WITH_POSTCONFIG)
+POSTCONFIG= ${WRKDIR}/post-config
+.endif
+
+SUB_FILES= pkg-install pkg-message pkg-deinstall post-config
+SUB_LIST+= RCCONF=${RCCONF} \
+ OPENACSBASE=${OPENACSBASE} OPENACS_GROUP=${OPENACS_GROUP} \
+ OPENACS_USER=${OPENACS_USER} DB=${DB} PGDATA=${PGDATA} \
+ PG_USER=${PG_USER} PGBASE=${PGBASE} \
+ DTSERVICEBASE=${DTSERVICEBASE} \
+ AOLSERVERBASE=${AOLSERVERBASE} VIRTUALBASE=${VIRTUALBASE}
+
+RUN_DEPENDS+= ${LOCALBASE}/bin/bash:${PORTSDIR}/shells/bash \
+ ${LOCALBASE}/lib/libtcl84.so.1:${PORTSDIR}/lang/tcl84-thread \
+ ${LOCALBASE}/lib/libreadline.so:${PORTSDIR}/devel/readline \
+
+.if defined(WITH_ORACLE)
+BROKEN= "Oracle not supported yet"
+DB= ORA
+.else
+DB= PG
+PGBASE= ${LOCALBASE}
+PGDATA= ${LOCALBASE}/pgsql/data
+RUN_DEPENDS+= ${LOCALBASE}/lib/libpq.so:${PORTSDIR}/databases/postgresql74-server \
+ ${LOCALBASE}/aolserver/bin/nsd:${PORTSDIR}/www/aolserver-openacs-pg
+.endif
+
+RUN_DEPENDS+= ${LOCALBASE}/lib/tdom0.8.0/libtdom0.8.0.so:${PORTSDIR}/www/tdom \
+ ${LOCALBASE}/tclwebtest-1.0/tclwebtest:${PORTSDIR}/www/tclwebtest \
+ ${LOCALBASE}/bin/supervise:${PORTSDIR}/sysutils/daemontools
+USE_LINUX= YES
+
+NO_BUILD= YES
+
+USE_REINPLACE= YES
+REINPLACE_ARGS= -i "" -e
+
+PLIST_FILES= ${EXAMPLESDIR:S,^${PREFIX}/,,}/svscan.sh \
+ ${EXAMPLESDIR:S,^${PREFIX}/,,}/restart-aolserver \
+ ${EXAMPLESDIR:S,^${PREFIX}/,,}/svgroup \
+ ${EXAMPLESDIR:S,^${PREFIX}/,,}/nsd-postgres \
+ ${EXAMPLESDIR:S,^${PREFIX}/,,}/nsd-oracle \
+ ${EXAMPLESDIR:S,^${PREFIX}/,,}/post-config.sh
+
+pre-install:
+ @${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
+
+do-install:
+ @${MKDIR} ${EXAMPLESDIR}
+ @${MKDIR} ${OPENACSBASE}
+ @${MKDIR} ${VIRTUALBASE}
+ @ ${MKDIR} ${DTSERVICEBASE}
+
+ @${ECHO_CMD} "Installing files"
+ @if [ ! -d ${OPENACSBASE}/${OPENACS_USER} ] ; then \
+ ${CP} -R ${WRKSRC} ${OPENACSBASE}/${OPENACS_USER}; else \
+ ${RM} -Rf ${OPENACSBASE}/${OPENACS_USER}.old && \
+ ${MV} ${OPENACSBASE}/${OPENACS_USER} ${OPENACSBASE}/${OPENACS_USER}.old && \
+ ${CP} -R ${WRKSRC} ${OPENACSBASE}/${OPENACS_USER}; fi
+
+ @${TEST} -e ${VIRTUALBASE}/aolserver || ${LN} -s ${OPENACSBASE} ${VIRTUALBASE}/aolserver
+ @${TEST} -L ${VIRTUALBASE}/aolserver || ${ECHO_MSG} "${VIRTUALBASE}/aolserver is no symbolic link"
+ @${TEST} -L ${DTSERVICEBASE}/${OPENACS_USER} || ${LN} -s ${OPENACSBASE}/${OPENACS_USER}/etc/daemontools ${DTSERVICEBASE}/${OPENACS_USER}
+
+ @${INSTALL_SCRIPT} ${OPENACSBASE}/${OPENACS_USER}/packages/acs-core-docs/www/files/nsd-postgres.txt ${EXAMPLESDIR}/nsd-postgres
+ @${INSTALL_SCRIPT} ${OPENACSBASE}/${OPENACS_USER}/packages/acs-core-docs/www/files/nsd-oracle.txt ${EXAMPLESDIR}/nsd-oracle
+ @${INSTALL_SCRIPT} ${OPENACSBASE}/${OPENACS_USER}/packages/acs-core-docs/www/files/restart-aolserver.txt ${EXAMPLESDIR}/restart-aolserver
+ @${INSTALL_SCRIPT} ${FILESDIR}/svscan.sh ${EXAMPLESDIR}/svscan.sh
+ @${INSTALL_SCRIPT} ${OPENACSBASE}/${OPENACS_USER}/packages/acs-core-docs/www/files/svgroup.txt ${EXAMPLESDIR}/svgroup
+ @${INSTALL_SCRIPT} ${WRKDIR}/post-config ${EXAMPLESDIR}/post-config.sh
+
+post-install:
+ @${REINPLACE_CMD} "\
+ s|/usr/local/aolserver|${AOLSERVERBASE}|g; \
+ s|/bin/bash|/bin/sh|g; \
+ " ${EXAMPLESDIR}/nsd-postgres ${EXAMPLESDIR}/nsd-oracle
+ @${REINPLACE_CMD} "\
+ s|service0|${OPENACS_USER}|g; \
+ s|\[ns_info address\]|${IP_ADDRESS}|g; \
+ s|/var/lib/aolserver|${OPENACSBASE}|g; \
+ s|/usr/local/aolserver|${AOLSERVERBASE}|g; \
+ " ${OPENACSBASE}/${OPENACS_USER}/etc/config.tcl
+ @${REINPLACE_CMD} "\
+ s|service0|${OPENACS_USER}|g; \
+ s|/usr/local/aolserver/bin|${EXAMPLESDIR}|g; \
+ " ${OPENACSBASE}/${OPENACS_USER}/etc/daemontools/run
+
+ @${ECHO_CMD} "@unexec rm -f ${DATADIR}/log/${OPENACS_USER}* 2>&1 > /dev/null || true" >> ${TMPPLIST}
+ @${ECHO_CMD} "@unexec rm -f ${DATADIR}/log/error.log 2>&1 > /dev/null || true" >> ${TMPPLIST}
+ @${ECHO_CMD} "@unexec rm -Rf ${DATADIR}/apm-workspace 2>&1 > /dev/null || true" >> ${TMPPLIST}
+ @${ECHO_CMD} "@unexec rm -Rf ${DATADIR}/etc/daemontools/supervise 2>&1 > /dev/null || true" >> ${TMPPLIST}
+ @${FIND} -s ${WRKSRC} -not -type d \
+ | ${SED} -ne 's,^${WRKSRC},${DATADIR:S,^${PREFIX}/,,},p' >> ${TMPPLIST}
+ @${FIND} -s -d ${WRKSRC} -type d \
+ | ${SED} -ne 's,^${WRKSRC},@dirrm ${DATADIR:S,^${PREFIX}/,,},p' >> ${TMPPLIST}
+ @${ECHO_CMD} "@dirrm ${EXAMPLESDIR:S,^${PREFIX}/,,}" >> ${TMPPLIST}
+ @${ECHO_CMD} "@cd ${DTSERVICEBASE}" >> ${TMPPLIST}
+ @${ECHO_CMD} "${OPENACS_USER}" >> ${TMPPLIST}
+ @${ECHO_CMD} "@unexec rmdir ${DTSERVICEBASE} 2>&1 > /dev/null || true" >> ${TMPPLIST}
+
+ @${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
+.if defined(WITH_POSTCONFIG)
+ @${SH} ${POSTCONFIG} ${PKGNAME} POST-INSTALL
+.endif
+ @${CAT} ${PKGMESSAGE}
+
+.include <bsd.port.mk>
diff --git a/www/openacs/distinfo b/www/openacs/distinfo
new file mode 100644
index 000000000000..4c0454eb4ef7
--- /dev/null
+++ b/www/openacs/distinfo
@@ -0,0 +1,4 @@
+MD5 (openacs-5.1.5.tar.gz) = a86843cb5aaf62d7e1c54b0e69238079
+SIZE (openacs-5.1.5.tar.gz) = 5740656
+MD5 (dotlrn-2.1.1.tar.gz) = f80c93d95c3695d4d89ff0394d7ea6dc
+SIZE (dotlrn-2.1.1.tar.gz) = 7935564
diff --git a/www/openacs/files/pkg-deinstall.in b/www/openacs/files/pkg-deinstall.in
new file mode 100644
index 000000000000..b030721b3965
--- /dev/null
+++ b/www/openacs/files/pkg-deinstall.in
@@ -0,0 +1,24 @@
+#! /bin/sh
+
+PATH=$PATH:/bin:/usr/bin:/usr/sbin
+
+case $2 in
+
+POST-DEINSTALL)
+ echo "You are deinstalling this port:"
+ echo " Remember to kill the associated Aolserver process in case"
+ echo " you've changed the standard."
+ echo " We will try to kill the standard now:"
+ pid=`ps -ax | grep %%OPENACS_USER%%/etc/config.tcl | grep -v grep| awk -F' ' '{print $1}'`;
+ if test "$pid" = "" ; then
+ echo " No %%OPENACS_USER%% process found."
+ else
+ echo " Killing %%OPENACS_USER%% proces. pid: $pid . "
+ kill $pid
+ fi
+ echo " If no other openACS/.LRN instance needs it, you may want to "
+ echo " delete %%AOLSERVERBASE%% and %%VIRTUALBASE%% manually, "
+ echo " and possibly the %%OPENACS_USER%% users and database. "
+ ;;
+esac
+
diff --git a/www/openacs/files/pkg-install.in b/www/openacs/files/pkg-install.in
new file mode 100644
index 000000000000..bcf4215c5492
--- /dev/null
+++ b/www/openacs/files/pkg-install.in
@@ -0,0 +1,117 @@
+#! /bin/sh
+
+PATH=/bin:/usr/sbin:/usr/bin
+LOCALBASE=%%LOCALBASE%%
+EXAMPLESDIR=%%EXAMPLESDIR%%
+RCCONF=%%RCCONF%%
+OPENACSBASE=%%OPENACSBASE%%
+OPENACS_GROUP=%%OPENACS_GROUP%%
+OPENACS_USER=%%OPENACS_USER%%
+DB=%%DB%%
+PGDATA=%%PGDATA%%
+PG_USER=%%PG_USER%%
+PGBASE=%%PGBASE%%
+DTSERVICEBASE=%%DTSERVICEBASE%%
+AOLSERVERBASE=%%AOLSERVERBASE%%
+VIRTUALBASE=%%VIRTUALBASE%%
+
+pre-install() { echo "
+
+ First, make sure that you either have
+ lang/tcl84-thread or no tcl84 installed
+
+ =========== BACKUP YOUR DATA! =============
+ As always, backup your data before
+ upgrading. This is *NOT* done by the port!
+
+ IMPORTANT: You may loose data by an upgrade.
+ Press ctrl-C *NOW* if you need to
+ BACKUP YOUR DATA,
+ for example a pg_dump or custom openacs files.
+
+ ========= FOR UPGRADE SEE: ===============
+ http://openacs.org/doc/current/upgrade.html
+ ===========================================
+
+ make install WITH_POSTCONFIG=yes
+
+ to allow post-install configurations
+ Or run afterwards:
+ sh ${EXAMPLESDIR}/post-config.sh XX POST-INSTALL
+
+ Advice: stop Aolserver and Postgresql
+ before post-install configuration starts.
+
+ Press ctrl-C *NOW* if you need to.
+ ===========================================
+"
+
+sleep 10
+
+for DIRS in /usr/share/skel/dot
+do
+if egrep 'OPENACS-entries in .profile' ${DIRS}.profile >/dev/null 2>&1; then
+ echo "You already have OPENACS-entries in .profile (skeleton)"
+else
+ echo "${DIRS}.profile: adding entries" && \
+ echo "# OPENACS-entries in .profile:" >> ${DIRS}.profile && \
+ echo "export PATH=\$$PATH:${PGBASE}/bin" >> ${DIRS}.profile && \
+ echo "export PGDATA=${PGDATA}" >> ${DIRS}.profile && \
+ echo "export LD_LIBRARY_PATH=\$$LD_LIBRARY_PATH:${PGBASE}/lib" >> ${DIRS}.profile && \
+ echo "export PS1=\"<\u-\W>\"" >> ${DIRS}.profile && \
+ echo "export PS2=\"continu>\"" >> ${DIRS}.profile && \
+ echo "export CVSROOT=/cvsroot" >> ${DIRS}.profile && \
+ echo "export EDITOR=emacs" >> ${DIRS}.profile && \
+ echo "# end of OPENACS-entries." >> ${DIRS}.profile
+fi
+done
+
+if egrep 'OPENACS-entries in rc.conf' ${RCCONF} >/dev/null 2>&1; then
+ echo "You already have OPENACS-entries in ${RCCONF}"
+else
+ echo "${RCCONF}: adding entries" && \
+ echo "# OPENACS-entries in rc.conf:" >> ${RCCONF} && \
+ echo "ldconfig_paths=\"/usr/lib/compat /usr/X11R6/lib ${LOCALBASE}/lib ${PGBASE}/lib ${AOLSERVERBASE}/lib\" " >> ${RCCONF} && \
+ echo "# end of OPENACS-entries." >> ${RCCONF}
+fi
+
+if pw group show ${OPENACS_GROUP} >/dev/null 2>&1; then
+ echo "You already have a group \"${OPENACS_GROUP}\", so I will use it."
+else
+ pw groupadd -n ${OPENACS_GROUP}
+fi
+
+if pw user show ${OPENACS_USER} >/dev/null 2>&1; then
+ echo "You already have a user \"${OPENACS_USER}\", so I will use it."
+else
+ pw useradd -n ${OPENACS_USER} -G ${OPENACS_GROUP} -c "OpenACS instance pseudo-user" \
+ -m -s ${LOCALBASE}/bin/bash -h -
+fi
+
+ pw usermod nobody -G ${OPENACS_GROUP}
+ pw usermod pgsql -G ${OPENACS_GROUP}
+ pw usermod root -G ${OPENACS_GROUP}
+}
+
+post-install() {
+ echo "Set permissions of files"
+ chmod -R 770 ${OPENACSBASE}/${OPENACS_USER}
+ chmod -R 770 ${EXAMPLESDIR}
+ chmod -R 755 ${DTSERVICEBASE}/${OPENACS_USER}
+ chmod 1755 ${DTSERVICEBASE}
+
+ chown -R ${OPENACS_USER}:${OPENACS_GROUP} ${OPENACSBASE}/${OPENACS_USER}
+ chown root:${OPENACS_GROUP} ${EXAMPLESDIR}/nsd-postgres ${EXAMPLESDIR}/nsd-oracle
+
+}
+
+case $2 in
+
+PRE-INSTALL)
+ pre-install
+ ;;
+POST-INSTALL)
+ post-install
+ ;;
+esac
+
diff --git a/www/openacs/files/pkg-message.in b/www/openacs/files/pkg-message.in
new file mode 100644
index 000000000000..8f57f07cc39f
--- /dev/null
+++ b/www/openacs/files/pkg-message.in
@@ -0,0 +1,61 @@
+ ******** READ THIS *******
+
+Congratulations! You have just installed OpenACS/.LRN
+
+If you didn't make install WITH_POSTCONFIG=yes
+to allow post-install configurations or run now:
+sh ${EXAMPLESDIR}/post-config.sh XX POST-INSTALL
+Make sure you stop Aolserver and Postgresql
+before post-install configuration starts.
+
+Then use your browser to view the welcome page (http://<your-ip>:8000)
+and follow the instructions. (Find out your IP address by typing
+"ifconfig" at the command line)
+
+If you want daemontools to restart aolserver, remember to:
+Copy the example svscan.sh from %%EXAMPLESDIR%%
+to %%LOCALBASE%%/etc/rc.d/svscan.sh
+Make a copy of the original file first, if you like.
+Then REBOOT (shutdown -r now)!
+
+Once the datamodel has been installed and aolserver restarts
+it can take a few MINUTES before the server becomes available.
+Be patient!
+
+Errors, if any, are in:
+%%VIRTUALBASE%%/aolserver/%%OPENACS_USER%%/log/error.log
+
+Go to the docs at http://openacs.org/doc/ to find out more.
+There are a few things different from the docs (!): For example, the
+postgres user is pgsql not postgres, daemontools are in %%DTSERVICEBASE%%,
+openACS/.LRN is in %%LOCALBASE%%/share/ (with symlink in %%VIRTUALBASE%%),
+nsd-postgres and some other files are in %%EXAMPLESDIR%%, but everything
+should work just fine.
+
+To view your pages at port 80 you will have to change:
+daemontools/run and config.tcl in
+%%VIRTUALBASE%%/aolserver/%%OPENACS_USER%%/etc.
+
+If you install .LRN as well as openACS the IP address in config.tcl
+should be different or you should shut one down (svc -d %%DTSERVICEBASE%%/...)
+before starting the other. Aolserver cannot listen on the same ip-address
+twice!
+
+If you want to remove openacs, type "make deinstall" or use pkg_delete
+(pkg_info).
+However, users and database are not removed. At (re)install an existing
+datadirectory with the same name is moved to <name>.old
+
+We use bash as shell in openACS. We didn't change the shells of
+current users like root and pgsql, yet. If you want, do:
+chsh -s %%LOCALBASE%%/bin/bash USERNAME
+and change its profile by copying the openACS entries from
+/usr/share/skel/dot.profile to ~/.profile.
+Than login/out or type ". .profile".
+
+Remember: THIS MESSAGE is in PORTSDIR/www/openacs/pkg-message.
+
+-Aldert
+aldert@nooitgedagt.net
+
+ ******** READ THE INFORMATION ABOVE ********
diff --git a/www/openacs/files/post-config.in b/www/openacs/files/post-config.in
new file mode 100644
index 000000000000..d443b7bde344
--- /dev/null
+++ b/www/openacs/files/post-config.in
@@ -0,0 +1,84 @@
+#! /bin/sh
+
+PATH=/bin:/usr/sbin:/usr/bin
+LOCALBASE=%%LOCALBASE%%
+EXAMPLESDIR=%%EXAMPLESDIR%%
+RCCONF=%%RCCONF%%
+OPENACSBASE=%%OPENACSBASE%%
+OPENACS_GROUP=%%OPENACS_GROUP%%
+OPENACS_USER=%%OPENACS_USER%%
+DB=%%DB%%
+PGDATA=%%PGDATA%%
+PG_USER=%%PG_USER%%
+PGBASE=%%PGBASE%%
+DTSERVICEBASE=%%DTSERVICEBASE%%
+AOLSERVERBASE=%%AOLSERVERBASE%%
+VIRTUALBASE=%%VIRTUALBASE%%
+
+post-install() {
+ echo "Set permissions of files (post-config)"
+ chown -R :${OPENACS_GROUP} ${AOLSERVERBASE}
+
+if [ "${DB}" = "PG" ]; then
+ echo "Postgresql database is being configured."
+ if [ ! -d ${PGDATA} ]; then
+ su -l ${PG_USER} -c "${LOCALBASE}/bin/initdb -D ${PGDATA}";
+ fi
+ if [ -e ${PGDATA}/postmaster.pid ]; then
+ echo "Postgres is running. We don't want to stop it, because we don't know why you have it running."
+ pid0=`ps -ax | grep ${PGDATA}/server.log | grep -v grep| awk -F' ' '{print $1}'`;
+ if test "$pid0" != "" ; then
+ echo "Since ${PGDATA}/server.log seems active you may be fine."
+ fi
+ echo "If you run into trouble: please stop Postgresql and Aolserver en restart them respectively, after this installation has completed."
+ else
+ echo "Start Postgresql"
+ su -l ${PG_USER} -c "${LOCALBASE}/bin/pg_ctl -D ${PGDATA} -l ${PGDATA}/server.log start"
+ fi
+ sleep 5
+ su -l ${PG_USER} -c "${LOCALBASE}/bin/createlang plpgsql template1" > /dev/null 2>&1
+ su -l ${PG_USER} -c "${LOCALBASE}/bin/createlang -l template1" > /dev/null 2>&1
+ su -l ${PG_USER} -c "${LOCALBASE}/bin/createuser -A -d ${OPENACS_USER}" > /dev/null 2>&1
+ su -l ${OPENACS_USER} -c "${LOCALBASE}/bin/createdb -E UNICODE ${OPENACS_USER}" > /dev/null 2>&1
+ sleep 5
+ echo "Checking Aolserver before (re)start. Is it running?"
+ pid1=`ps -ax | grep sample-config | grep -v grep| awk -F' ' '{print $1}'`;
+ if test "$pid1" = "" ; then
+ :
+ else
+ echo "Killing sample-config process. pid: $pid1 ."
+ kill $pid1
+ fi
+ pid2=`ps -ax | grep ${OPENACS_USER}/etc/config.tcl | grep -v grep| awk -F' ' '{print $1}'`;
+ if test "$pid2" = "" ; then
+ :
+ else
+ echo "Killing ${OPENACS_USER} config.tcl process. pid: $pid2 ."
+ kill $pid2
+ fi
+
+ pid3=`ps -ax | grep nsd | grep -v grep| awk -F' ' '{print $1}'`;
+ if test "$pid3" = "" ; then
+ echo "Good. No running Aolserver process.";
+ else
+ echo "Warning: at least still one Aolserver process is running..."
+ echo "We will start Aolserver now, but it may not be able to listen on the same address:port"
+ echo "FYI: killall -9 nsd will stop all processes or change the IP-address in config.tcl, then start again."
+ fi
+ echo "Starting aolserver: ${EXAMPLESDIR}/nsd-postgres -t ${OPENACSBASE}/${OPENACS_USER}/etc/config.tcl -u ${OPENACS_USER} -g ${OPENACS_GROUP}"
+ ${EXAMPLESDIR}/nsd-postgres -t ${OPENACSBASE}/${OPENACS_USER}/etc/config.tcl -u ${OPENACS_USER} -g ${OPENACS_GROUP}
+ sleep 10
+fi
+
+}
+
+case $2 in
+
+POST-INSTALL)
+ post-install
+ ;;
+esac
+
+# ${EXAMPLESDIR}/svgroup ${OPENACS_GROUP} ${DTSERVICEBASE}/${OPENACS_USER}
+# KEEP ALIVE with DAEMONTOOLS + OPTION: see http://openacs.org/forums/message-view?message_id=291164
+# AOLSERVER RESTART SCRIPT: see http://openacs.org/doc/current/maintenance-web.html
diff --git a/www/openacs/files/svscan.sh b/www/openacs/files/svscan.sh
new file mode 100644
index 000000000000..f52db48fc7d3
--- /dev/null
+++ b/www/openacs/files/svscan.sh
@@ -0,0 +1,62 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+# It would really, really be a Good Thing(tm)
+# for you to enable some of the below
+# control variables and the apropriate ulimit.
+# These are only examples.
+# Furthermore, you should think about additional
+# limits you might need.
+# Or, check login.conf(5) for a suitable
+# alternative
+#
+# I really do suggest you use /var/service/ as your
+# service spool directory. Check hier(7) for
+# reasons.
+
+# 10 Mb
+MINSEGMENT=10240
+# 20 Mb
+#MAXSEGMENT=20480
+# 10 Mb
+MAXFILESIZE=10240
+# 100
+MAXFD=100
+# 40
+MAXCHILD=40
+
+# ulimits
+#ulimit -d ${MINSEGMENT}
+#ulimit -f ${MAXFILESIZE}
+#ulimit -m ${MAXSEGMENT}
+#ulimit -n ${MAXFD}
+#ulimit -s ${MINSEGMENT}
+#ulimit -u ${MAXCHILD}
+
+KILLALL=/usr/bin/killall
+SVC=${PREFIX}/bin/svc
+SVPROC=svscan
+SVSCAN=$PREFIX/bin/svscan
+READPROCTITLE=$PREFIX/bin/readproctitle
+SVDIR=/var/service/
+
+case "$1" in
+ start)
+ echo -n " svscan"
+ exec env PATH=$PREFIX/sbin:$PREFIX/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH /bin/csh -cf "$SVSCAN $SVDIR |& $READPROCTITLE service errors: ................................................................................................................................................................................................................................................................................................................................................................................................................ &" > /dev/null
+ ;;
+
+ stop)
+ echo -n " svscan: "
+ $KILLALL $SVPROC
+ $SVC -dx $SVDIR/* $SVDIR/*/log
+ ;;
+
+ *)
+ echo "Usage: $0 start | stop"
+ ;;
+esac
diff --git a/www/openacs/pkg-descr b/www/openacs/pkg-descr
new file mode 100644
index 000000000000..b8dd7483b366
--- /dev/null
+++ b/www/openacs/pkg-descr
@@ -0,0 +1,17 @@
+OpenACS (Open Architecture Community System) is a web application platform
+designed for high traffic community websites. It is built on a free and
+open source foundation. OpenACS is the foundation for many products
+and websites including the .LRN e-learning platform (www.dotlrn.org).
+
+OpenACS runs on AOLserver and uses either the PostgreSQL or Oracle (which is
+not open-source) relational databases. It uses TCL as its main language.
+AOLserver, postgresql and Oracle are used in some of the most demanding,
+high-traffic web applications in the world.
+
+DotLRN (.LRN) is built upon openACS core, but includes extra modules and
+configurations. DotLRN has its own tarball and port (openacs-dotlrn).
+
+WWW: http://openacs.org
+
+- Aldert
+aldert@nooitgedagt.net