Debian deb packaging files for all four targets: piscsi, piscsi-web,
piscsi-oled, piscsi-ctrlboard
build instructions for Trixie specifically in README.Debian
consolidate all systemd unit files and standardize on /usr/bin
for all binaries
Replace the previous OLED monitor implementation with a native Go application. Add SSD1306 display support over Linux I2C, status polling through the shared PiSCSI client, configurable rendering and rotation, diagnostic splash screens, graceful shutdown, and IP or blank screensaver modes. Include embedded fonts and bitmap assets together with focused renderer, status, and screensaver tests.
Restructure the Go code under a shared module rooted at go/, moving the PiSCSI client and protobuf package out of the web application's internal tree so they can be reused by the OLED monitor. Update imports, generation scripts, web build and installation scripts, and configuration paths to match the new layout.
Extend the Makefile, systemd integration, and GitHub Actions workflow to build, test, package, and install both Go applications for supported Raspberry Pi targets. Add dependency tracking for the shared Go module and provide a dedicated piscsi-oled service and installation target.
Introduce a server-rendered Go control panel for managing PiSCSI devices, disk images, saved configurations, archives, uploads, system settings, embedded themes and translations, PWA assets, a mock daemon, installation and systemd support, generated protobuf bindings, tests, and CI builds for supported Raspberry Pi targets.
This is built for feature parity with the Python Web UI, with a few notable differences: piscsi-web runs as a non-privileged user, there is no user authentication, the upload form uses a plain stream with no Javascript, the ability to set 'pretty hostname' is removed, and reserved ID memos are removed too.
Update piscsi core to use /var/lib/piscsi/images as its default and resolve relative image folders from the server working directory. Allow valid folders outside the user's home directory, and align the tests, protocol comments, service example, and man pages with the new behavior.
Ship a script and makefile target for migrating user data from old to new file system locations.