feat: give the classroom a desktop instead of a shell
The whole appliance UI is now configuration for a desktop Debian already ships: a Plasma 6.3 session with a colour scheme, a look and feel package that builds the bar, window rules, and KDE's own Kiosk restrictions. Two things were measured rather than assumed, and both changed a decision. Plasma restarts a crashed panel three times a minute and then gives up, which is the failure a classroom has already had. Four lines of systemd drop-in make it unconditional; the panel then survived eight SIGKILLs a second apart, back each time in 2.4s. Plasma draws a minimised task and a background task identically, so the five states the room needs cannot all be shown. Rather than write a task manager, the classroom removes minimise: clicking a launcher always means show me this. Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 5
parent
bfc7caf28f
commit
87b55761c6
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Parent Call.
|
||||
|
||||
Deliberately not a colour tile. Parent Call is not one of the room's
|
||||
applications and does not sit in the row with them, so it is drawn in
|
||||
the interface's own accent as a line mark: present, reachable, and
|
||||
visibly a different kind of thing from Wonder Ink and the browser. -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128" viewBox="0 0 128 128">
|
||||
<!-- Inset so the mark has the same optical size as the filled tiles
|
||||
beside it in the bar; an outline drawn to the edges reads larger. -->
|
||||
<g transform="translate(64 64) scale(0.62) translate(-64 -64)"
|
||||
fill="none" stroke="#4FB3A8" stroke-width="8"
|
||||
stroke-linecap="round" stroke-linejoin="round">
|
||||
<path d="M40 58a24 24 0 0 1 48 0c0 18 6 24 9 28H31c3-4 9-10 9-28z"/>
|
||||
<path d="M55 94a9 9 0 0 0 18 0"/>
|
||||
<path d="M64 26v-8"/>
|
||||
<path d="M100 30a30 30 0 0 1 8 20"/>
|
||||
<path d="M28 30a30 30 0 0 0-8 20"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 992 B |
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Wonder Ink.
|
||||
|
||||
A stand-in for the product's own mark, which the classroom does not
|
||||
have a licensed asset for. It is a filled colour tile rather than a
|
||||
line drawing on purpose: the room already learned, the hard way, that
|
||||
a monochrome glyph on a bar is read as a decoration and not as an
|
||||
application. Somebody asked whether the old browser glyph meant "the
|
||||
Internet". A tile with its own colour does not get that question. -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128" viewBox="0 0 128 128">
|
||||
<defs>
|
||||
<linearGradient id="tile" x1="0" y1="0" x2="1" y2="1">
|
||||
<stop offset="0" stop-color="#4FB3A8"/>
|
||||
<stop offset="0.55" stop-color="#3E93A8"/>
|
||||
<stop offset="1" stop-color="#7C6FC4"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<rect x="6" y="6" width="116" height="116" rx="28" fill="url(#tile)"/>
|
||||
<path d="M64 30c0 0 26 28 26 44a26 26 0 0 1-52 0c0-16 26-44 26-44z"
|
||||
fill="#FFFFFF" fill-opacity="0.94"/>
|
||||
<path d="M50 76a14 14 0 0 0 10 13" stroke="#3E93A8" stroke-width="5"
|
||||
stroke-linecap="round" fill="none" opacity="0.55"/>
|
||||
<g fill="#FFFFFF" opacity="0.9">
|
||||
<path d="M96 34l2.6 6.4L105 43l-6.4 2.6L96 52l-2.6-6.4L87 43l6.4-2.6z"/>
|
||||
<circle cx="34" cy="40" r="3.2"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
Reference in New Issue
Block a user