If anyone's interested in trying out eGroupWare on an SME server, this is how I set about getting things to work (E&OE):
1. Upgrade php to version 4.3.8. Do this as described in various places in contribs.org. Look at:
http://www.ibiblio.org/pub/linux/distributions/e-smith/contrib/DanBrown/RPMS/i386/ or
http://ergin.dyndns.org/download/2. Install Postgres 7.4.2 as described in contribs.org. Look at a very clear description about how to do this at:
http://no.longer.valid/phpwiki/index.php/PostgreSQL3. Create a template file for modifying php.ini to include the postgres extension.. Create /etc/e-smith/template-custom/etc/php.ini/70PgsqlExtension. This file should contain a single line:
extension=pgsql.so
4. Before expanding the template check that a file called libpq.so.2 exists. Probably the easiest way to do this is to issue the command:
# ldd /usr/lib/php4/pgsql.so
and see if a missing libpq.so.2 is reported. If the file is missing, do the following (BEWARE!! I don’t know anything about libpq and in particular I don’t know about the differences between version 2 and 3. However, this fix seems to work and I’ve found no adverse effects so far!)
# ln –s /usr/lib/libpq.so.3 /usr/lib/libpq.so.2
Check again. If all is well expand the php.ini template.
# /sbin/e-smith/expand-template /etc/php.ini
and restart the httpd service.
# service httpd restart
Check for any errors.
5. Create an ibay to hold the eGroupWare stuff. Do this using the standard server interface. I called mine egroupware (very original).
6. Download the eGroupWare tarball from sourceforge. Visit
www.egroupware.org to get a link to the latest download. Create a temporary directory /downloads on the server, move the tarball into this new directory and expand it. As I had done the download via a Windoze box and stored it into my home directory on the server the following worked for me:
# mv /home/e-smith/files/users/<username>/home/eGroupWare-1.0.00.005-1.tar.gz /downloads
# tar –zxvf eGroupWare-1.0.00.005-1.tar.gz
Now move the resultant structure to the target iBay and change the file ownerships:
# cd /downloads/egroupware
# cp –R * /home/e-smith/files/ibays/egroupware/html
# chown –R www:shared /home/e-smith/files/ibays/egroupware/html
7. Create a directory description section for httpd.conf. To do this create the file /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/ 97egroupware and insert the following content:
Alias /egw /home/e-smith/files/ibays/egroupware/html
<Directory /home/e-smith/files/ibays/egroupware/html>
AddType application/x-httpd-php .php .php3 .phtml
Options Indexes +Includes FollowSymLinks
order deny,allow
deny from all
allow from all
php_flag register_globals off
php_value mbstring.func_overload 7
DirectoryIndex index.html index.htm index.php
</Directory>
Expand the template and restart httpd.
# /sbin/e-smith/expand-template /etc/httpd/conf/httpd.conf
# service httpd restart
8. Now set up the postgres access and create the required database. (Note: As this is a test installation, the security on the Postgres database is quite lax. However, it’s easy to tighten it up later.) Modify the file /etc/e-smith/templates-custom/var/lib/pgsql/data/pg_hba.conf so that the last lines read:
local all all trust
host all all <this server ip> 255.255.255.0 trust
host all all 127.0.0.1 255.255.255.0 trust
host all all 0.0.0.0 255.255.255.255 reject
(This file will have been created during installation of Postgres). Now expand the template and restart Postgres:
# /sbin/e-smith/expand-template /var/lib/pgsql/data/pg_hba.conf
# /etc/init.d/postgresql stop
Stopping postgresql service: [OK]
# /etc/init.d/postgresql start
Starting postgresql service: [OK]
9. Create the database user and database required for eGroupWare. Do this as follows:
# su postgres
bash-2.05a$ createuser egw –P
<type the password>
bash-2.05a$ Shall the new user be allowed to create databases (y/n) y
bash-2.05a$ Shall the new user be allowed to create new users (y/n) n
bash-2.05a$ createdb –U egw egw
10. Finally we can start the actual installation of eGroupWare. From a connected PC point a browser at https://<your server>/egw/setup and click on the ‘Check installation’ button. Fix any errors that occur and follow instructions!! It all worked for me!
11.
