Files
ekklesiaandClaude Opus 5.5 594fbd810e fix: black and white is shown as it prints, and right-click prints the picture
Printing through Elmer found two things. Black and white came out grey
while the preview stayed in colour: 0.2.6.2 only told the driver. And
right-clicking a picture in a lesson and choosing Print printed the whole
page around it, where some pictures cannot be opened on their own at all.

Black and white is now made before the preview. Ghostscript makes a grey
copy, the preview shows it, and CUPS is given that same file, still with
ColorModel=Grayscale so Elmer's PCL 6 driver prints with pxlmono. Measured
first: Ghostscript's own grey of the colour original and of the copy give
the same greys (Elmer's driver is Ghostscript); poppler's do not. It takes
up to 4.4 s for a lesson page of pictures, so it runs in the background
with a minute to finish, is made once and kept, and a failure is said so
and never printed in colour instead. Ghostscript is now a named dependency;
cups-filters already brought it.

Right-click asks the engine's hit test: on a picture or a canvas it offers
Print image and Print page, elsewhere only Print page. The picture comes
from the engine's own copy image — the only one of five ways measured that
worked for a signed-in picture, a hotlink-protected one, a one-time
address, blob:, data:, another site's, a canvas and WebP — and it fetches
nothing, so the teacher's sign-in is not needed again. It goes through the
clipboard, which is kept and put back; measured under KWin with another
program owning it. A picture that never arrives is said so; the page is
not printed in its place. It then gets the 0.2.6.2 picture layout.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-09-26 16:34:38 -05:00

77 lines
4.7 KiB
Plaintext

Package: ekklesia-classroom
Version: @VERSION@
Section: misc
Priority: optional
Architecture: amd64
Maintainer: Ekklesia
Depends: pkexec, polkit-kde-agent-1, plasma-desktop, plasma-workspace, kwin-wayland, plasma-nm, plasma-pa, plasma-widgets-addons, konsole, sddm, dbus-user-session, xwayland, fonts-dejavu, fonts-noto, network-manager, pipewire, pipewire-audio, wireplumber, pulseaudio-utils, cups, cups-client, cups-filters, foomatic-db-compressed-ppds, python3-gi, python3-gi-cairo, gir1.2-gtk-3.0, gir1.2-gtklayershell-0.1, libnotify-bin, curl, gnupg, ca-certificates, python3-paho-mqtt, python3-pyqt6.qtwebengine, python3-pyqt6, libreoffice-impress, libreoffice-core, poppler-utils, ghostscript, fonts-liberation, fonts-liberation-sans-narrow, fonts-croscore, fonts-crosextra-carlito, fonts-crosextra-caladea, fonts-urw-base35, fonts-roboto, fonts-open-sans, fonts-lato, fonts-montserrat, fonts-noto-extra
Recommends: vlc
Conflicts: plasma-welcome, plasma-discover, kdeconnect, kup-backup, khelpcenter
Description: Ekklesia managed classroom environment
A classroom appliance built on Debian's own Plasma desktop. The room's
panel, window behaviour, notifications, palette and lockdown are
configuration for that desktop rather than a shell of our own; what is
left here is the church's own subject matter — Wonder Ink, the browser,
the DVD player, the printer, the audio policy and the updater.
.
konsole is here for one chord. It is the local recovery route for a
technical administrator standing at a machine when SSH is not
available; it is hidden from every application list and reachable only
by Meta+Ctrl+Alt+Shift+K.
.
plasma-widgets-addons is here for one widget: Quick Launch, which is
the only stock way to put a single launcher on the panel that reads
/usr/share/applications live. The Icon widget copies the entry into the
user's home, so an update could never change it.
.
python3-gi and gtk-layer-shell are still here because the DVD player
draws its own loading cover and control bar as layer-shell surfaces.
They are no longer here for a dock.
.
python3-pyqt6.qtwebengine is Wonder Ink. Teachers prepare a lesson across
several tabs and Chrome cannot be asked for tabs without an address bar,
so the tab strip is the classroom's and the engine is Debian's Chromium.
Measured on Debian 13 before it was chosen: H.264 and AAC both decode,
which is the usual and correct objection to QtWebEngine and is not true
of this build. Chrome stays exactly where it was, for the ordinary
browser.
.
libreoffice-impress and poppler-utils are Presentations, and neither is
ever shown to a teacher. LibreOffice runs once per import, headless,
with no window on any screen, to turn a PPT or PPTX into a PDF; poppler
turns that PDF into one picture per slide; the classroom's own library
shows the pictures. Measured before it was chosen: `soffice --show`
does start a real slideshow and then leaves the Impress editor on
screen when it ends, and `okular --presentation` opens its own document
window and an information dialog behind the slides. Neither is
something a teacher may be left looking at, and converting once at
import costs 0.34s for a ten-slide deck and nothing at all afterwards.
libreoffice-gtk3 is deliberately NOT here: nothing interactive runs.
.
ghostscript is Wonder Ink's black and white. It was already on every
machine, because cups-filters needs it; it is named here because Wonder
Ink now runs it itself, to make the grey copy of a page that the print
preview shows and CUPS is given. Measured: it is the same engine Elmer's
driver prints with, and its grey differs from what Elmer would have
made of the colour page by at most 1 level in 255.
.
The fonts are what a Google Slides export asks for. The metric
compatible families cover the Microsoft names — Liberation for Arial,
Times New Roman and Courier New, Carlito for Calibri, Caladea for
Cambria, Croscore for the same three under their Chrome OS names — and
Roboto, Open Sans, Lato and Montserrat are the web fonts Google Slides
itself offers. Every one is in Debian main and installs without a
question. ttf-mscorefonts-installer is deliberately absent: it is in
contrib, it downloads from a third party at install time and it shows
an EULA prompt, and an unattended classroom upgrade cannot answer one.
.
The Conflicts line is deliberate. A welcome tour, a software centre and
a phone pairing daemon are all things plasma-desktop recommends and a
room a teacher walks into should not have.
.
khelpcenter is there for the same reason, found the hard way: a
settings window's Help button opens it directly, whatever the Kiosk
restrictions say, and it is a browser of the machine's manual pages with
file dialogs of its own. plasma-desktop only recommends it, and nothing
else installed needs it.