infrastruktur:lounge:kiosk
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
infrastruktur:lounge:kiosk [2019-05-24 02:09] – Benutzung dokumentiert xq | infrastruktur:lounge:kiosk [2019-05-24 02:24] – domainname, user xq | ||
---|---|---|---|
Zeile 2: | Zeile 2: | ||
{{tag> hardware software kiosk}} | {{tag> hardware software kiosk}} | ||
Das Shackspace Informationsterminal (kurz: kiosk) bietet Zugriff auf häufig benötigte Funktionen und Informationen des shack. Diese sind über eine einfache Menüstruktur schnell zu erreichen und durch die Position im Zentrum der Lounge auch physisch in Reichweite. | Das Shackspace Informationsterminal (kurz: kiosk) bietet Zugriff auf häufig benötigte Funktionen und Informationen des shack. Diese sind über eine einfache Menüstruktur schnell zu erreichen und durch die Position im Zentrum der Lounge auch physisch in Reichweite. | ||
+ | |||
+ | DNS entry: lounge.kiosk.shack \\ | ||
+ | username: | ||
---- | ---- | ||
Zeile 46: | Zeile 49: | ||
---- | ---- | ||
- | ===== Entwicklung ====== | + | ===== Entwicklung ===== |
+ | |||
+ | ==== System ==== | ||
+ | Der kiosk_v5 läuft auf einem NixOS. Dieses meldet automatisch den User //shack// an, welcher dann eine **i3**-Session startet. | ||
+ | |||
+ | Der **i3** startet dann die Kiosk-Anwendung. | ||
+ | |||
+ | Besonderheit: | ||
+ | |||
+ | Configs/ | ||
+ | |||
+ | ==== Anwendung ==== | ||
Entwickelt mit C++17 auf Basis von SDL2 als Renderer und libcurl als Web-Backend. Benutzt nix sowie qmake als Buildsystem. | Entwickelt mit C++17 auf Basis von SDL2 als Renderer und libcurl als Web-Backend. Benutzt nix sowie qmake als Buildsystem. | ||
+ | |||
+ | === Allgemeines === | ||
Source-Repository: | Source-Repository: | ||
- | Aux/ | + | Dependencies: |
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * sdl2 (pkg-config) | ||
+ | * sdl2_image (pkg-config) | ||
+ | * sdl2_ttf (pkg-config) | ||
+ | * libcurl (pkg-config) | ||
+ | |||
+ | === Software-Architektur === | ||
+ | |||
+ | Die Anwendung hat eine schwache Modularisierung: | ||
+ | * UI-Module (mainmenu, screensaver, | ||
+ | * Hilfmodule (fontrenderer, | ||
+ | Die Module sind untereinander nur mit der notwendigen API verbunden und haben nach außen hin eine kleine Schnittstelle. Innerhalb eines Moduls ist nicht mehr als die notwendige Abstraktion getätigt (KISS-Prinzip). | ||
+ | Die Initialisierung eines UI-Moduls ist etwas unorthodox (Singleton-Pattern mit "init on first access" | ||
===== Historie ====== | ===== Historie ====== | ||
Siehe [[project: | Siehe [[project: |
infrastruktur/lounge/kiosk.txt · Zuletzt geändert: 2021-03-24 16:59 von 192.168.146.218