actiTIME Basic is a free easy-to-use timesheet optimized for your basic time tracking needs. It provides you with functionality for:

  • time tracking and reporting
  • user schedule and overtime control
  • project and task management

For more information visit the website: http://www.actitime.com/fw_features.html

This article describes how to install actiTIME on a Debian server or a Debian derived OS such as Ubuntu. actiTIME comes in three flavors and one of them is freeware ;-) That’s the one we are going to install.

So let’s start!

These are the requirements for actiTIME:

  • Java 2 SDK 1.4.2 or higher
  • Apache Tomcat Application Server 4.1 or higher
  • MySQL database, it will need MySQL 4.1.17+, 5.0.x or 5.1.x installed

Install Java
Add “non-free” to the Debian Lenny repositories (/etc/apt/sources.list)

apt-get update && apt-get install sun-java6-jdk
  1. update-java-alternatives -s java-6-sun
  2. echo 'JAVA_HOME="/usr/lib/jvm/java-6-sun"' | tee -a /etc/environment

Install Tomcat
Install it by running:

apt-get install tomcat5.5 tomcat5.5-admin
  1. </pre>
  2. Change /etc/tomcat5.5/tomcat-users.xml
  3.  
  4. Also edit /etc/default/tomcat5.5 and change the value from "yes" to "no" and restart Tomcat.
  5. <pre lang="enc__bash">TOMCAT5_SECURITY=no
  6. /etc/init.d/tomcat5.5 restart

Install mysql-server and create database
If you don’t already have a running mysql server then install it by running:

apt-get install mysql-server
  1. </pre>
  2. Then setup a database, database user and give it some rights.
  3. <pre lang="enc__bash">mysql -uroot -p
  4. CREATE DATABASE actitime;
  5. CREATE USER 'actitime-usr'@'localhost' IDENTIFIED BY 'Another-Obscure-Password';
  6. GRANT ALL ON actitime.* TO 'actitime-usr'@'localhost';
  7. flush privileges;
  8. \q

Install actiTIME
Download ActiTime and upload it to your server. (http://actitime.com/download.html

cd /var/lib/tomcat5.5/webapps
  1. tar xvzf /tmp/actitime15_unix.tar.gz
  2. cd actitime
  3. bash ./setup_mysql.sh -mysqlhome /usr -username actitime-usr -password Another-Obscure-Password -host localhost -dbname actitime

Settings file (db name and user including pwd) is found in /var/lib/tomcat5.5/webapps/actitime/WEB-INF/classes/com/actimind/actitime/AT.Properties

You should now be able to connect to your actiTIME. Point a browser to http://your.host.name:8180/actitime

Now I have a bit difficulty with this setting. This means that I have to shoot a another hole in my vlan ACL. Let’s make this happen on port 80 shall we!

Install libapache2-mod-jk
Connect Apache2 to Tomcat5.5.

apt-get install libapache2-mod-jk
  1. </pre>
  2. Create /etc/apache2/workers.properties file with the following content:
  3. <pre lang="enc__bash">#
  4. # This file provides minimal jk configuration properties needed to
  5. # connect to Tomcat.
  6. #
  7. # We define a worked named 'default'
  8. #
  9.  
  10. workers.tomcat_home=/var/lib/tomcat6
  11. workers.java_home=/usr/lib/jvm/java-6-sun
  12. ps=/
  13. worker.list=default
  14.  
  15. worker.default.port=8009
  16. worker.default.host=localhost
  17. worker.default.type=ajp13
  18. worker.default.lbfactor=1

Then add the following to /etc/apache2/apache2.conf

# Where to find workers.properties
  1. JkWorkersFile /etc/apache2/workers.properties
  2.  
  3. # Where to put jk logs
  4. JkLogFile /var/log/apache2/mod_jk.log
  5.  
  6. # Set the jk log level [debug/error/info]
  7. JkLogLevel info
  8.  
  9. # Select the log format
  10. JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

Finally create a new VirtualHost in /etc/apache2/sites-available and place the following content beteen the VirtualHost tags:

# JkOptions indicate to send SSL KEY SIZE,
  1. JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
  2.  
  3. # JkRequestLogFormat set the request format
  4. JkRequestLogFormat "%w %V %T"
  5.  
  6. # Tomcat serves everything by default
  7. JkMount / default
  8. JkMount /* default
  9.  
  10. # Apache serves the following URLs
  11. JkUnMount /static default
  12. JkUnMount /static/* default

Now enable the VirtualHost and reload Apache2:

a2ensite  && /etc/init.d/apache reload

So now ActiTime should also be available on http://your.host.name/actitime

Point a browser to the URL and log on with the default credentials. (username: admin / password: manager)
AND CHANGE IT!