Files
provisioning-server/migrations/0044_chromium_edge_merkmale.sql
T
adminandClaude Sonnet 5 4706870774 Phase 4: Webapp-Kategorie-Menü-Einordnung + Kiosk-Modus, Chromium+Edge-Merkmale
Webapps bekommen zwei neue, optionale Eigenschaften (Migration 0043):
kategorie_id (FK auf kategorien, nullable) und kiosk_modus (Boolean).
Kein eigener "Webapps"-Menüpunkt (per Nutzer-Feedback in der Plan-Runde
verworfen) - stattdessen ordnet sich eine Webapp optional einer der
bestehenden App-Kategorien zu, KATEGORIE_ZU_XDG_CATEGORIES übersetzt das
in eine echte Freedesktop-Categories=-Zeile fürs .desktop-Menü (Default
unverändert Network;WebBrowser; ohne gewählte Kategorie).

Kiosk-Modus: bei aktiviertem kiosk_modus löst der Server (nicht das
Gerät) anhand der Workspace-Merkmal-Zuordnung auf, welcher Browser das
Kiosk-Fenster öffnet (Chrome bevorzugt, Chromium Fallback, sonst normaler
Tab) - _resolve_kiosk_browser() in fetch_workspace_webapps().

Migration 0044: Chromium + Microsoft Edge als neue Browser-Merkmale
(Google Chrome existiert bereits aus Migration 0031). Chromium bewusst
NUR für debian-image/mint-image blueprint-verknüpft, nicht ubuntu-image -
recherchiert: Ubuntus "chromium"-Paket ist seit 19.10 nur ein
transitionelles Paket, das im Hintergrund Snap nachzieht (passt nicht zu
unserem Modell), während Debian und Mint ein echtes .deb bauen. Microsoft
Edge über das offizielle, distributionsunabhängige Microsoft-Repo auf
allen drei Backends.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLk93dhDMrkPXefVdknMV9
2026-09-11 11:10:33 +02:00

34 lines
1.6 KiB
PL/PgSQL

BEGIN;
-- Phase 4 des GUI-Ausbaus (11.09.2026): zwei neue Browser-Merkmale, wie
-- vom Nutzer in der Plan-Klärungsrunde gewünscht ("wollte sowieso noch
-- Chrome, Chromium und Edge ergänzen") - Google Chrome existiert bereits
-- aus Migration 0031.
--
-- Chromium bewusst NUR auf debian-image/mint-image blueprint-verknüpft,
-- NICHT auf ubuntu-image - siehe ausführlicher Kommentar in
-- ansible-content/roles/chromium/tasks/main.yml (Ubuntus "chromium"-Paket
-- ist seit 19.10 nur noch ein Snap-Wrapper, kein echtes .deb).
-- Microsoft Edge läuft (wie Google Chrome) über ein eigenes, distributions-
-- unabhängiges Microsoft-Repo - auf allen drei Backends verfügbar.
INSERT INTO merkmale (id, key, name, description, kategorie_id, im_auftragskatalog) VALUES
(gen_random_uuid(), 'chromium', 'Chromium',
'Freie Basis von Google Chrome. Auf Ubuntu bewusst nicht angeboten (dortiges Paket zieht Snap nach) - dort steht Chrome zur Verfügung.',
(SELECT id FROM kategorien WHERE key = 'internet-kommunikation'), TRUE),
(gen_random_uuid(), 'microsoft-edge', 'Microsoft Edge', NULL,
(SELECT id FROM kategorien WHERE key = 'internet-kommunikation'), TRUE);
INSERT INTO blueprints (id, merkmal_id, backend_id, ansible_role)
SELECT gen_random_uuid(), m.id, b.id, 'chromium'
FROM merkmale m
JOIN backends b ON b.key IN ('mint-image', 'debian-image')
WHERE m.key = 'chromium';
INSERT INTO blueprints (id, merkmal_id, backend_id, ansible_role)
SELECT gen_random_uuid(), m.id, b.id, 'microsoft-edge'
FROM merkmale m
JOIN backends b ON b.key IN ('mint-image', 'debian-image', 'ubuntu-image')
WHERE m.key = 'microsoft-edge';
COMMIT;