2.2. Benötigte Software und Pakete

2.2.1. Betriebssystem

kivitendo ist für Linux konzipiert, und sollte auf jedem unixoiden Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl der Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme auf den derzeit aktuellen verbreiteten Distributionen läuft.

Anfang 2014 sind das folgende Systeme, von denen bekannt ist, dass kivitendo auf ihnen läuft:

  • Debian

    • 6.0 "Squeeze" (hier muss allerdings das Modul FCGI in der Version >= 0.72 compiled werden, und Rose::DB::Object ist zu alt)

    • 7.0 "Wheezy"

  • Ubuntu 12.04 LTS "Precise Pangolin", 12.10 "Quantal Quetzal", 13.04 "Precise Pangolin" und 14.04 "Trusty Tahr" LTS Alpha

  • openSUSE 12.2, 12.3 und 13.1

  • SuSE Linux Enterprice Server 11

  • Fedora 16 bis 19

2.2.2. Benötigte Perl-Pakete installieren

Zum Betrieb von kivitendo werden zwingend ein Webserver (meist Apache) und ein Datenbankserver (PostgreSQL, mindestens v8.4) benötigt.

Zusätzlich benötigt kivitendo einige Perl-Pakete, die nicht Bestandteil einer Standard-Perl-Installation sind. Um zu überprüfen, ob die erforderlichen Pakete installiert und aktuell genug sind, wird ein Script mitgeliefert, das wie folgt aufgerufen wird:

./scripts/installation_check.pl

Die vollständige Liste der benötigten Perl-Module lautet:

Seit Version v3.2.0 sind die folgenden Pakete hinzugekommen: GD, HTML::Restrict, Image::Info

Seit v3.0.0 sind die folgenden Pakete hinzugekommen: File::Copy::Recursive.

Seit v2.7.0 sind die folgenden Pakete hinzugekommen: Email::MIME, Net::SMTP::SSL, Net::SSLGlue.

Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen, URI und XML::Writer sind notwendig. Ohne startet kivitendo nicht.

Gegenüber Version 2.6.1 sind parent, DateTime, Rose::Object, Rose::DB und Rose::DB::Object neu hinzugekommen. IO::Wrap wurde entfernt.

Gegenüber Version 2.6.3 ist JSON neu hinzugekommen.

Email::Address und List::MoreUtils sind schon länger feste Abhängigkeiten, wurden aber bisher mit kivitendo mitgeliefert. Beide sind auch in 2.6.1 weiterhin mit ausgeliefert, wurden in einer zukünftigen Version aber aus dem Paket entfernt werden. Es wird empfohlen diese Module zusammen mit den anderen als Bibliotheken zu installieren.

2.2.2.1. Debian und Ubuntu

Für Debian und Ubuntu stehen die meisten der benötigten Perl-Pakete als Debian-Pakete zur Verfügung. Sie können mit folgendem Befehl installiert werden:

apt-get install apache2 libarchive-zip-perl libclone-perl \
  libconfig-std-perl libdatetime-perl libdbd-pg-perl libdbi-perl \
  libemail-address-perl  libemail-mime-perl libfcgi-perl libjson-perl \
  liblist-moreutils-perl libnet-smtp-ssl-perl libnet-sslglue-perl \
  libparams-validate-perl libpdf-api2-perl librose-db-object-perl \
  librose-db-perl librose-object-perl libsort-naturally-perl \
  libstring-shellquote-perl libtemplate-perl libtext-csv-xs-perl \
  libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl \
  libimage-info-perl libgd-gd2-perl \
  libfile-copy-recursive-perl postgresql

Für das Paket HTML::Restrict gibt es kein Debian-Paket, dies muß per CPAN installiert werden. Unter Ubuntu funktioniert das mit:

apt-get install build-essential
cpan HTML::Restrict

2.2.2.2. Fedora Core

Für Fedora Core stehen die meisten der benötigten Perl-Pakete als RPM-Pakete zur Verfügung. Sie können mit folgendem Befehl installiert werden:

yum install httpd perl-Archive-Zip perl-Clone perl-DBD-Pg \
  perl-DBI perl-DateTime perl-Email-Address perl-Email-MIME perl-FCGI \
  perl-File-Copy-Recursive perl-JSON perl-List-MoreUtils perl-Net-SMTP-SSL perl-Net-SSLGlue \
  perl-PDF-API2 perl-Params-Validate perl-Rose-DB perl-Rose-DB-Object \
  perl-Rose-Object perl-Sort-Naturally perl-String-ShellQuote \
  perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI \
  perl-XML-Writer perl-YAML perl-parent postgresql-server

Zusätzlich müssen einige Pakete aus dem CPAN installiert werden. Dazu können Sie die folgenden Befehle nutzen:

yum install perl-CPAN
cpan Config::Std

2.2.2.3. openSUSE

Für openSUSE stehen die meisten der benötigten Perl-Pakete als RPM-Pakete zur Verfügung. Sie können mit folgendem Befehl installiert werden:

zypper install apache2 perl-Archive-Zip perl-Clone \
  perl-Config-Std perl-DBD-Pg perl-DBI perl-DateTime perl-Email-Address \
  perl-Email-MIME perl-FastCGI perl-File-Copy-Recursive perl-JSON perl-List-MoreUtils \
  perl-Net-SMTP-SSL perl-Net-SSLGlue perl-PDF-API2 perl-Params-Validate \
  perl-Sort-Naturally perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv \
  perl-URI perl-XML-Writer perl-YAML postgresql-server

Zusätzlich müssen einige Pakete aus dem CPAN installiert werden. Dazu können Sie die folgenden Befehle nutzen:

yum install perl-CPAN
cpan Rose::Db::Object