====== Yacht Management Software (YMS) ======
===== Installation =====
Die aktuell gültige manuelle Installationsanleitung befindet sich in der Datei ''INSTALL''.
Diese bezieht sich allerdings nur auf die Anwendung an sich. Eine funktionsfähige
Systemumgebung mit Datenbank- und Webserver wird vorausgesetzt.
Das System kann in einer dedizierten Betriebsumgebung installiert werde, oder aber auch als Zusatzkomponente in ein bestehendes Betriebssystem.
* Standard-Linux
* Raspberry RaspiOS
* aus der Debian-Familie: Debian, Devuan, Ubuntu, Mint, etc.
* Spezielles Marine-OS
* [[yms_openplotter|Openplotter]]
Die Software an sich wird über Git bereitgestellt. Sie sollte im Kontext eines normalen
Benutzers heruntergeladen werden:
git clone https://git.hoogi.de/thooge/YMS
Nach dem Herunterladen sind die folgenden Schritte durchzuführen
- Systemvoraussetzungen schaffen
- Webserver mit PHP
- Datenbanksever
- Datenbank initalisieren
- Web-GUI installieren
- Native-GUI installieren
===== Standard-Voraussetzungen =====
Hier die Schritte die aufbauend auf einem frisch installiertem Betriebssystem erforderlich
sind:
* MariaDB Datenbank: ''apt-get install mariadb-server''
* Webserver, entweder Apache, nginx oder Lighttpd
* Apache mit PHP-Modul
apt-get install apache2 libapache2-mod-php
* nginx mit php-fpm
TBD
* Lighttpd mit php-fpm:
apt-get install lighttpd php-fpm
lighty-enable-mod fastcgi-php-fpm
* Socket-Adresse einstellen in Pool ''www'': ''listen = /run/php/php-fpm.sock''
* Die Dateien für die GUI können einfach in ein Verzeichnis des Webservers kopiert werden. Falls das YMS die einzige Anwendung ist, kann das Basisverzeichnis z.B. ''/var/www/html'' verwendet werden. Teilt sich YMS den Server mit anderen Anwendungen, kann einfach ein Unterverzeichnis verwendet werden z.B. ''/var/www/html/yms''.
* PHP-Module
apt-get install php-mysql php-xml
* Internationalisierung
apt-get install gettext
* PDF Werkzeuge (MuPDF)
* '' apt-get install mupdf-tools''
* Lokales, natives Frontend
* Python
apt-get install python3-bcrypt python3-mysqldb
* GTK
apt-get install python3-gi gir1.2-gtk-3.0 gir1.2-rsvg-2.0
===== Konfiguration =====
Das System bzw. die Oberfläche ist grundsätzlich mehrsprachig ausgelegt.
Die Nutzdaten sind allerdings nur in einer Sprache zu erfassen.
Deshalb muß beim Aufsetzen des Systems eine Entscheidung bzgl. der Sprache
getroffen werden.
Datenbankstruktur anlegen, sprachunabhängig:
mariadb yms < mariadb.sql
Anlegen nur der absolut minimalen Daten. Dabei handelt es sich um den
initialen Benutzer //captain//, sowie die Vorbelegung von Auswahllisten
welche im Programmcode referenziert werden.
mariadb yms < minimal.sql
Einstellen des Kennworts für den ersten Benutzer
python3 genpass.py
==== Web-GUI ====
Als einziger Konfigurationsschritt muß die Konfigurationsdatei ''config.inc'' angelegt
werden. Am einfachsten durch Umbenennen von ''config.inc-sample''.
Mindestens die Datenbank-Zugangsdaten müssen angepaßt werden.
In YMS können Dokumente und Bilder an verschiedenen Stellen hinterlegt werden.
Die maximale Dokumentgröße muß in ''g_doc_maxsize'' angegeben, sowie
zusätzlich in der PHP-Konfiguration (''php.ini'') eingestellt werden.
==== Native-GUI ====
Die Anwendung für den Bordcomputer kann direkt mit einem Installationsscript eingerichtet werden,
nachdem die Web-GUI funktionsfähig ist:
./install.sh
Die Native-Gui greift auf den selben Datenbestand zu wie die Web-GUI.
===== Debian Paket =====
Die Erstellung eines Debian-Pakets ist vorbereitet.
Voraussetzung:
apt-get install gettext debhelper-compat
Paket erstellen:
make deb