Overview

What is OpenACS?

According to Philip Greenspun:

“The ArsDigita Community System it is a toolkit of software that will help you build Web services with a collaborative dimension, ranging from knowledge management within companies to B2C ecommerce to product support and community among the customers. The software is free and open-source and has been tested in heavy use since 1995.”

So that's what the ArsDigita Community System (ACS) is... what's OpenACS? OpenACS was born when Don Baccus, Ben Adida, et al decided to port ACS from Oracle to PostgreSQL, thus making it a fully open-source solution.

OpenACS 4 is the next generation of the web toolkit. It's based on ACS 4, but no longer follows ArsDigita development. Unlike both ACS (which required Oracle) and OpenACS 3.x (which required PostgreSQL), OpenACS 4 allows you to use either database. It's also built in such a way to allow enterprising hackers to extend it to other databases. Don Baccus leads the development and numerous developers (and non-developers) contribute from around the world.

Purpose of this document

This document will describe how to install OpenACS 4 from scratch, using the source code. We will assume that you have an OS installed, but we'll discuss this more in the next section. For most of this guide, we will assume that you are using Linux on a PC, but we'll also point you to excellent step-by-step guides for other operating systems.

Requirements

You will need a PC (or equivalent) with at least these minimum requirements:

  • Pentium processor

  • 128 MB RAM (much more if you want Oracle)

  • 4 GB hard drive

If you want to serve pages to people outside of your machine, you'll need a network connection of some type.

Note that these are minimum requirements to get a development system up and running. For a production system, we recommend you read about the ArsDigita Server Architecture

Running a reliable database-backed web server requires experience with the server's environment, in this case UNIX. UNIX is not always an intuitive environment and this guide cannot hope to explain every nuance. You should be comfortable with the following tasks before attempting an installation:

  • Adding users, groups, setting passwords

  • Starting an X server and running an X program remotely

  • Basic file management using cp, rm, mv, and cd

  • Compiling a program using a Makefile

If you've never done these things before, consider exploring UNIX in greater depth before installing OpenACS. Some useful resources for doing this are described in the Resources section.

All of the software that you will need is free and open-source, except for Oracle. You can obtain a free copy of Oracle for development purposes. This is described in the Acquire Oracle section.

Steps involved

The basic steps to getting OpenACS up and running are:

  1. Install an OS

  2. Install a webserver (AOLServer)

  3. Install a database (Oracle or PostgreSQL)

  4. Install a database driver (allows the webserver to talk to the database)

  5. Configure the webserver and database

  6. Start the OpenACS installer

What if I get stuck?

We'll do our best to assure that following our instructions will get you to the promised land. If something goes wrong, don't panic. There's plenty of ways to get help. Here are some tips:

  • Make sure that you keep track of what commands you are running and their output. I like to do my installations in a shell inside of emacs (M-x shell) so that I can save the output if needed.

  • We'll point out where the error logs for the various pieces of software are. Output from those logs will help us help you. Don't worry if you feel overwhelmed by all the information in the error logs. Over time, you'll find that they make more and more sense. Soon, you'll actually look forward to errors so that you can run to the log and diagnose the problem.

  • Search the bboards at openacs.org - you'll often find many people who have struggled through the same spot that you're in.

  • Ask questions at the irc channel on openprojects.net (#openacs). They're knowledgeable and quite friendly if you can keep them on topic.

  • Post a question on the bboards. Make sure you've done a search first. When you do post, be sure to include your setup information (OS, etc) as well as the exact commands that are failing with the accompanying error. If you want to post stuff from your logs (please do!), be sure to enclose them in <PRE></PRE> tags so that they don't get all jumbled together.

  • If you find errors in this document or if you have ideas about making it better, please post them in our bug tracker - the SDM.

Is there an easier way?

After reading through this tome, you may ask yourself if there is a better way. And there is! Jonathan Marsden has done all the dirty work to create RPMs for OpenACS4. These RPMs will install AOLServer, all the AOLServer modules, PostgreSQL and OpenACS4 simply by typing one magic command. They're currently at http://www.xc.org, but will eventually also be available at http://openacs.org/software. They're quite new and Jonathan invites (and is quite responsive to) feedback. Leave comments at this thread.

Where did this document come from?

This document was created by Vinod Kurup, but it's really just plagiarism from a number of documents that came before it. If I've used something that you've written without proper credit, let me know and I'll fix it right away.

These are a few of my sources:

Please also see the Credits section for more acknowledgements.

Resources

Here are some resources that OpenACS users have found useful.

Books

($Id: install-overview.html,v 1.1 2002/02/02 03:53:31 vinodk Exp $)