Files
YMS/INSTALL
T
2026-08-17 18:59:02 +02:00

129 lines
3.2 KiB
Plaintext

Yacht Management Software (YMS) Installation
1. Install requirements
1.1 Generic
- MariaDB
- Python 3
- python3-bcrypt
- python3-mysqldb
- optional
- gettext
- mupdf-tools for extended pdf file management
1.2 Native GUI
- Python GTK3
- python3-gi
- gir1.2-gtk-3.0
- gir-rsvg-2.0
1.3 Web GUI
- Webserver
- PHP (>= 8.0)
- php-mysql
- php-xml
2. Create database
Create a database for YMS on your server, as well as a MariaDB user who has
the privileges for accessing and modifying it.
CREATE DATABASE yms;
Create system user for native gui.
CREATE USER 'ymssys'@'localhost' IDENTIFIED BY '********';
GRANT SELECT, INSERT, UPDATE, DELETE ON yms.* TO 'ymssys'@'localhost';
Create database-user for web application with minimum necessary rights.
CREATE USER 'ymsweb'@'localhost' IDENTIFIED BY '********';
GRANT SELECT, INSERT, UPDATE, DELETE ON yms.* TO 'ymsweb'@'localhost';
3. Run database import
Import the mariadb.sql file into your database, which will create the tables.
mariadb yms < mariadb.sql
According to your desired language import minimal required dataset into your
new database. For german use
mariadb yms < minimal.sql
or alternatively for english language
mariadb yms < minimal_en.sql
Optional import some sample data
mariadb yms < mariadb_sample.sql
4. Initialize document storage
Customize path and access rights to your needs
mkdir /var/local/yms
mkdir /var/local/yms/thumb
chown -R www-data /var/local/yms
chmod -R 750 /var/local/yms
To grant access for the local gui the directory has to be writeable by a special
group (here as example 'yms'). The user which runs the local gui (here
'guiuser') has also to be a member of that group as well as the webserver user
'www-data'.
groupadd yms
usermod -aG yms www-data
usermod -aG yms guiuser
chgrp yms /var/local/yms
chgrp yms /var/local/yms/thumb
chmod -R 770 /var/local/yms
5. Install webgui
5.1 Upload webgui files
Upload all files and directories (except the install directory) to your
webserver.
Disallow access to include files (.inc). There is an example _htaccess
file.
5.2. Create and edit webgui config file
Rename sample configfile config.inc-sample:
mv config.inc-sample config.inc
Open config.inc in a text editor and fill in your database details.
If you want to use local unix socket connection set host = socket.
5.3. Check file access rights for security
Configfile should be readable by webserver but not writeable.
chmod 640 config.inc
chgrp www-data config.inc
6. Setup local GUI
Create a local database user with same name as your computer user and allow
database access with current unix credentials. E.g if your current unix user
is "ymsgui":
mysql> CREATE USER 'ymsgui'@'localhost' IDENTIFIED VIA unix_socket;
mysql> GRANT SELECT, INSERT, UPDATE, DELETE ON yms.* TO 'ymsgui'@'localhost';
Execute "install.sh" to install the software to your local operating system.
Start "yms", default configuration file is automatically created
7. Start using YMS
Use webgui:
Start your browser and login to YMS with the initial username/password:
captain/captain
Use local client:
Start ymsgui.py
Change the password using the local GUI before normal use.