Note:
This page describes the installation of the OGo CVS packages which will be
deprecated soon for OGo 1.0a. The new Debian packages of OGo 1.0a are based
on the work of Sebastian Ley and do a lot of setup automatically (like
configuring the database, init scripts and Apache module).
based on work of Robert Hutton,
which is based on the work by Bjoern Stierand posted on the OGo-Users list [archive].
1. Add the DEB Repository to /etc/apt/sources.list
Do this as root:
echo "deb http://download.opengroupware.org/packages deb/" >>
/etc/apt/sources.list
2. Install the Packages
apt-get update
apt-get install opengroupware.org
3. Setup the Database
Note:
This file is not yet updated for OGo 1.0a!
You have to patch your pg_hba.conf to allow tcp host
connections. What we want is a setup that will trust connections
from the localhost, but deny from other hosts. The following will
accomplish this.
# TYPE DATABASE
USER
IP-ADDRESS
IP-MASK
METHOD
local
all
all
trust
host
all
all
127.0.0.1
255.255.255.255 trust
host
all
all
0.0.0.0
255.255.255.255 reject
Some people have had problems with this. You may need to put the
following in instead. I'm not sure why at this stage; I think
perhaps
the file format for woody and sid are different. If you're
running
woody, try the following:
local
all
trust
host
all
127.0.0.1
255.255.255.0 trust
host
all
0.0.0.0
255.255.255.255 reject
You also have to make sure that you allow TCP/IP socket
connections. You do this in your /etc/postgresql/postgresql.conf
file with the line:
tcpip_socket = true
Then restart postgres with
/etc/init.d/postgresql restart
. You can see if postgres is
allowing connections by looking in /var/log/syslog.
If you want get more security replace trust by password, md5 or
something... depends on postgres version. Don't forget to restart
postgres after modifying these settings. TODO: update this bit
Now we can create the database, user and import tables:
su - postgres
createdb ogo
createuser -a -d ogo
psql ogo ogo #if you have problems with this, try psql -U ogo ogo
# [now you are on the postgresql prompt]
ogo=# \i
/usr/lib/opengroupware.org/Database/PostgreSQL/pg-build-schema.psql
ogo=# \q
logout
Note: the position of the SQL script depends on the Linux distribution. If
you can't find it, just perform a find /usr -name "pg-bui*.psql
call in the shell to locate the script.
Update: on 1.0a8 RPMs the script is located in
/usr/local/lib/opengroupware.org-1.0a/commands/OGo.model/Resources/.
4. Setup the Defaults
Note:
This file is not yet updated for OGo 1.0a!
The Defaults are the configuration database of OGo. Something like a
structured and persistent set of environment variables.
su - root
chown -R ogo.skyrix /usr/lib/opengroupware.org
su - ogo
Defaults write NSGlobalDomain LSConnectionDictionary \
'{hostName=localhost; userName=ogo; password=""; port=5432; databaseName=ogo}'
Defaults write NSGlobalDomain NGBundlePath \
"/usr/lib/opengroupware.org/Library/OpenGroupware.org"
Defaults write NSGlobalDomain LSAttachmentPath \
/usr/lib/opengroupware.org/documents
Defaults write NSGlobalDomain LSModelName OpenGroupware.org_PostgreSQL
Defaults write NSGlobalDomain LSAdaptor PostgreSQL
ln -s ../../WebServerResources/
cd ..
Now run the OGo server. Add the -WOHttpAllowHost <host>
switch to the following cmd to connect from host <host>. I found that
localhost didn't work; I had to use my hostname (you can find your hostname
using the command hostname):
cd /usr/local/sbin/ogo-webui-1.0a \
-WOHttpAllowHost <host>
If you want to be able to connect from more than one system, you can use the following syntax:
-WOHttpAllowHost '([your-host],[your-host2])'
Now connect to the installation at
http://localhost:20000/OpenGroupware. If you want to access the
system from another host, you will need to add the hostname to the
/etc/hosts file so that OGo doesn't barf when trying to do
the hostname lookup.
This is not really satisfactory, though. What we will do now is set up
Apache as the front end to OGo so that it can do all the hard work of the
HTTP requests for us. This will allow us to connect from hosts without
specifying them on the command line.
5. Setup the Apache Frontend
First get the mod_ngobjweb sources:
mod_ngobjweb-latest.tar.gz
After you download the archive and extract the files, adjust the Makefile
(which is called GNUmakefile) so that it points to the right directories.
Look for the section just under the line with # config on it.
Set the following variables:
APXS = /usr/bin/apxs
HTTPD = /usr/sbin/apache # or /usr/sbin/apache-perl if you're using the mod-perl version of apache
Also note that there's another line with #HTTPD = /usr/sbin/httpd on
it a bit further down. Comment this out or delete it. Also update the
APACHE_VERSION = line to reflect the version you have installed
(1.3.27 on sid, 1.3.26 on woody).
You need to have an Apache, its header files and the apxs tool
installed on your system. You can get these from the apache-dev
package. Now type make. This will create the file,
ngobjweb-x.xx.so (where x.xx is your Apache version).
Create the directory /usr/lib/opengroupware.org/WebServer and copy
ngobjweb-x.xx.so there.
Now edit the Apache config file (usually located at
/etc/apache/httpd.conf or /etc/httpd/httpd.conf) and add
the following entries:
LoadModule ngobjweb_module /usr/lib/opengroupware.org/WebServer/ngobjweb_1.3.27.so
<LocationMatch "^/OpenGroupware/*">
SetHandler ngobjweb-adaptor
SetAppPort 20000
</LocationMatch>
Alias /OpenGroupware10a.woa/WebServerResources/ \
/usr/lib/opengroupware.org/WebServerResources/
Adjust the paths to match your system. Now start the OpenGroupware.org
application (for hand by now, init-scripts will be provided soon). Start
the OGo server:
ogo-webui-1.0a \
-WOHttpAllowHost <host>
and connect to it through 'http://your.web.server/OpenGroupware'.
6. Init Scripts
TODO: ...
7. Getting eMail Server to Work
Cyrus IMAPD is supported. TODO: ...
8. Interfacing
ZideStore is not yet in the repository and ZideLook not yet available
outside Germany ... TODO
Installation Order for Individual Packages ...
Just using apt-get is easier, but in case you got the packages as individual
files, here is the installation order:
- (from the 'thirdparty' section)
- opengroupware.org-gstep-make
- opengroupware.org-gstep-objc
- opengroupware.org-libfoundation
- opengroupware.org-js
- opengroupware.org-libxml2
- (from the 'sope' section)
- opengroupware.org-xml
- opengroupware.org-xml-libxmlsaxdriver
- opengroupware.org-core
- opengroupware.org-gstep-db
- opengroupware.org-gstep-db-postgresql72
- opengroupware.org-sope
- (from the 'base' section)
- opengroupware.org-env
- opengroupware.org-logic
- opengroupware.org-docapi
- opengroupware.org-database
- opengroupware.org-webui-libs
- opengroupware.org-webui-common
- opengroupware.org-webui-admin
- opengroupware.org-webui-app
- opengroupware.org-webui-contact
- opengroupware.org-webui-job
- opengroupware.org-webui-mailer
- opengroupware.org-webui-news
- opengroupware.org-webui-prefs
- opengroupware.org-webui-resource-en
- opengroupware.org-webui-scheduler
- opengroupware.org-webui-forms
- opengroupware.org-webui-project
- opengroupware.org-theme-default-en