X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=doc%2Fhtml%2Fch02s02.html;h=0e19d8c2711df686a09e99158f7b6ce8e77c54af;hb=a5ad18afde638216d646446bee387451995d049f;hp=a1f7c0b4af98e6b99a2ed7d4a1d7fe35b31f62a1;hpb=bd4debfbf0cddd53ba37a5f7881a4525e3c69891;p=kivitendo-erp.git diff --git a/doc/html/ch02s02.html b/doc/html/ch02s02.html index a1f7c0b4a..0e19d8c27 100644 --- a/doc/html/ch02s02.html +++ b/doc/html/ch02s02.html @@ -1,33 +1,38 @@ - 2.2. Benötigte Software und Pakete

2.2. Benötigte Software und Pakete

2.2.1. Betriebssystem

kivitendo ist für Linux konzipiert, und sollte auf jedem + 2.2. Benötigte Software und Pakete

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 2016 sind das folgende Systeme, von denen bekannt ist, - dass kivitendo auf ihnen läuft:

  • Debian

    • 7.0 "Wheezy"

    • 8.0 "Jessie"

  • Ubuntu 12.04 LTS "Precise Pangolin", 14.04 "Trusty Tahr" - LTS, 15.10 "Wily Werewolf" und 16.04 "Xenial Xerus" LTS - Alpha

  • openSUSE LEAP 42.1

  • Fedora 22

2.2.2. Benötigte Perl-Pakete installieren

Zum Betrieb von kivitendo werden zwingend ein Webserver (meist - Apache) und ein Datenbankserver (PostgreSQL) in einer aktuellen Version - (s.a. Liste der unterstützten Betriebssysteme) benötigt.

Zusätzlich benötigt kivitendo einige Perl-Pakete, die nicht + Distributionen läuft.

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

  • Debian

    • 8.0 "Jessie"

    • 9.0 "Stretch"

    • 10.0 "Buster"

  • 16.04 "Xenial Xerus" LTS und 18.04 "Bionic Beaver" LTS +

  • openSUSE 15.0

  • Fedora 29

2.2.2. Benötigte Perl-Pakete installieren

Zum Betrieb von kivitendo werden zwingend ein Webserver (meist + Apache) und ein Datenbankserver (PostgreSQL) in einer aktuellen + Version (s.a. Liste der unterstützten Betriebssysteme) + 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:

  • - parent (nur bei Perl vor 5.10.1)

  • - Archive::Zip -

  • Algorithm::CheckDigits +

  • + Archive::Zip

  • CGI

  • Clone

  • Config::Std +

  • + Daemon::Generic

  • DateTime +

  • + DateTime::Event::Cron

  • DateTime::Format::Strptime +

  • + DateTime::Set

  • DBI

  • @@ -36,10 +41,18 @@ Email::Address

  • Email::MIME +

  • + Exception::Class

  • FCGI (nicht Versionen 0.68 bis 0.71 inklusive; siehe Abschnitt 2.6.2.3, „Getestete Kombinationen aus Webservern und Plugin“)

  • File::Copy::Recursive +

  • + File::Flock +

  • + File::MimeInfo +

  • + File::Slurp

  • GD

  • @@ -54,7 +67,7 @@ List::MoreUtils

  • List::UtilsBy -

  • +

  • LWP::Authen::Digest

  • LWP::UserAgent

  • Net::SMTP::SSL (optional, bei E-Mail-Versand über SSL; siehe Abschnitt "E-Mail-Versand über einen SMTP-Server")

  • Net::SSLGlue (optional, bei @@ -64,6 +77,8 @@ PBKDF2::Tiny

  • PDF::API2 +

  • + Regexp::IPv6

  • Rose::Object

  • @@ -71,6 +86,8 @@

  • Rose::DB::Object Version 0.788 oder neuer

  • + Set::Infinite +

  • String::ShellQuote

  • Sort::Naturally @@ -80,15 +97,27 @@ Text::CSV_XS

  • Text::Iconv +

  • + Text::Unidecode

  • URI

  • XML::Writer

  • - YAML -

Seit Version v3.4.0 sind die folgenden Pakete hinzugekommen: - Algorithm::CheckDigits - PBKDF2::Tiny + YAML::XS oder YAML +

Seit Version größer v3.5.3 sind die folgenden Pakete hinzugekommen: Exception::Class +

Seit Version größer v3.5.1 sind die folgenden Pakete hinzugekommen: Set::Infinite, + List::UtilsBy, DateTime::Set, DateTime::Event::Cron + + Daemon::Generic, DateTime::Event::Cron, File::Flock, + File::Slurp +

Seit Version größer v3.5.0 sind die folgenden Pakete + hinzugekommen: Text::Unidecode, + LWP::Authen::Digest, + LWP::UserAgent +

Seit Version v3.4.0 sind die folgenden Pakete hinzugekommen: + Algorithm::CheckDigits, + PBKDF2::Tiny

Seit Version v3.2.0 sind die folgenden Pakete hinzugekommen: GD, HTML::Restrict, Image::Info @@ -109,8 +138,8 @@ 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 + installieren.

2.2.2.1. Debian und Ubuntu

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

apt 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 \
@@ -121,34 +150,77 @@
   libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl \
   libimage-info-perl libgd-gd2-perl libapache2-mod-fcgid \
   libfile-copy-recursive-perl postgresql libalgorithm-checkdigits-perl \
-  libcrypt-pbkdf2-perl git libcgi-pm-perl
-

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

Für Fedora stehen die meisten der benötigten Perl-Pakete als + libcrypt-pbkdf2-perl git libcgi-pm-perl libtext-unidecode-perl libwww-perl\ + postgresql-contrib aqbanking-tools poppler-utils libhtml-restrict-perl\ + libdatetime-set-perl libset-infinite-perl liblist-utilsby-perl\ + libdaemon-generic-perl libfile-flock-perl libfile-slurp-perl\ + libfile-mimeinfo-perl libpbkdf2-tiny-perl libregexp-ipv6-perl \ + libdatetime-event-cron-perl libexception-class-perl +

Sollten Pakete nicht zu Verfügung stehen, so können diese auch mittels CPAN installiert werden. Ferner muss für Ubuntu das Repository "Universe" aktiv sein (s.a. Anmerkungen).

[Anmerkung]Anmerkung

Die Perl Pakete für Ubuntu befinden sich im "Universe" Repository. Falls dies nicht aktiv ist, kann dies mit folgendem Aufruf aktiviert werden: +

add-apt-repository universe

+

[Anmerkung]Anmerkung

Für ältere Ubuntu/Debians müßen einige Pakete per CPAN installiert werden. + Das geht bspw. für das benötige Paket HTML::Restrict mit:

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

2.2.2.2. Fedora

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

dnf install httpd mod_fcgid 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 \
+          installiert werden:

dnf install httpd mod_fcgid postgresql-server postgresql-contrib\
+  perl-Algorithm-CheckDigits perl-Archive-Zip perl-CPAN perl-Class-XSAccessor \
+  perl-Clone perl-Config-Std perl-DBD-Pg perl-DBI perl-Daemon-Generic \
+  perl-DateTime perl-DateTime-Set perl-Email-Address perl-Email-MIME perl-FCGI \
+  perl-File-Copy-Recursive perl-File-Flock perl-File-MimeInfo perl-File-Slurp \
+  perl-GD perl-HTML-Restrict perl-JSON perl-List-MoreUtils perl-List-UtilsBy \
+  perl-Net-SMTP-SSL perl-Net-SSLGlue perl-PBKDF2-Tiny perl-PDF-API2 \
+  perl-Params-Validate perl-Regexp-IPv6 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 perl-CPAN \
-  perl-Algorithm-CheckDigits perl-GD perl-Class-XSAccessor perl-Text-Balanced

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

cpan Config::Std HTML::Restrict

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 apache2-mod_fcgid 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 perl-CPAN \
-  perl-Algorithm-CheckDigits perl-GD perl-Class-XSAccessor postgresql-server

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

cpan Rose::Db::Object

2.2.3. Andere Pakete installieren

Seit Version v3.4.0 wird für den Bankimport optional das Paket - 'aqbanking-tools' benötigt.

Ubuntu:

apt install aqbanking-tools

-

OpenSuSE:

zypper install aqbanking-tools

-

Seit Version v3.4.1 wird generell zum Feststellen der - Seitenanzahl von PDF_Dokumenten 'pdfinfo' benötigt was im Paket - 'poppler-utils' enthalten ist.

Ubuntu:

apt install poppler-utils

-

OpenSuSE:

zypper install poppler-tools

+ perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer \ + perl-YAML perl-libwww-perl

2.2.2.3. openSUSE

Für openSUSE stehen die meisten der benötigten Perl-Pakete als RPM-Pakete zur Verfügung.

Dies setzt voraus, das eben die erforderlichen Repositories dem System bekannt gemacht worden sind.

Um zusätzliche Repositories für die Installation zur Verfügung zu stellen, kann man diese mit YaST oder auch in einem Terminal auf der Konsole bekannt geben. Wir beschränken uns hier mit der Eingabe auf der Konsole. Da wahrscheinlich für die Administration eine SSH-Verbindung zum Server benutzt wird.

Dazu geben wir folgenden Befehl ein:

zypper addrepo -f \
+  http://download.opensuse.org/repositories/devel:languages:perl/openSUSE_Leap_15.0/ \
+  "devel:languages:perl"
+          
zypper addrepo -f \
+  https://download.opensuse.org/repositories/devel:languages:haskell:lts:13/\
+  openSUSE_Leap_15.0/ "devel:languages:haskell:lts:13"
+          
zypper addrepo -f \
+  https://download.opensuse.org/repositories/devel:languages:haskell:lts:13/\
+  openSUSE_Leap_15.0/ "devel:languages:haskell:lts:13"
+          

Danach geben wir noch die beiden folgenden Befehle ein:

zypper clean
zypper refresh

Sollte zypper eine Meldung ausgeben, ob der Repositorie Key abgelehnt, nicht vertraut oder für immer akzeptiert werden soll, ist die Beantwortung durch drücken der "i" Taste am besten geeignet. Wer noch mehr über zypper erfahren möchte, kann sich einmal die zypper Hilfe anschauen.

zypper --help
[Anmerkung]Anmerkung

Offiziell wird von openSUSE nur noch Versionen ab 15.0 unterstützt. Die SuSE Macher haben ab Version 15.0 einen größen Umbau in der Verwaltung der Pakete vorgenommen, das heißt, der Paketumfang ist der SLES 15 als kleinsten Nenner angepasst. Dies gilt besonders der openSUE Distribution. Es gibt ja einmal die openSUSE Distri und die Professionelle SLES Version. Dadurch sind viele Pakete aus dem Repositorie enfernt worden, aber auch viele auf aktuellen Stand gehalten.

Das überprüfen wir mit YaST. Sollte openSUSE bis zur Version 15.0 zum Einsatz kommen und der Administrator bei der Installation der Distribution die KDE Oberfläche aktiviert hat, loggen wir uns am Server direkt ein, starten das Verwaltungsprogram in einer Konsole wie folgt:

yast2 return.

Oder über die Menüführung wie folgt: Ein Klick auf das runde Icon, ganz links unten in der Menüleiste dann die Maus Verfahren auf System und YaST.

Sie können mit folgendem Befehl installiert werden:

zypper install Paketname

Es wird empfohlen zusätzliche Pakete nicht direkt mit CPAN zu installieren, da man diese auch über andere Repositories beziehen kann, die bei openSUSE zur Verfügung stehen. Dadurch hat man den Vorteil, dass die Pakete mit YaST verwaltet werden, also wieder deinstalliert oder durch neuere ersetzt werden können. Zudem kann man auch noch eventuelle Bugs an openSUSE senden und diese dem Maintainer melden.

zypper install perl-threads-shared ghc-pdfinfo apache2-mod_fcgid \
+  yast2-http-server postgresql-server postgresql-contrib perl-Algorithm-CheckDigits \
+  perl-Archive-Zip perl-CGI perl-CGI-Ajax perl-Clone \
+  perl-Config-Std perl-Class-XSAccessor perl-Daemon-Generic perl-DateTime \
+  perl-DateTime-Event-Cron perl-DateTime-Format-Strptime perl-DateTime-Set \
+  perl-DBI perl-DBD-Pg perl-Devel-REPL perl-FastCGI perl-Email-Address \
+  perl-Email-MIME perl-Email-MIME-ContentType perl-Email-MIME-Encodings \
+  perl-FCGI perl-File-Copy-Recursive perl-File-Flock perl-File-MimeInfo \
+  perl-File-Slurp perl-GD perl-HTML-Restrict perl-Image-Info \
+  perl-JSON perl-List-MoreUtils perl-List-UtilsBy perl-Log-Log4perl perl-Net-LDAP-Server \
+  perl-Net-SSLGlue perl-Net-SMTP-SSL perl-PBKDF2-Tiny perl-PDF-API2 \
+  perl-Params-Validate perl-Regexp-IPv6 perl-Rose-DB perl-Rose-Object \
+  perl-Rose-DB-Object perl-MooseX-Role-Cmd perl-Set-Crontab perl-Set-Infinite \
+  perl-Sort-Naturally perl-String-ShellQuote perl-Sys-CPU perl-Template-Toolkit \
+  perl-Text-CSV_XS perl-Test-Deep perl-Test-Output perl-Text-Iconv \
+  perl-Text-Unidecode perl-URI perl-URI-Find perl-XML-Writer \
+  perl-YAML perl-libwww-perl
+          

Für die Entwickler installiert man noch die folgenden Pakete:

zypper install ghc-mtl-devel ghc-old-locale-devel \
+  ghc-process-extras-devel ghc-rpm-macros ghc-text-devel ghc-time-devel \
+  ghc-Cabal-devel ghc-time-locale-compat-devel perl-Log-Log4perl ghc-pdfinfo \
+  ghc-pdfinfo-devel perl-Devel-REPL perl-URI-Find perl-Class-Utils \
+  perl-Error-Pure perl-File-Object perl-Readonly perl-Test-Warnings \
+  perl-Test-NoWarnings perl-Test-Deep perl-Test-Output perl-Test-Strict \
+  perl-Test-LongString perl-File-Find-Rule
+          

Zusätzlich müssen einige Pakete für den Umgang mit Latex installiert werden. Die Latex Module barcodes sind nützliche Helfer um auch Barcodes im Dokument zu plazieren, der Vollständigkeit halber hier für die Installation mit angegeben. + Dazu können Sie die folgenden Befehle nutzen:

zypper install texlive-wallpaper texlive-colortbl \
+  texlive-scrlttr2copy texlive-eurosym \
+  texlive-geometry texlive-german texlive-graphbox texlive-hyperref \
+  texlive-xifthen texlive-luainputenc texlive-lastpage texlive-ltabptch \
+  texlive-nomentbl texlive-threeparttablex texlive-substr texlive-tabulary \
+  texlive-ulem texlive-wallpaper texlive-xcolor texlive-xstring \
+  texlive-xypic texlive-mwe texlive-mweights texlive-barcodes \
+  texlive-GS1 texlive-ean texlive-makebarcode texlive-pst-barcode \
+  texlive-upca
+          

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

cpan DateTime::event::Cron DateTime::Set FCGI \
+  HTML::Restrict PBKDF2::Tiny Rose::Db::Object Set::Infinite

2.2.3. Andere Pakete installieren

  • + aqbanking-tools Für das Parsen des MT940 Bankformats

  • + poppler-utils 'pdfinfo' zum Erkennen der Seitenanzahl bei der PDF-Generierung

  • + Postgres Trigram-Index Für datenbankoptimierte Suchanfragen. Bspw. im Paket postgresql-contrib enthalten

Debian und Ubuntu:

apt install aqbanking-tools postgresql-contrib poppler-utils

+

Fedora:

dnf install aqbanking poppler-utils postgresql-contrib

+

openSUSE:

zypper install aqbanking-tools poppler-tools

\ No newline at end of file