Apps
siehe Wiki
Installation
Hinweis: Es werden nur Linux-basierte Systeme unterstützt (in dieser Anleitung wird sich auf Debian-basierte Systeme wie Ubuntu oder Linux Mint bezogen). Außerdem werden Root-Rechte benötigt.
Grundsystem
sudo apt install python3 python3-dev python3-pip git mariadb-server python3-venv libldap2-dev libsasl2-dev libmysqlclient-dev pandoc texlive texlive-fonts-extra texlive-lang-german texlive-latex-extra
MySQL-Datenbank
- Datenbanken
schoolapps
undUntis
(utf8_general_ci
) anlegen - Benutzer
www-data
anlegen - Benutzer
www-data
alle Rechte aufschoolapps
geben - Benutzer
untis-read
anlegen - Benutzer
untis-read
Leserechte auf UNTIS-DB geben
mysql -u root -p
CREATE DATABASE schoolapps;
CREATE DATABASE Untis;
CREATE USER 'www-data'@'localhost' IDENTIFIED BY 'grummelPASS1531';
GRANT ALL PRIVILEGES ON schoolapps.* TO 'www-data'@'localhost';
CREATE USER 'untis-read'@'localhost' IDENTIFIED BY 'grummelPASS1531';
GRANT SELECT ON Untis.* TO 'untis-read'@'localhost';
Hinweis: In Testumgebungen kann untis-read auch entfallen und
stattdessen www-data auch für den Zugriff auf die Datenbank Untis
verwendet werden:
GRANT SELECT ON Untis.* TO 'www-data'@'localhost';
UNTIS-Beispieldaten importieren
Zum Testen kann die Datei untiskath.sql
vom Forum in die Datenbank Untis
importiert werden.
SchoolApps clonen
git clone git@github.com:Katharineum/school-apps.git
Django installieren
- Zum Installationsordner wechseln, dann:
python3 -m venv env
source env/bin/activate
pip install -r requirements.txt
-
example_secure_settings.py
zusecure_settings.py
kopieren und anpassen (hier müssen auch die passenden DB-Zugangsdaten eingetragen werden)
Migrations durchführen/auflösen
Leider kommt es bei einer Erstinstallation von SchoolApps immer noch zu Problemen mit den Migrations. Sollte es Schwierigkeiten geben, @hansegucker kontaktieren.
Für die Migration folgende Befehle im aktivierten VirtualEnv ausführen:
python3 schoolapps/manage.py makemigrations
python3 schoolapps/manage.py migrate
Testlauf
- Administratornutzer erstellen
python3 schoolapps/manage.py createsuperuser
- Django-Devserver starten
python3 schoolapps/manage.py runserver
-
Einstellungen anpassen (http://127.0.0.1:8080/settings, siehe auch "Kanboard-Verbindung einrichten")
-
SchoolApps benutzen 😃
Mail-Verbindung einrichten (REBUS+Feedback)
- Zu den Einstellungen navigieren (/settings)
- Die richtigen E-Mailadressen eintragen
LDAP (info.katharineum.de)
WICHTIG: LDAP funktioniert nur mit Nutzern, die folgende Gruppe haben: info-admins
Adresse lokal von info.katharineum.de
localhost:389
BIND-Nutzer
DN: uid=readldap,ou=people,dc=skole,dc=skolelinux,dc=no
PW: grummelPASS1531
Basis-DN
dc=skole,dc=skolelinux,dc=no
SSH-Tunnel herstellen
sudo ssh -L 389:localhost:389 <user>@info.katharineum.de -N
(<user>
durch Nutzer mit Gruppe info-admins
ersetzen)
Verbindung testen
- Tunnel erstellen (siehe Befehl)
- Apache Active Directory (AD) zum Testen öffnen (Download unter http://directory.apache.org/studio/)
- Verbindung in AD mit oben genannten Daten herstellen