Wer QuartzControl lieber selbst übersetzt oder daran arbeiten will, braucht den Quelltext von github.com/boxi-os/QuartzControl und ein Node auf dem Rechner — das mitgelieferte gilt nur für fertige Fassungen.
npm install
npm run dev # Entwicklungsmodus
npm run build # Produktionsbau nach out/
npm run dist:mac # oder dist:linux, dist:flatpak
Das Ergebnis von dist:* landet unter release/. Für macOS gilt dabei dasselbe wie für die
fertigen Pakete: Ein selbst gebauter Stand ist ebenso nur ad-hoc signiert, und
Gatekeeper verlangt dieselbe Freigabe.
dist:flatpak steht bewusst neben dist:linux und nicht darin: Das Ziel braucht flatpak und
flatpak-builder auf der Baumaschine, und dist:linux soll auf einem Rechner ohne die beiden
nicht scheitern.
Die Prüfungen
Es gibt keine Testsammlung im üblichen Sinn. Stattdessen beantwortet jede Prüfung eine Frage, die weder der Typcheck noch der Bau beantwortet:
npm run typecheck | beide tsconfig |
npm run smoke | startet den Bau und besucht jeden Bildschirm in zwei Fenstergrößen |
npm run check:i18n | jedes t('…') gegen beide Sprachdateien, in beide Richtungen |
npm run check:semver | die Versionsvergleiche hinter dem Update-Hinweis |
npm run check:plugin-names | die Namensableitung gegen Quartz’ eigene Funktion |
npm run check:handbook | die Zitate dieses Handbuchs gegen das, was QuartzControl wirklich sagt |
npm run check:runtime | die mitgelieferte Laufzeit gegen ein echtes Projekt |
npm run check:tokens | ob eine CSS-Variable in einer laufenden Seite überhaupt etwas bewegt |
Warum es jede einzelne gibt, steht in CLAUDE.md des Projekts — jeweils neben dem Fehler, der sie
erzwungen hat.