build: keep the DVD and MQTT helpers, and count the deletion honestly

Building the package showed what reading the tree did not: classroom-dvd
still calls classroom-window, classroom-mqtt still calls classroom-notify,
and the DVD overlay still imports the icon and stylesheet helpers the dock
shared. They go back in, and the write-up now counts what was actually
removed rather than what could be.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
ekklesia
2026-09-10 09:03:26 -05:00
co-authored by Claude Opus 5
parent 6e4786f448
commit 4c3f19d599
17 changed files with 171 additions and 1778 deletions
+29 -14
View File
@@ -316,26 +316,41 @@ loop goes away. **Not exercised** — the lab has no optical drive.
## Custom code this deletes
Deleted on this branch, and counted rather than estimated:
| | lines | replaced by |
| --- | --- | --- |
| `classroom-dock` | 754 | the Plasma panel |
| `classroom-chrome-windows` | 314 | `--start-maximized`, and a window manager |
| `classroom-window` | 208 | the task manager |
| `classroom-notify` | 214 | Plasma notifications |
| `classroom-notifications` | 74 | — |
| `classroom-scale` | 57 | Plasma display scaling |
| `classroom_sway.py` | 127 | — |
| `classroom_icons.py` | 95 | the icon theme |
| `classroom_style.py` | 36 | the colour scheme |
| `classroom_optical.py` | 125 | Solid |
| sway, waybar, mako configs | — | — |
| `config/bash_profile` | 2 | SDDM |
| **total** | **≈ 2 000** | |
| `scripts/classroom-dock` | 754 | the Plasma panel |
| `scripts/classroom-chrome-windows` | 314 | `--start-maximized`, and a window manager |
| `tests/test-classroom-chrome-windows.sh` | 280 | — |
| `config/dock/style.css.in` | 102 | the colour scheme |
| `scripts/classroom-notifications` | 74 | Plasma notifications |
| `config/sway/config` | 62 | `kwinrc` |
| `config/mako/config.in` | 48 | `plasmanotifyrc` |
| `config/waybar/*` | 55 | the Plasma panel |
| `config/bash_profile`, getty autologin | 6 | SDDM |
| `config/icons/browser.svg` | — | Chrome's own icon |
| **total** | **1 695** | |
Kept, because they are the classroom's own subject matter: the DVD session
Rewritten rather than deleted: `classroom-browser` (41 → 30 lines, it no
longer decides launch-or-focus-or-minimise), `classroom-scale` (sway output
scale → `kscreen-doctor`), `classroom-notify` (found the session by looking
for sway and refused to run without mako; now looks for the compositor and
the shell).
**Still present, and still sway-shaped.** `classroom-window`,
`classroom_sway.py`, `classroom_icons.py`, `classroom_style.py` and
`classroom_optical.py` are all reachable only from the DVD player and the
MQTT notifier, and they were deliberately not rewritten — see *the DVD
player* under unresolved risks. Another ~590 lines go when that is done.
Kept because they are the classroom's own subject matter: the DVD session
and CSS setup, printer setup, provisioning, MQTT, the updater, shutdown.
Added: the audio policy and its test, the theme switch, and configuration.
The package was built and its contents checked: every `/usr/local` path any
classroom command names is in it.
## Alternatives, and why they lost
**Stay on sway, add Waybar.** Cheapest migration, and it loses on the thing