Docker faellt weg. Das Projekt hat keine npm-Abhaengigkeiten und Node fuehrt TypeScript direkt aus - der Container schrieb nur noch drei Programme fest, und dafuer braucht es keine Virtualisierung, sondern einen Ordner. Der Anlass war, dass ADR-0004 zwar `docker compose pull` versprach, es aber nie ein veroeffentlichtes Image gab. Wer installieren wollte, musste whisper.cpp aus dem Quelltext uebersetzen. Plattformschicht (packages/core/src/platform.ts): - Programme werden neben der Anwendung gesucht, nicht im PATH - Daten unter %LOCALAPPDATA%, damit Installation und Update ohne Administratorrechte auskommen - Schriften mitgeliefert: ohne fontsdir setzt libass wortlos eine Ersatzschrift ein - gemessen 720 statt 826 Pixel Zeilenbreite Windows-Eigenheiten, an echtem ffmpeg 8.1 durchprobiert: - Pfade im Filtergraphen brauchen alle drei Schritte (Vorwaertsschraegstriche, escapter Doppelpunkt, Anfuehrungszeichen); je zwei davon reichen nicht - `nice` gibt es nicht, ersetzt durch os.setPriority Auslieferung: - scripts/build-package.ts baut das Paket, laeuft auch unter Linux - install.ps1 ohne Administratorrechte, Autostart ueber den Aufgabenplaner - update legt neue Fassungen bereit; eingespielt wird beim naechsten Start, nie mitten im Stream - ZIP lesen und schreiben ohne Abhaengigkeiten (packages/core/src/zip.ts) Kein `irm ... | iex`-Einzeiler: git.zeasy.dev antwortete instanzweit mit einer Umleitung auf /user/login, und `iex` fuehrte die Anmeldeseite als PowerShell aus. Der Updater verfolgt Umleitungen jetzt nicht und hat keine erfundene Vorgabeadresse mehr. Ausserdem: backup.ps1 war an zwei Stellen dokumentiert, aber nie geschrieben. ADR-0007 ersetzt ADR-0004. 84 Tests, Typpruefung sauber. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AhVSfMFdWnXKCv5JfLnArZ
29 lines
790 B
JSON
29 lines
790 B
JSON
{
|
|
"name": "abdulive-toolkit",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"description": "Werkzeugkasten fuer den Twitch-Kanal abdulive_",
|
|
"type": "module",
|
|
"engines": {
|
|
"node": ">=24"
|
|
},
|
|
"imports": {
|
|
"#shared/*": "./packages/shared/src/*",
|
|
"#core/*": "./packages/core/src/*",
|
|
"#db/*": "./packages/db/src/*",
|
|
"#twitch/*": "./packages/twitch/src/*",
|
|
"#obs/*": "./packages/obs/src/*",
|
|
"#media/*": "./packages/media/src/*"
|
|
},
|
|
"scripts": {
|
|
"start": "node apps/cli/main.ts ingest",
|
|
"check-env": "node apps/cli/main.ts check-env",
|
|
"package": "node scripts/build-package.ts",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "node --test \"packages/**/*.test.ts\" \"apps/**/*.test.ts\""
|
|
},
|
|
"devDependencies": {
|
|
"typescript": "^5.9.0"
|
|
}
|
|
}
|