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]>
61 lines
1.8 KiB
Plaintext
61 lines
1.8 KiB
Plaintext
# Ekklesia Classroom session policy.
|
|
#
|
|
# Installed to /etc/xdg/kdeglobals, where it is the bottom of Plasma's
|
|
# configuration cascade. Every group is marked [$i] — immutable — so a
|
|
# teacher, a stray click or a misbehaving application cannot override it
|
|
# from the user's own configuration. This is KDE's own Kiosk mechanism:
|
|
# nothing here is achieved by deleting a binary or hiding a menu entry.
|
|
#
|
|
# Lifting a restriction for maintenance is a one-line edit to this file
|
|
# followed by a session restart, which is what makes the appliance
|
|
# serviceable rather than merely locked.
|
|
|
|
[KDE Action Restrictions][$i]
|
|
# No way to reach a shell, a command line, or an arbitrary program.
|
|
action/kdesktop_rmb=false
|
|
action/kwin_rmb=false
|
|
action/openwith=false
|
|
action/switch_user=false
|
|
action/start_new_session=false
|
|
action/lock_screen=false
|
|
run_command=false
|
|
shell_access=false
|
|
logout=false
|
|
# The desktop and the panel are a fixed part of the appliance.
|
|
editable_desktop_icons=false
|
|
editable_bookmarks=false
|
|
movable_toolbars=false
|
|
plasma/plasmashell/unlockedDesktop=false
|
|
plasma-desktop/scripting_console=false
|
|
# Nothing in the classroom should offer to file a bug or open a manual.
|
|
action/help_report_bug=false
|
|
action/help_about_kde=false
|
|
action/help_contents=false
|
|
|
|
[General][$i]
|
|
ColorScheme=EkklesiaDark
|
|
AccentColor=79,179,168
|
|
# The teacher's own words are not decoration: keep text rendering plain
|
|
# and readable rather than styled.
|
|
XftAntialias=true
|
|
XftHintStyle=hintslight
|
|
XftSubPixel=rgb
|
|
|
|
[KDE][$i]
|
|
widgetStyle=Breeze
|
|
LookAndFeelPackage=org.ekklesia.classroom.desktop
|
|
SingleClick=false
|
|
AnimationDurationFactor=0.5
|
|
|
|
[Icons][$i]
|
|
Theme=breeze-dark
|
|
|
|
[KFileDialog Settings][$i]
|
|
Allow Expansion=false
|
|
Automatically select filename extension=true
|
|
Show Bookmarks=false
|
|
Show Full Path=false
|
|
Show Inline Previews=false
|
|
Show Speedbar=false
|
|
Sort directories first=true
|