Skip to content

OGo Docs

Sections
Personal tools
You are here: Home » Members » esbjerg's Home » Installing OGo on FreeBSD

Installing OGo on FreeBSD

Document Actions
How to install OpenGroupware on FreeBSD

Draft

Basicly follow the official guide.
I install Opengroupware in /usr/local which is what is normally done in FreeBSD.
Dependencies
All of the dependencies from the official documentation can installed from ports.
Note that python is not listed as a dependency but OpenGroupware cannot be build without python.

There are some differences between FreeBSD 4.x and 5.x. Mainly the GCC compiler has changed from 2.9.5 to 3.x. In FreeBSD 5.2.1 the shipped compiler is a snapshot of GCC with modifications. You cannot build OpenGroupware with this compiler due to a bug in the ObjectiveC part. Instead install gcc33 (and gmake) from ports.
Afterwords make sure that the following variable is set in the build system:

CC=gcc33
and that the PATH includes /usr/local/bin.
I ended up installing gnustep-make and then modifying GNUstep.sh to include the CC=gcc33 to make sure everything was build with gcc33.

I have used the following build script to build ogo on both 4.x and 5.x:

#!/bin/sh

# place where the cvs checkout lives
BUILDDIR="/usr/local/src/OpenGroupware.org"
HOME=/usr/OGo

cd ${BUILDDIR} &&\
cd ThirdParty &&\
cd gnustep-make &&\
./configure --prefix=$HOME/ogo \
    --without-system-root \
    --with-network-root=$HOME/ogo \
    --with-local-root=$HOME/ogo \
    --with-user-root=$HOME/ogo \
    --with-library-combo=gnu-fd-nil &&\
gmake -s install &&\
cd .. &&\

# get the gnustep variables sourced
. $HOME/ogo/Makefiles/GNUstep.sh &&\

cd gnustep-objc &&\
gmake -s debug=yes install &&\
cd ..  &&\
cd libFoundation &&\
./configure --with-gnustep &&\
gmake -s debug=yes install &&\
cd ..  &&\
cd libxml2 &&\
./cfg-gnustep.sh &&\
gmake -s install &&\
cd ..  &&\
cd libical &&\
./cfg-gnustep.sh &&\
gmake -s install &&\
cd .. &&\
cd js-1.5 &&\
gmake -s install &&\
cd ..  &&\
cd ../SOPE &&\
cd skyrix-xml &&\
gmake -s debug=yes install &&\
cd ..  &&\
cd skyrix-core &&\
gmake -s debug=yes install &&\
cd .. &&\
cd skyrix-sope &&\
gmake -s debug=yes install &&\
cd .. &&\
cd .. &&\
cd ThirdParty/gnustep-db &&\
cd GDLAccess &&\
gmake -s debug=yes install &&\
cd .. &&\
cd PostgreSQL72 &&\
gmake -s debug=yes install &&\
cd .. &&\
cd ../.. &&\
cd Logic &&\
gmake -s debug=yes install &&\
cd .. &&\
cd Database/OGoModel &&\
gmake -s debug=yes install &&\
cd ../.. &&\
cd DocumentAPI &&\
gmake -s debug=yes install &&\
cd .. &&\
cd WebUI &&\
gmake -s debug=yes install &&\
cd Resources/ &&\
gmake -s debug=yes install &&\
cd ../.. &&\
cd Themes/WebServerResources &&\
gmake install &&\
cd ../.. &&\
cd ZideStore/ &&\
gmake -s debug=yes install &&\
cd .. &&\
echo Success
After installing setup the defaults for OpenGroupware using Defaults.
I have created the following script for my setup.
 #!/bin/sh

Defaults write NSGlobalDomain LSConnectionDictionary '{databaseName = OGo; hostName = lo
calhost; password = ""; port = 5432; userName = OGo}'
Defaults write NSGlobalDomain NGBundlePath "/usr/OGo/ogo/Library/OpenGroupware.org"
mkdir /usr/OGo/ogo/documents
Defaults write NSGlobalDomain LSAttachmentPath /usr/OGo/ogo/documents
Defaults write NSGlobalDomain LSModelName OpenGroupware.org_PostgreSQL
Defaults write NSGlobalDomain LSAdaptor PostgreSQL72
Defaults write NSGlobalDomain SendmailPath /usr/local/sbin/sendmail
Defaults write OpenGroupware LSTimeZones Europe/Copenhagen
Defaults write OpenGroupware LSAttachmentPath /usr/OGo/ogo/documents
Defaults write OpenGroupware OGoMinimumActiveSessionCount 0

# zidestore
Defaults write ZideStore ZLFolderRefresh 1
Defaults write ZideStore WOPort "localhost:23000"
Defaults write ZideStore SxExplain YES
Defaults write ZideStore WOCachingEnabled YES
Defaults write ZideStore WOHttpTransactionUseSimpleParser YES
Defaults write ZideStore WOHttpAllowHost localhost 
SendmailPath should be /usr/sbin/sendmail which is actually the freebsd mailwrapper.

PostgreSQL can be installed from ports. I have run OpenGroupware with both version 7.4.1 and 7.4.2.
After installing PostgreSQL run initdb to initialize the database system:

# su -l pgsql -c initdb
Change /usr/local/pgsql/data/postgresql.conf to have the following line:
tcpip_socket = true
Which allows connections on tcp sockets. And make sure the following is in pg_hba.conf
host    all         all         127.0.0.1         255.255.255.255   trust
It's possible to set a password and require this to used everytime OpenGroupware connects.

Next add a user ogo to FreeBSD with home /usr/local/OGo. I prefer to use the bash shell for this user.

See official documentation for the exact commands to the following steps.
Su to the pgsql user and add the OGo user and OGo database.
Su to the OGo user and from /usr/local/src/OpenGroupware.org/Database/PostgreSQL run the pg-build-schema.sql

Build the ngoweb apache module from SOPE/mod_ngobjweb and install the module by copying it to /usr/local/libexec/apache. Add the following lines to /usr/local/etc/apache/httpd.conf:

AddModule ngobjweb_module.c
LoadModule ngobjweb_module libexec/apache/ngobjweb_1.3.x.so
(with the other module settings) Add to the same file:

SetHandler ngobjweb-adaptor
SetAppPort 20000



SetHandler ngobjweb-adaptor
SetAppPort 23000

The OpenGroupware part is essential to access OpenGroupware. The zidestore part is for using the zidestore (webdav) access.

Created by esbjerg
Last modified 2004-08-10 09:24 PM
 

Powered by Plone

This site conforms to the following standards: