View · Index

Weblog

Filtered by popular tag debian, 1 - 7 of 7 Postings (all, summary)

Install OpenACS with NaviServer from Scratch

Created by Gustaf Neumann, last modified by Brian Fenton 18 Aug 2023, at 03:00 PM

This page describes how to install OpenACS with NaviServer on Unix-like systems (e.g. Linux, macOS, Solaris, OmniOS) by compiling all but PostgreSQL from scratch, guided by script that collects the components from various sources, compiles it, etc.

The installation is done in two steps:

  • install-ns.sh: Install NaviServer and its components for a PostgreSQL installation from scratch by obtaining the relevant sources and compiling it. The script assumes PostgreSQL to be already installed (or obtainable via package managers), and installs all other components by obtaining it from the source repositories and compiling it from scratch (e.g. Tcl, tcllib, tDOM, libthread, nsf/XOTcl 2).
     
  • install-oacs.sh: Install OpenACS from CVS/git. This script configures a (pre-installed) PostgreSQL installation for
    OpenACS, adds hstore, installs OpenACS core, basic OpenACS packages, xowiki, xowf and optionally dotlrn from CVS/git and generates a config file and startup files (for Ubuntu and Fedora Core). The script assumes a pre-existing NaviServer installation, installed e.g. via install-ns.sh

 These install scripts are frequently updated when new components are released or problems are detected (commit log).

If you open the links above, use save-as in the browser to save the files. Alternatively, download the files as .zip file or clone the repository via GitHub.

   cd /usr/local/src
   git clone https://github.com/gustafn/install-ns
   cd install-ns

The scripts work under a typical Linux installation (e.g. Ubuntu, Fedora Core) as well as on Mac OS X or on OmniOS,  OpenBSD 6.1, 6.3, 6.6, 6.8, 6.9, FreeBSD 12.2, 13.0, Ubuntu 12.04, 13.04, 14.04, 16.04, 18.04, 20.04, Raspbian GNU/Linux 9.4 (stretch), Fedora Core 18, 20, 32, 35, CentOS 7, Roxy Linux 8.4, ArchLinux.. The scripts are tested (over the years) with PostgreSQL 9.1 to 14.5.

On a fresh Ubuntu installation, you should be able to download the two scripts from this page and install OpenACS with NaviServer in the following steps:

   sudo bash

   bash install-ns.sh
   bash install-ns.sh build

   bash install-oacs.sh
   bash install-oacs.sh build

When running "install-ns.sh", you will see an output like the following (shortened here).

SETTINGS   build_dir              (Build directory)                 /usr/local/src
           ns_install_dir         (Installation directory)          /usr/local/ns
           version_ns             (Version of NaviServer)           4.99.24
           git_branch_ns          (Branch for git checkout of ns)   main
           version_modules        (Version of NaviServer Modules)   4.99.24
           version_tcllib         (Version of Tcllib)               1.20
           version_thread         (Version Tcl thread library)      
           version_xotcl          (Version of NSF/NX/XOTcl)         2.4.0
           version_tcl            (Version of Tcl)                  8.6.12
           version_tdom           (Version of tDOM)                 0.9.1
           ns_user                (NaviServer user)                 nsadmin
           ns_group               (NaviServer group)                nsadmin
                                  (Make command)                    make
                                  (Type command)                    type -a
           ns_modules             (NaviServer Modules)              nsdbpg
           with_mongo             (Add MongoDB client and server)   0
           with_postgres          (Install PostgreSQL DB server)    1
           with_postgres_driver   (Add PostgreSQL driver support)   1
           with_system_malloc     (Tcl compiled with system malloc) 0
           with_ns_doc            (NaviServer documentation)        1

The values in the first column can be used to tailor the system for your needs by setting same-named shell variables. One can use e.g.

   version_tdom=0.9.3 bash install-ns.sh 

to configure the compilation to use tDOM in version 0.9.3 instead of 0.9.1. As a more detailed example, if you want to use the newest version of NaviServer, and you want to use a different build directory and get also some extra modules compiled from their git versions, use e.g. the following command:

   version_ns=GIT \
      build_dir=/usr/local/src-test \
      ns_modules="nsdbpg nsdbi nsdbipg nsudp nssmtpd nsloopctl" \
      bash install-ns.sh 

For standard setups, the default settings should be OK.

After running both scripts in the default configuration, you will see e.g.

   Congratulations, you have installed OpenACS with NaviServer on your machine.
   You might start the server manually with
       sudo /usr/local/ns/bin/nsd -t /usr/local/ns/config-oacs-5-10-0.tcl -u nsadmin -g nsadmin

One can start the server manually with the mentioned command.

Using systemd

On Fedora/CentOS or on Ubuntu installations starting with 15.04, systemd is used. The generated startup file for RedHat/Fedora is in /lib/systemd/system/oacs-5-10-0.service. The startup commands for systemd are

    sudo systemctl status oacs-5-10-0
    sudo systemctl start oacs-5-10-0
    sudo systemctl stop oacs-5-10-0

Remember, when a new systemd service is installed, systemd requires the following command to re-scan its service files:

    sudo systemctl daemon-reload

To start OpenACS automatically on every new start of the machine, issue the following command:

    sudo systemctl enable oacs-5-10-0

Using upstart

Alternatively, some older Ubuntu versions (up to 15.04) use upstart. For upstart, the the generated startup file is in /etc/init/oacs-5-9-1.conf. The service can be started/managed with the following commands

    sudo initctl status oacs-5-10-0
    sudo initctl start oacs-5-10-0
    sudo initctl stop oacs-5-10-0

Configuration

When the service is running, one can use OpenACS by browsing to http://localhost:8000/ (when the browser and server is running on the same host). The relevant files are stored under the following locations:

Configuration file /usr/local/ns/config-oacs-5-10-0.tcl
access.log /var/www/oacs-5-10-0/log/
error.log /var/www/oacs-5-10-0/log/
Source tree /var/www/openacs-5-10-0/packages/

 

Install OpenACS on debian unstable / Ubuntu 7.10

Created by David Arroyo Menéndez, last modified by Gustaf Neumann 26 May 2021, at 12:20 PM

 

This page is mostly obsolete. There are now Debian packages for all OpenACS requirements, and OpenACS (.LRN) itself, and a fairly general installer from scratch naviserver-openacs.

See The debian wiki page

The rest of this page is superseded by the debian wiki page.

You can also use the en:OpenACSDebianInstallGuide quicksheet.

Install tcl 8.4

apt-get install tcl8.4 tcl8.4-dev tcl8.4-doc

Install PostgreSQL 8.2

(from ubuntu repository or debian etch) for PG 8.2 I had to add this line to the /etc/apt/sources.list (under debian etch) 

deb http://www.backports.org/debian etch-backports main contrib non-free 

Install with apt

apt-get install postgresql-8.2 postgresql-client postgresql-dev postgresql-doc 

under debian-etch I did this to avoid downloading some 7.4-packages

apt-get install postgresql-8.2 postgresql-client-8.2 postgresql-dev postgresql-doc-8.2 

Config the postgresql 8.x

from How_to_install_in_Postgres_8.x
/etc/postgresql/8.2/main/postgresql.conf

add_missing_from = on
regex_flavor = extended
default_with_oids = on

On debian you could need to change the postgresql port number to 5432, see /etc/postgresql/8.2/main/postgresql.conf

Create the database


 

su postgres -c "/usr/lib/postgresql/8.2/bin/createlang plpgsql template1"
su postgres -c "createuser service"

Shall the new user be allowed to create
    databases? (y/n) y
  Shall the new user be allowed to create
    more new users? (y/n) y
  CREATE USER
su postgres -c "createdb -E UNICODE service"

Install AOLserver

(AOLserver 4.5 for now only from debian unstable)
# Note: on ubuntu maybe more better install AOLserver 4.0 and you can download it from debian stable

  1. Add the next lines to /etc/apt/sources.list
    deb http://http.us.debian.org/debian stable main contrib non-free
    deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
    deb http://security.debian.org stable/updates main contrib non-free
    
  2. Update
    apt-get update
    
    # If you have any trouble with gpg keys, then you must read: http://www.davidam.com/debian/debian-gpg
     
  3. Install wit apt
    
     

    apt-get install -t unstable aolserver4 aolserver4-nscache aolserver4-nsopenssl aolserver4-nspostgres aolserver4-nssha1 aolserver4-dev aolserver4-doc daemontools-installer cvs

    *note: unpack the https.gz from aolserver4-nsopenssl and copy it over to the tcl directory of aolserver4, if not the api with https such as ns_httpspost will not be available.

    https.gz is normally found at /usr/share/doc/aolserver4-nsopenssl/examples/

    The tcl directory for aolserver4 is normally found at /usr/lib/aolserver4/modules/tcl/

  4. Install tdom from cvs
    # Sometimes cvs.tdom.org is down, if you have problems you can download with
    wget http://cognovis.de/file-storage/view/aolserver45.tar.bz2 
    cd /usr/lib/aolserver4
    sudo ln -s /usr/include/aolserver4 include
    mkdir /usr/local/src/aolserver4
    cd /usr/local/src/aolserver4
    sudo cvs -z3 -d:pserver:anonymous@cvs.tdom.org:/usr/local/pubcvs co tdom
    cd tdom/unix  
    ../configure --enable-threads --disable-tdomalloc --with-aolserver=/usr/lib/aolserver4 --prefix=/usr/lib/aolserver4 --with-tcl=/usr/lib/tcl8.4
    sudo make install
    
  5. Install XOTcl
    cd /usr/local/src
    sudo wget http://media.wu-wien.ac.at/download/xotcl-1.6.7.tar.gz
    sudo tar xvfz xotcl-1.6.7.tar.gz
    cd xotcl-1.6.7/
    export CC=gcc
    sudo ./configure --enable-threads --enable-symbols --prefix=/usr/lib/aolserver4 --exec-prefix=/usr/lib/aolserver4 --with-tcl=/usr/lib/tcl8.4
    sudo make
    sudo make install-aol
  6. Install TclLib
    cd /usr/local/src
    sudo wget http://kent.dl.sourceforge.net/sourceforge/tcllib/tcllib-1.10.tar.gz
    sudo tar xvzf tcllib-1.10.tar.gz
    cd tcllib-1.10
    sudo ./configure --prefix=/usr/lib/aolserver4
    sudo make install
    

Download and config OpenACS 5.4

  1. Create the directory where we can install OpenACS
    adduser service
    su - service
    mkdir aolserver
    cd aolserver
  2. Copy the two config files aolserver.nsadmin and nsadmin.tcl there:
    wget http://www.davidam.com/debian/aolserver.nsadmin
    wget http://www.davidam.com/debian/nsadmin.tcl
  3. Change nsadmin to service
    mv aolserver.nsadmin aolserver.service
    mv nsadmin.tcl service.tcl
    
    sed -i "s/nsadmin/service/g" aolserver.service service.tcl
    
  4. Download OpenACS from cvs
    cvs -z3 -d :pserver:anonymous@cvs.openacs.org:/cvsroot co -r oacs-5-4 openacs-4
    mv openacs-4 service 
    chmod 774 aolserver.service
    

     # create log directory (if needed)

     

    mkdir service/log 
  5. Start AOLserver
    ./aolserver.service start
    Some minutes after that, it must be running on http://localhost:8000

OpenACS/.LRN for Debian

Created by Héctor Romojaro, Stefan Sobernig, last modified by Gustaf Neumann 22 Mar 2019, at 11:14 PM

 

Logo

 

Packages of OpenACS and .LRN are now available for Debian GNU/Linux. We hope to facilitate the adoption by novices and the infrastructure deployment by professional users, both running Debian GNU/Linux and its derivatives. Our packaging activity explicitly targets Debian GNU/Linux stable, testingand unstable. Important dependencies are co-maintained with the Debian Tcl/Tk Maintainers.

See also OpenACS for Ubuntu.

Getting started

Please, review the section on supported distributions first.  Currently, the core packages (openacs, dotlrn) and their dependencies are included into the official Debian GNU/Linux repositories.

Install


  1. Run:

    apt-get update

     

  2. (optional) Provide for a PostgreSQL environment: If you don't have a PostgreSQL installation at hand, provide one. You do not need to care about setting up a concrete data base. This is automatically done by the OpenACS and dotlrn post-install instructions. For further PostgreSQL-related set-up issue, see ...
     
    apt-get install postgresql
    
    If you run a remote PostgreSQL instance, remember to allow for access of the PostgreSQL Administrator (postgres) and the openacs/dotlrn user from machine hosting your OpenACS/.LRN installation.
     
  3. Install the core packages and follow the on-screen instructions:
     
    # OpenACS
    apt-get install openacs
    ... or ...
     
    # .LRN
    apt-get install dotlrn   

After Install

  1. (optional) To change IP address and port of the instance, please edit the file:
     
    # OpenACS
    /etc/openacs/openacs.sh
    
    # dotLRN
    /etc/dotlrn/dotlrn.sh
    
    
    
  2. (optional) To control the instance using daemontools, please install the daemontools debian packages and follow the instructions on the file:

     
    # OpenACS
    /usr/share/doc/openacs/README.daemontools
    
    # dotLRN
    /usr/share/doc/dotlrn/README.daemontools
     

To-dos

Next Steps, After Basic Installation (above)

 

People

Active contributors

  • Héctor Romojaro 
  • Stefan Sobernig
  • Avni M. Khatri
  • Carl R. Blesius


Packages status


Packages maintained by Debian Tcl/Tk Maintainers

 

Packages co-maintained by OCT & Debian Tcl/Tk Maintainers

 

 

 

Prodding

Please, for getting in contact and reporting issues, consider ...

OpenACS/.LRN for Ubuntu

Created by Héctor Romojaro, last modified by Gustaf Neumann 20 Apr 2017, at 10:32 PM

Packages of OpenACS and .LRN are now available for Ubuntu Linux. We hope to facilitate the adoption by novices and the infrastructure deployment by professional users, both running Debian GNU/Linux and its derivates. This is an on-going effort. Beware, our packaging activity explicitly targets Ubuntu Linux 10.04 LTS (Lucid Lynx) and further versions. Important dependencies are co-maintained with the Debian Tcl/Tk Maintainers.

See also OpenACS for Debian.

Getting started

Please, review the section on supported distributions first. Currently, the core packages (openacs, dotlrn) are included into the Universe Ubuntu repository.

Release packages for Ubuntu 10.04 and Further


  1. Run:
     
    apt-get update
  2. (optional) Provide for a PostgreSQL environment: If you don't have a PostgreSQL installation at hand, provide one. You do not need to care about setting up a concrete data base. This is automatically done by the openacs and dotlrn post-install instructions.

     

    apt-get install postgresql
    
    If you run a remote PostgreSQL instance, remember to allow for access of the PostgreSQL Administrator (postgres) and the openacs/dotlrn user from the machine hosting your OpenACS/.LRN installation.
     
  3. Install the core packages and follow the on-screen instructions:
     
    # OpenACS
    apt-get install openacs
    ... or ...
     
    # .LRN
    apt-get install dotlrn 
     

After Install

  1. (optional) To change IP address and port of the instance, please edit the file:
     
    # OpenACS
    /etc/openacs/openacs.sh
    
    # dotLRN
    /etc/dotlrn/dotlrn.sh
    
    
    
  2. (optional) To control the instance using daemontools, please install the daemontools ubuntu packages and follow the instructions on the file:

     
    # OpenACS
    /usr/share/doc/openacs/README.daemontools
    
    # dotLRN
    /usr/share/doc/dotlrn/README.daemontools
     

 

People

Active contributors

  • Héctor Romojaro 
  • Stefan Sobernig
  • Avni M. Khatri
  • Carl R. Blesius


Packages status


Packages maintained by Debian Tcl/Tk Maintainers

 

Packages co-maintained by OCT & Debian Tcl/Tk Maintainers

 

 

 

Community packages maintained by OCT

Prodding

Please, for getting in contact and reporting issues, consider ...

Installing OpenACS on debian

Created by OpenACS community, last modified by Gustaf Neumann 21 Oct 2016, at 08:53 AM

This information is deprecated. Please refer to Installing OpenACS on debian.

The quicksheet versions:

You should know what you're doing when you use them.

notes

Tcl development headers are required for compiling Tcl packages yourself.

apt-get install tcl8.4-dev

Should you decide to Install OpenACS from source using general en:openacs-system-install instructions, refer to these notes for changes:

Installing Postgresql

Debian stable user should install PostGreSQL from source as detailed below, or they should use the www.backports.org backport for Postgres to get a more current version. Debian unstable users: the following process has been known to work (but you should double-check that the version of PostGreSQL is 7.3 or above):

For Debian stable users, you can use backports, by adding this line to the /etc/apt/sources.list


 

deb http://www.backports.org/debian stable bison postgresql openssl openssh tcl8.4 courier debconf spamassassin tla diff patch neon chkrootki

and perform this actions:

apt-get update
apt-get install postgresql postgresql-dev postgresql-doc
ln -s /usr/include/postgresql/ /usr/include/pgsql
ln -s /var/lib/postgres /usr/local/pgsql
ln -s /usr/include/pgsql /usr/local/pgsql/include
su postgres -c "/usr/lib/postgresql/bin/createlang plpgsql template1"

..and proceed to the next section.

Installing PostgreSQL's Tsearch2


 

apt-get install postgresql-contrib

Creating the Postgres user.

Use adduser instead of useradd. Type man adduser for more info.

Compiling PostgreSQL

On debian woody (stable, 3.0), do:

./configure --without-readline --without-zlib 

Set PostgreSQL to start on boot

[root ~]# cp /var/tmp/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql
[root ~]# chown root.root /etc/init.d/postgresql
[root ~]# chmod 755 /etc/init.d/postgresql
[root ~]# 
cp /var/tmp/openacs-5.2.0d1/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql
chown root.root /etc/init.d/postgresql
chmod 755 /etc/init.d/postgresql

Test the script

[root ~]# /etc/init.d/postgresql stop
Stopping PostgreSQL: ok
[root ~]# 

If PostgreSQL successfully stopped, then use the following command to make sure that the script is run appropriately at boot and shutdown.

[root ~]# update-rc.d postgresql defaults
 Adding system startup for /etc/init.d/postgresql ...
   /etc/rc0.d/K20postgresql -> ../init.d/postgresql
   /etc/rc1.d/K20postgresql -> ../init.d/postgresql
   /etc/rc6.d/K20postgresql -> ../init.d/postgresql
   /etc/rc2.d/S20postgresql -> ../init.d/postgresql
   /etc/rc3.d/S20postgresql -> ../init.d/postgresql
   /etc/rc4.d/S20postgresql -> ../init.d/postgresql
   /etc/rc5.d/S20postgresql -> ../init.d/postgresql
[root ~]# /etc/init.d/postgresql start
Starting PostgreSQL: ok
[root ~]#

Debian defaults to starting all services on runlevels 2-5.

Installing Tcl

You can apt-get install tcl8.4-dev if you have the right version (stable users will need to add tcl8.4 to their sources.list file as described in the "Install Postgresql" section above. You will have to use /usr/lib/tcl8.4/ instead of /usr/local/lib when you try to find the tcl libraries, however.

apt-get install tcl8.4 tcl8.4-dev

 

and proceed to installing aolserver.

When installing aolserver, replace --with-tcl=/usr/local/lib/ with --with-tcl=/usr/lib/tcl8.4.

Installing AOLserver

To install AOLserver you can use apt command:

apt-get install aolserver4 aolserver4-nscache aolserver4-nspostgres aolserver4-nssha1 tdom

After installing AOLserver, You need to make the following symbolic link:

ln -s /usr/lib/aolserver4 /usr/local/aolserver

 

 

Installing OpenACS on debian

Created by OpenACS community, last modified by Gustaf Neumann 21 Oct 2016, at 08:53 AM

This information is deprecated. Please refer to Installing OpenACS on debian.

The quicksheet versions:

You should know what you're doing when you use them.

notes

Tcl development headers are required for compiling Tcl packages yourself.

apt-get install tcl8.4-dev

Should you decide to Install OpenACS from source using general en:openacs-system-install instructions, refer to these notes for changes:

Installing Postgresql

Debian stable user should install PostGreSQL from source as detailed below, or they should use the www.backports.org backport for Postgres to get a more current version. Debian unstable users: the following process has been known to work (but you should double-check that the version of PostGreSQL is 7.3 or above):

For Debian stable users, you can use backports, by adding this line to the /etc/apt/sources.list


 

deb http://www.backports.org/debian stable bison postgresql openssl openssh tcl8.4 courier debconf spamassassin tla diff patch neon chkrootki

and perform this actions:

apt-get update
apt-get install postgresql postgresql-dev postgresql-doc
ln -s /usr/include/postgresql/ /usr/include/pgsql
ln -s /var/lib/postgres /usr/local/pgsql
ln -s /usr/include/pgsql /usr/local/pgsql/include
su postgres -c "/usr/lib/postgresql/bin/createlang plpgsql template1"

..and proceed to the next section.

Installing PostgreSQL's Tsearch2


 

apt-get install postgresql-contrib

Creating the Postgres user.

Use adduser instead of useradd. Type man adduser for more info.

Compiling PostgreSQL

On debian woody (stable, 3.0), do:

./configure --without-readline --without-zlib 

Set PostgreSQL to start on boot

[root ~]# cp /var/tmp/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql
[root ~]# chown root.root /etc/init.d/postgresql
[root ~]# chmod 755 /etc/init.d/postgresql
[root ~]# 
cp /var/tmp/openacs-5.2.0d1/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql
chown root.root /etc/init.d/postgresql
chmod 755 /etc/init.d/postgresql

Test the script

[root ~]# /etc/init.d/postgresql stop
Stopping PostgreSQL: ok
[root ~]# 

If PostgreSQL successfully stopped, then use the following command to make sure that the script is run appropriately at boot and shutdown.

[root ~]# update-rc.d postgresql defaults
 Adding system startup for /etc/init.d/postgresql ...
   /etc/rc0.d/K20postgresql -> ../init.d/postgresql
   /etc/rc1.d/K20postgresql -> ../init.d/postgresql
   /etc/rc6.d/K20postgresql -> ../init.d/postgresql
   /etc/rc2.d/S20postgresql -> ../init.d/postgresql
   /etc/rc3.d/S20postgresql -> ../init.d/postgresql
   /etc/rc4.d/S20postgresql -> ../init.d/postgresql
   /etc/rc5.d/S20postgresql -> ../init.d/postgresql
[root ~]# /etc/init.d/postgresql start
Starting PostgreSQL: ok
[root ~]#

Debian defaults to starting all services on runlevels 2-5.

Installing Tcl

You can apt-get install tcl8.4-dev if you have the right version (stable users will need to add tcl8.4 to their sources.list file as described in the "Install Postgresql" section above. You will have to use /usr/lib/tcl8.4/ instead of /usr/local/lib when you try to find the tcl libraries, however.

apt-get install tcl8.4 tcl8.4-dev

 

and proceed to installing aolserver.

When installing aolserver, replace --with-tcl=/usr/local/lib/ with --with-tcl=/usr/lib/tcl8.4.

Installing AOLserver

To install AOLserver you can use apt command:

apt-get install aolserver4 aolserver4-nscache aolserver4-nspostgres aolserver4-nssha1 tdom

After installing AOLserver, You need to make the following symbolic link:

ln -s /usr/lib/aolserver4 /usr/local/aolserver

 

 

Try Openacs

Created by OpenACS community, last modified by Gustaf Neumann 01 May 2015, at 09:43 AM

To try OpenACS, you might lease a hosted system with OpenACS installed on it:

previous November 2024
Sun Mon Tue Wed Thu Fri Sat
27 28 29 30 31 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

Popular tags

17 , 5.10 , 5.10.0 , 5.10.1 , 5.9.0 , 5.9.1 , ad_form , ADP , ajax , aolserver , asynchronous , bgdelivery , bootstrap , bugtracker , CentOS , COMET , compatibility , CSP , CSRF , cvs , debian , docker , docker-compose , emacs , engineering-standards , exec , fedora , FreeBSD , guidelines , host-node-map
No registered users in community xowiki
in last 30 minutes
Contributors

OpenACS.org