Phase 2: 28 neue App-Store-Merkmale (regulaere apt-Pakete)
Erste Batch des Merkmal-Ausbaus (siehe Roadmap-Plan, Memory project_phase2_app_store_merkmale): 28 Ansible-Rollen fuer Apps mit regulaerem Debian/Ubuntu-Paket (per apt-cache auf einer echten Debian-trixie-Quelle verifiziert, nicht aus dem Gedaechtnis geraten). apt/deb bewusst statt Flatpak (Nutzer-Entscheidung 09.09.2026, kehrt die bisherige brave/libreoffice/onlyoffice-Praxis fuer alle NEUEN Rollen um). Kein os_family-Zweig noetig - alle drei Ziel-Backends (mint-image/debian-image/ubuntu-image) sind Debian-Familie, Fedora bewusst ausgeklammert. Rollen: gimp, inkscape, scribus, librecad (Kreativ/Grafik); audacity, musescore, metronome, minuet (Musik/Audio); stellarium, octave, kalgebra, kalzium, kbruch, step, tuxmath, filius, gcompris (Bildung Mathe/Naturwissenschaft); ktouch, kwordquiz, kanagram, tuxtype, foliate (Bildung Sprache/Schreiben); evolution (Buero); kturtle, fritzing (Programmieren/Making); remmina (Internet); geogebra, marble (Unterrichtswerkzeuge). Jede Rolle folgt dem bestehenden Muster (Marker-Datei unter /run/tuxflotte/agent/applied/, present/absent-Verzweigung auf tuxflotte_state) - alle 33 site.yml-Bloecke + alle Rollen-tasks als YAML geparst verifiziert. Gehoert zusammen mit admin/provisioning-server-Migration 0030 (Merkmal- +Blueprint-DB-Eintraege, live auf anode angewendet+verifiziert). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VLk93dhDMrkPXefVdknMV9
This commit is contained in:
1 parent
78397251e5
commit
572a8039bd
57 files changed
+1372
No files matched your search
@@ -56,3 +56,255 @@
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('google-earth', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('google-earth', {}) }}"
|
||||
tags: google-earth
|
||||
|
||||
- include_role:
|
||||
name: gimp
|
||||
apply:
|
||||
tags: gimp
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('gimp', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('gimp', {}) }}"
|
||||
tags: gimp
|
||||
|
||||
- include_role:
|
||||
name: inkscape
|
||||
apply:
|
||||
tags: inkscape
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('inkscape', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('inkscape', {}) }}"
|
||||
tags: inkscape
|
||||
|
||||
- include_role:
|
||||
name: scribus
|
||||
apply:
|
||||
tags: scribus
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('scribus', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('scribus', {}) }}"
|
||||
tags: scribus
|
||||
|
||||
- include_role:
|
||||
name: librecad
|
||||
apply:
|
||||
tags: librecad
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('librecad', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('librecad', {}) }}"
|
||||
tags: librecad
|
||||
|
||||
- include_role:
|
||||
name: audacity
|
||||
apply:
|
||||
tags: audacity
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('audacity', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('audacity', {}) }}"
|
||||
tags: audacity
|
||||
|
||||
- include_role:
|
||||
name: musescore
|
||||
apply:
|
||||
tags: musescore
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('musescore', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('musescore', {}) }}"
|
||||
tags: musescore
|
||||
|
||||
- include_role:
|
||||
name: metronome
|
||||
apply:
|
||||
tags: metronome
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('metronome', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('metronome', {}) }}"
|
||||
tags: metronome
|
||||
|
||||
- include_role:
|
||||
name: minuet
|
||||
apply:
|
||||
tags: minuet
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('minuet', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('minuet', {}) }}"
|
||||
tags: minuet
|
||||
|
||||
- include_role:
|
||||
name: stellarium
|
||||
apply:
|
||||
tags: stellarium
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('stellarium', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('stellarium', {}) }}"
|
||||
tags: stellarium
|
||||
|
||||
- include_role:
|
||||
name: octave
|
||||
apply:
|
||||
tags: octave
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('octave', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('octave', {}) }}"
|
||||
tags: octave
|
||||
|
||||
- include_role:
|
||||
name: kalgebra
|
||||
apply:
|
||||
tags: kalgebra
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('kalgebra', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('kalgebra', {}) }}"
|
||||
tags: kalgebra
|
||||
|
||||
- include_role:
|
||||
name: kalzium
|
||||
apply:
|
||||
tags: kalzium
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('kalzium', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('kalzium', {}) }}"
|
||||
tags: kalzium
|
||||
|
||||
- include_role:
|
||||
name: kbruch
|
||||
apply:
|
||||
tags: kbruch
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('kbruch', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('kbruch', {}) }}"
|
||||
tags: kbruch
|
||||
|
||||
- include_role:
|
||||
name: step
|
||||
apply:
|
||||
tags: step
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('step', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('step', {}) }}"
|
||||
tags: step
|
||||
|
||||
- include_role:
|
||||
name: tuxmath
|
||||
apply:
|
||||
tags: tuxmath
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('tuxmath', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('tuxmath', {}) }}"
|
||||
tags: tuxmath
|
||||
|
||||
- include_role:
|
||||
name: filius
|
||||
apply:
|
||||
tags: filius
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('filius', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('filius', {}) }}"
|
||||
tags: filius
|
||||
|
||||
- include_role:
|
||||
name: gcompris
|
||||
apply:
|
||||
tags: gcompris
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('gcompris', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('gcompris', {}) }}"
|
||||
tags: gcompris
|
||||
|
||||
- include_role:
|
||||
name: ktouch
|
||||
apply:
|
||||
tags: ktouch
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('ktouch', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('ktouch', {}) }}"
|
||||
tags: ktouch
|
||||
|
||||
- include_role:
|
||||
name: kwordquiz
|
||||
apply:
|
||||
tags: kwordquiz
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('kwordquiz', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('kwordquiz', {}) }}"
|
||||
tags: kwordquiz
|
||||
|
||||
- include_role:
|
||||
name: kanagram
|
||||
apply:
|
||||
tags: kanagram
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('kanagram', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('kanagram', {}) }}"
|
||||
tags: kanagram
|
||||
|
||||
- include_role:
|
||||
name: tuxtype
|
||||
apply:
|
||||
tags: tuxtype
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('tuxtype', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('tuxtype', {}) }}"
|
||||
tags: tuxtype
|
||||
|
||||
- include_role:
|
||||
name: foliate
|
||||
apply:
|
||||
tags: foliate
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('foliate', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('foliate', {}) }}"
|
||||
tags: foliate
|
||||
|
||||
- include_role:
|
||||
name: evolution
|
||||
apply:
|
||||
tags: evolution
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('evolution', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('evolution', {}) }}"
|
||||
tags: evolution
|
||||
|
||||
- include_role:
|
||||
name: kturtle
|
||||
apply:
|
||||
tags: kturtle
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('kturtle', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('kturtle', {}) }}"
|
||||
tags: kturtle
|
||||
|
||||
- include_role:
|
||||
name: fritzing
|
||||
apply:
|
||||
tags: fritzing
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('fritzing', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('fritzing', {}) }}"
|
||||
tags: fritzing
|
||||
|
||||
- include_role:
|
||||
name: remmina
|
||||
apply:
|
||||
tags: remmina
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('remmina', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('remmina', {}) }}"
|
||||
tags: remmina
|
||||
|
||||
- include_role:
|
||||
name: geogebra
|
||||
apply:
|
||||
tags: geogebra
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('geogebra', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('geogebra', {}) }}"
|
||||
tags: geogebra
|
||||
|
||||
- include_role:
|
||||
name: marble
|
||||
apply:
|
||||
tags: marble
|
||||
vars:
|
||||
tuxflotte_state: "{{ tuxflotte_auftrag_states.get('marble', 'present') }}"
|
||||
tuxflotte_optionen: "{{ tuxflotte_auftrag_optionen.get('marble', {}) }}"
|
||||
tags: marble
|
||||
Reference in new issue
Block a user