Installation Steps
After you have met the system requirements, You can install
it from the TarBall or you can get it directly from CVS.
Installing from TarBall
The files should be installed in the webserver directory. So all you need to
do is unpack the tar ball and copy the whole directory to the webserver directory
(eg. /home/httpd/html for default apache configuration in many linux distros).
You may have to get required permissions to do this. Contact your system
administrator if you dont have the permission to write to your webserver directory.
Installing from CVS
Grabbing a copy from CVS is not as hard as it may seem. You will need to have a cvs client installed.
Then try the following commands:
export CVSROOT=':pserver:anonymous@cvs.phpgroupware.sourceforge.net:/cvsroot/phpgroupware'
cvs login (just hit enter when prompted for a password)
cvs checkout phpgroupware
If you need to install into a different dirname, you can add ' -d dirname' after 'checkout' and before 'phpgroupware'.
The commands would look like this:
export CVSROOT=':pserver:anonymous@cvs.phpgroupware.sourceforge.net:/cvsroot/phpgroupware'
cvs login (just hit enter when prompted for a password)
cvs checkout -d dirname phpgroupware
Setup / Configure phpGroupWare
The config file
Copy the header.inc.php.sample file to
header.inc.php and edit the file, following the
directions in the comments.
Create database in MySQL
An empty database will be needed for phpGroupWare. Here are the instructions for doing so with MySQL.
First create the database:
mysqladmin create phpgroupware -p
Then login to the mysql:
mysql -p
Finally grant the needed security rights:
grant all on phpgroupware.* to phpgroupware@localhost identified by "some_password";
Create database in PostreSQL
An empty database will be needed for phpGroupWare. Here are the instructions for doing so with PostgreSQL.
Create the database:
postmaster -i -D /home/[username]/[dataDir]
You will probably need to review PostgreSQL documentation for futher details.
The Setup Program
Then point your browser to phpgroupware/setup/ which will
create (or upgrade) the database tables.
You wil be asked to login, using the password set in
header.inc.php. Setup will attempt to determine what version
of the phpGroupWare database you have installed, and upgrade to the most recent
version.
Note
The developers are concentrating on getting the beta
working, and have not spent a great deal of time building upgrade scripts from the
alpha versions of phpGroupWare. You are advised to backup your existing alpha
database before running the setup script to avoid problems!
If you get no error messages, continue on to phpgroupware/setup/config.php
to configure phpGroupWare to your system.
If you are using the email system you will need to create a temporary directory
where file uploads will be stored. For security reasons, you should chown
nobody.nobody and chmod 700 to that directory. Depending on your system configuration.
Default installs of Apache normally run as the user nobody. You may need your system
administrator to do this for you if you do not have root access.
If you do not have access to root, create this file and run it.
<?php
if (mkdir("/path/to/temp/directory",0700)) {
echo "Directory created successfully";
} else {
echo "Error creating directory";
}
?>
The phpGroupWare Daemon
If you have access to cron, you may want to setup the files in the cron
directory.
stalesessions.pl - There are 2 reasons for this file.
Users always forget to logout. This way the session doesn't sit around forever, creating a possible security risk.
The email system requires plain text passwords which are stored in the sessions table.
This file is not required, you can simply disable cron_apps in the admin -> applications section
to clean out the sessions table during login and logout
stale_uploads.pl - This will delete file attachments for messages that where not
completed. If a users browser crashes, Internet connection dies, etc, their
files will sit there forever unless deleted. You could add a few lines to
logout.php that will look in the temp directory for any stale uploads and delete
them. But, once again, it becomes a performance issue.
Testing the install
If your config is setup properly you can now login. Point your browser to the
installed location and login with the username demo and the password is 1234
At this point it would be a good idea to create a new user with administrative privileges and
delete the old one.
Installing additional applications
Once you have the core phpGroupWare install up and running,
you may want to download and install additional applications.
You should consult any README or INSTALL
files that come with the new application first, as most require you
to create additional tables in the database, and add additional
translation data to the lang table (typically a file called lang.sql)
You install the new application within the phpGroupWare install tree by
copying the application directory into the phpGroupWare install location,
and enabling the application through the Administration page.
For example, this is the process to install the
Headlines application (see
http://sourceforge.net/phpgwapps/ for
more on this and other applications).
Download the .tar.gz file for the application, or check out the source with cvs with
export CVSROOT=':pserver:anonymous@cvs.phpgroupware.sourceforge.net:/cvsroot/phpgwapps'
cvs login (just hit enter if prompted for a password)
cvs co headlines
Move the headlines directory into your phpGroupWare
install directory.
Log into phpGroupWare as an administrative user, and go to the Administration page.
In the first section, choose the Applications link.
Click on add, and fill in the form.
Application name
should be identical to the name
of the directory you moved into the phpGroupWare install, in this case use headlines
Application Title
is shown in the navigation bar and other places to refer to the
new application. Enter Headlines for this example.
Enabled
can be used to disable an application for all users temporially. You
should normal check the box to enable the application.
Back in the Administration page, you need to enable the application for specific users
or user groups by editing them, and checking the new Headlines box that appears
in the middle of the account editing page.
Once you have added the Headlines app to your account, you should see a Headlines
entry in the Administration and Preferences pages, and there should be an icon for
the Headlines application in the navigation bar.
Once you enable a few of the Headlines sites through the Administration page link, you
should see headlines grabbed from the sites you selected when you click on the Headlines
icon in the navigation bar.