Migration 0077: elf neue App-Merkmale, Teams als Webapp-Vorlage

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
adminandClaude Opus 5.5 committed 2026-10-26 09:25:03 +01:00
1 parent 2e855f3572
commit ec0ea8a777
1 file changed
+66
@@ -0,0 +1,66 @@
BEGIN;
-- Neue App-Merkmale (26.10.2026): Roadmap "Neue App-Merkmale" (Tipp10,
-- Webex, Zoom, Teams, Shutter) und Nutzer-Wünsche (Xournal++, BlueJ,
-- Visual Studio Code, Bluefish, Geany, Atom, DBeaver). Vertriebswege und
-- Prüfsummen siehe ansible-content/roles/<key>/tasks/main.yml.
--
-- Abweichungen von der Wunschliste:
-- - Atom ist seit Dezember 2022 eingestellt (keine Sicherheitsupdates);
-- stattdessen Pulsar, die weitergeführte Fassung.
-- - Teams hat seit 2022 keinen Linux-Client mehr: Webapp-Vorlage statt
-- Merkmal (Icon holt "Bearbeiten → Speichern" im Admin-Katalog).
-- - Shutter nur Mint/Debian (X11), unter Wayland (Ubuntu) keine Aufnahme.
-- - Webex nur Mint/Ubuntu, Cisco bietet das .deb nur für Ubuntu an.
--
-- icon_source_hint nur, wo https://cdn.simpleicons.org/<slug> am 26.10.2026
-- mit 200 antwortete; sonst Favicon der homepage_url (ebenfalls geprüft).
INSERT INTO merkmale (id, key, name, description, kategorie_id, im_auftragskatalog, homepage_url, icon_source_hint) VALUES
(gen_random_uuid(), 'tipp10', 'Tipp10', 'Zehnfingersystem lernen mit Lektionen, die sich an die eigenen Fehler anpassen.',
(SELECT id FROM kategorien WHERE key = 'bildung-sprache-schreiben'), TRUE, 'https://www.tipp10.com', NULL),
(gen_random_uuid(), 'zoom', 'Zoom', 'Videokonferenzen (Zoom-Client).',
(SELECT id FROM kategorien WHERE key = 'internet-kommunikation'), TRUE, 'https://zoom.us', 'zoom'),
(gen_random_uuid(), 'webex', 'Webex', 'Videokonferenzen (Cisco Webex). Updates kommen nicht automatisch.',
(SELECT id FROM kategorien WHERE key = 'internet-kommunikation'), TRUE, 'https://www.webex.com', 'webex'),
(gen_random_uuid(), 'shutter', 'Shutter', 'Bildschirmfotos aufnehmen und direkt bearbeiten (Markierungen, Pfeile, Text).',
(SELECT id FROM kategorien WHERE key = 'kreativ-grafik'), TRUE, 'https://shutter-project.org', NULL),
(gen_random_uuid(), 'xournalpp', 'Xournal++', 'Handschriftliche Notizen und PDF-Anmerkungen, auch mit Stift und Grafiktablett.',
(SELECT id FROM kategorien WHERE key = 'buero-produktivitaet'), TRUE, 'https://xournalpp.github.io', NULL),
(gen_random_uuid(), 'bluej', 'BlueJ', 'Java-Lernumgebung für den Einstieg in die objektorientierte Programmierung.',
(SELECT id FROM kategorien WHERE key = 'programmieren-making'), TRUE, 'https://www.bluej.org', NULL),
(gen_random_uuid(), 'vscode', 'Visual Studio Code', 'Code-Editor von Microsoft mit Erweiterungen für viele Sprachen.',
(SELECT id FROM kategorien WHERE key = 'programmieren-making'), TRUE, 'https://code.visualstudio.com', NULL),
(gen_random_uuid(), 'bluefish', 'Bluefish', 'Editor für HTML, CSS und Webprogrammierung.',
(SELECT id FROM kategorien WHERE key = 'programmieren-making'), TRUE, 'https://bluefish.openoffice.nl', NULL),
(gen_random_uuid(), 'geany', 'Geany', 'Schlanker Programmier-Editor, auch für schwache Geräte.',
(SELECT id FROM kategorien WHERE key = 'programmieren-making'), TRUE, 'https://www.geany.org', NULL),
(gen_random_uuid(), 'pulsar', 'Pulsar (Nachfolger von Atom)', 'Code-Editor, weitergeführte Fassung des eingestellten Atom.',
(SELECT id FROM kategorien WHERE key = 'programmieren-making'), TRUE, 'https://pulsar-edit.dev', NULL),
(gen_random_uuid(), 'dbeaver', 'DBeaver', 'Datenbank-Werkzeug für SQL-Unterricht (SQLite, MySQL, PostgreSQL u.a.).',
(SELECT id FROM kategorien WHERE key = 'programmieren-making'), TRUE, 'https://dbeaver.io', 'dbeaver');
INSERT INTO blueprints (id, merkmal_id, backend_id, ansible_role)
SELECT gen_random_uuid(), m.id, b.id, m.key
FROM merkmale m
JOIN backends b ON b.key IN ('mint-image', 'debian-image', 'ubuntu-image')
WHERE m.key IN ('tipp10', 'zoom', 'xournalpp', 'bluej', 'vscode', 'bluefish', 'geany', 'pulsar', 'dbeaver');
INSERT INTO blueprints (id, merkmal_id, backend_id, ansible_role)
SELECT gen_random_uuid(), m.id, b.id, m.key
FROM merkmale m
JOIN backends b ON b.key IN ('mint-image', 'debian-image')
WHERE m.key = 'shutter';
INSERT INTO blueprints (id, merkmal_id, backend_id, ansible_role)
SELECT gen_random_uuid(), m.id, b.id, m.key
FROM merkmale m
JOIN backends b ON b.key IN ('mint-image', 'ubuntu-image')
WHERE m.key = 'webex';
INSERT INTO webapp_templates (id, name, url, description, kategorie_id)
VALUES (gen_random_uuid(), 'Microsoft Teams', 'https://teams.microsoft.com',
'Teams im Browser (einen Linux-Client gibt es seit 2022 nicht mehr).',
(SELECT id FROM kategorien WHERE key = 'internet-kommunikation'));
COMMIT;