How websmack/raspberry-disag-viz works
DISAG VIZ DietPi-Kiosk builds board-specific DietPi images that boot directly into the DISAG OpticScore visualization. The main workflow selects a supported target, prepares and customizes its base image, then produces a compressed image for the board. At runtime, DietPi first-run setup leads to a kiosk session that configures the display, imports editable settings, and launches the visualization; a separate startup path turns boot-partition network settings into NetworkManager profiles. The README documents these capabilities, but sampled source is limited, so links to unsampled build and launch internals are omitted where ownership is uncertain.
Main entry points: build-image-platform.sh Platform build · disag-kiosk.service Kiosk startup · build-image.sh Image builder · network.py Network profiles
Components 20
Image creation
- Image builder
build-image.sh - Platform build
build-image-platform.sh - Board profiles
config/platforms.conf - Compressed image
User configuration
- DISAG settings
config/disag.txt - Network settings
config/network.txt - Boot logo assets
images
Boot and kiosk
- Boot configuration
kiosk/boot-config.py - DietPi first boot
kiosk/configure-dietpi.py - Kiosk startup
kiosk/disag-kiosk.service - Network startup
kiosk/disag-network.service
Appliance runtime
- HDMI selection
kiosk/display.py - Settings import
kiosk/settings.py - Network profiles
kiosk/network.py - Xorg and Openbox
- DISAG visualization
- NetworkManager
Other components
- Image operator
- DietPi base image
- Target board
Connections 20
- Image operator → Image builder: requests build
- Image builder → Board profiles: reads profiles
- Image builder → Platform build: dispatches build
- Platform build → DietPi base image: customizes base
- Platform build → DISAG settings: includes settings
- Platform build → Network settings: includes settings
- Platform build → Boot logo assets: uses assets
- Platform build → Compressed image: produces image
- Target board → Boot configuration: boots image
- Boot configuration → DietPi first boot: configures first boot
- DietPi first boot → Kiosk startup: enables startup
- Kiosk startup → Xorg and Openbox: starts kiosk session
- Kiosk startup → HDMI selection: configures display
- Kiosk startup → Settings import: imports settings
- Settings import → DISAG settings: reads boot settings
- Kiosk startup → DISAG visualization: launches
- DISAG visualization → Xorg and Openbox: displays on
- Network startup → Network profiles: runs configurator
- Network profiles → Network settings: reads boot settings
- Network profiles → NetworkManager: writes profiles