Wird benutzt um das Guthaben/die Schulden von den Menschen zu erfassen die sich in die Liste am Getränkekühlschrank eingetragen haben, Erinnerungsmails zu verschicken und neue Strichlisten zu drucken.
Das System basiert auf dem Django-Framework und benutzt Reportlab für das generieren der Strichliste.
- Virtualenv anlegen:
pyvenve venv
- Virtualenv aktivieren:
source venv/bin/activate
- Abhängigkeiten installieren:
pip3 install -r venv_requirements.txt
- private_settings anlegen:
cp drinkit_site/private_settings.py.sample drinkit_site/private_settings.py
- Im private_settings.py den Debug-Modus ausschalten
- Im private_settings.py einen neuen SECRET_KEY genenerieren
- Im private_settings.py den Datenbankzugang konfigurieren
- Wenn die Software jenseits des AStA am KIT betrieben werden soll, dann in der settings.py die Optionen ALLOWED_HOSTS und EMAIL_HOST anpassen.
- Datenbankstruktur anlegen:
./manage.py migrate
- Static Files generieren:
./manage.py collectstatic
- Webserver so konfigurieren, dass er die wsgi.py per WSGI aufruft, und die Dateien im static Ordner statisch unter dem Pfad /static/ ausliefert. Pro-Tipp: Webserver so einrichten, dass er seine Konfiguration beim aktualisieren der
drinkit_site/settings.py
neu lädt (damit man für das Aktualisieren keine Root-Rechte braucht).
Wenn eine neue Django-Version erscheint sollte man folgendes tun:
- Virtualenv aktivieren:
source venv/bin/activate
- Updates auflisten:
pip list -o
- Updates installieren:
pip3 install --upgrade -r venv_requirements.txt
- Static Files generieren:
./manage.py collectstatic
- Dem Webserver mitteilen dass sich was geändert hat:
touch drinkit_site/settings.py
- Virtualenv deaktivieren:
deactivate
- Wenn man Lust hat noch die
venv_requirements.txt
aktualisieren, committen und pushen
Das Ding wurde 2015 von Michael Tänzer (aka Mimi) geschrieben. Der ist hoffentlich noch unter [email protected] erreichbar.
Wie es sich für dieses Projekt gehört, ist es so genannte Beer-Ware. Soll heißen, dass ihr damit machen könnt was auch immer ihr wollt, und wenn wir uns treffen und ihr das Projekt nützlich findet dann könnt ihr mir ja ein Bier ausgeben wenn ihr wollt. Da man in Deutschland Software nicht so einfach als Public Domain deklarieren kann, steht Drinkit formal unter der CC0-Lizenz, die dem noch am nächsten kommt. Die benutzten Libraries/Module unterliegen allerdings zum großen Teil anderen Lizenzen. Dazu gehört auch die Library StickyTableHeaders (MIT-Lizenz) die aus Gründen des einfacheren Deployments direkt mit Drinkit ausgeliefert wird.
Verbesserungsvorschläge, insbesondere in Form von Pull-Requests, werden gern entgegen genommen.