Installation von Time4U auf Debian
- von action 42
- 19. Oktober 2009
Installation von Time4U auf Debian
Auf der 2. ADempiere-Konferenz unterhielt ich mit einem Entwickler über Möglichkeiten der Übernahme von Abrechnungsdaten ("Stundenzettel") nach ADempiere.
Ich nutze gnotime um bequem bei der Arbeit am Computer mitzukoppeln, wieviel Zeit ich auf welche Tätigkeiten verwende. Was mich an dem Werkzeug stört ist, dass es für Übersichten nur HTML generieren kann. So muss ich die Ausgaben erst lange umfrisieren und dann in OOCaclc auswerten oder verdichten.
Er erwähnte Time4U, es sei von einer deutschen Firma entwickelt und er würde an einer Schnittstelle zur Übernahme von Daten nach ADempiere arbeiten.
Nun habe ich es endlich mal geschafft, mir dieses Werkzeug anzusehen. Die gegenwärtige Version ist (entgegen der Angabe auf der Homepage) 0.9.9.RC2-437 (siehe download-Seite auf sourceforge). Der Client bietet tatsächlich gegenüber gnotime bessere Eigenschaften: man kann mit "Continue Workitem" den gleichen Eintrag fortsetzen (das hab ich sehr vermisst) und man kann ToDos anlegen und zuordnen und damit z.B. auf die Tickets in OTRS referenzieren .
Da man im Client gar nicht an die Daten kommt ("irgendwo" läuft wohl Apache-Derby als Datenbank) wollte ich auch die zugehörige Serverkomponente testen auf die der Client seine Daten synchronisiert.
Also flugs mit
xen-create-image --hostname=time4u
einen neuen Server mit Debian Lenny angelegt (naja, in Wirklichkeit hab ich es erst auf einem existierenden, aber viel zu schwachbrüstigen Server probiert) und gestartet. Daran angemeldet und mit
alien
aus den rpm-Paketen time4u-server, time4u-server-apache und time4u-server-postgres debs gemacht (nachdem ich unter anderem http://forum.ubuntuusers.de/topic/kitchensync-in-kde4/ zum Thema "Unpacking of 'time4u-server-0.9.9.RC2-437.noarch.rpm' failed at /usr/share/perl5/Alien/Package/Rpm.pm line 155." gefunden und besagtes Perl-Skript um
| lzma -d
erweitert hatte).
Notwendige Pakete werden mit
apt-get install apache2 libapache2-mod-jk sun-java6-jdk postgresql-8.3 libpg-java
installiert.
Dann mit
dpkg -i time4u-server_0.9.9.RC2-438_all.deb time4u-server-apache_0.9.9.RC2-438_all.deb time4u-server-postgres_0.9.9.RC2-438_all.deb
die erzeugten Time4U-Pakete installieren.
Ein paar manuelle Anpassungen sind nötig:
- Editieren von /etc/init.d/time4u
-
- Alle Zeilen mit "rc" auskommentieren
- Anpassen:
JAVAPTH=${JAVAPTH:-"/usr/lib/jvm/java-6-sun/bin"}
- Anpassen:
JBOSSUS=${JBOSSUS:-"www-data"}
- In /srv
- Ausführen von
chown -R www-data. time4u-with-jboss
- In /srv/time4u-with-jboss/bin/run.conf
- Anhängen der Zeile
JBOSS_CLASSPATH="/usr/share/java/postgresql.jar"
Dann gemäß Anleitung unter ServerInstallSUSE das Aufsetzen der Datenbank durch
su postgres -c "psql -f /srv/time4u-with-jboss/time4u-postgres-init.sql"
. Und /etc/postgresql/8.3/main/pg_hba.conf erhält die zusätzliche Zeile mit time4u.
Die Dateien für den Apache2 brauchen auch noch ein wenig Anpassung:
- Verschieben der Datei time4u-workers.properties
-
mv /etc/apache2/conf.d/time4u-workers.properties /etc/apache2
- Anpassen der Datei /etc/apache2/conf.d/time4u.conf
-
- Auskommentieren der Zeile
LoadModule jk_module /usr/lib64/apache2/mod_jk.so
- Edititeren des Verweises auf die Properties-Datei:
JkWorkersFile /etc/apache2/time4u-workers.properties
- Auskommentieren der Zeilen mit
JkMount
- Auskommentieren der Zeile
- Konfigurieren eines (virtuellen) Servers
- In dessen Konfigurationsdatei die Zeilen mit
JkMount
einfügen
Dann Postgres, Time4U und Apache2 starten. Im Browser muss man die Anmeldeseite http://servername/time4u laden und sich mit admin/admin anmelden, um einen Nutzer-Account anzulegen. Dieser kann dann mit dem Client für die Synchronisierung verwendet werden. Über das Web-Interface kann dieser Nutzer dann auch diverse (mitgelieferte) Auswertungen nutzen.