Files
hps-thunderbird-templates/CLAUDE.md
Kendrick Bollens fd192bb8ba URLs auf hps-Org umstellen (Repo-Transfer)
- Auto-Update-URLs (manifest.json, updates.json), release.sh OWNER, CLAUDE.md
  von kendrick.bollens auf hps
- web-editor/docker-compose.yml: Git-Build-Context auf hps-Repo-URL

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 10:24:32 +02:00

2.4 KiB

CLAUDE.md

Thunderbird-MailExtension „HPS Vorlagen & Signaturen" mit Gitea-Sync.

Workflow (WICHTIG)

  1. Bei jeder Änderung, die zu den Usern soll: version in manifest.json bumpen. Auto-Update vergleicht Versionsnummern — gleiche Version = Clients ziehen das Update NICHT. Also vor dem Build erhöhen (z.B. 2.3.0 → 2.3.1 für Fixes, 2.4.0 für Features).
  2. Nach jeder Code-Änderung am Plugin immer die .xpi neu bauen (siehe Build unten), damit templates-reply-hotel.xpi aktuell ist.
  3. Sobald der User zufrieden ist ("happy"), committen — Code-Änderung + neu gebaute .xpi zusammen. Nicht ungefragt vorher committen; auf das OK des Users warten.
  4. Soll es ausgerollt werden: Release veröffentlichen (siehe Auto-Update unten) — ./release.sh, dann updates.json + manifest.json committen & pushen.

Build der .xpi

Immer ohne defaults.local.json bauen — die Datei enthält den Gitea-Token und darf nicht in der (öffentlich released) .xpi landen. zip ist nicht installiert, 7z schon:

rm -f templates-reply-hotel.xpi
7z a -tzip templates-reply-hotel.xpi . \
  -xr'!.git' -xr'!node_modules' -xr'!web-editor' -xr'!.claude' \
  -xr'!defaults.local.json' -xr'!*.xpi' -xr'!release.sh' -xr'!*.md'

defaults.local.json wird nur beim allerersten Start gelesen (templates_options.js, if (!config)) und ist nur zum Vorkonfigurieren frischer Installationen gedacht. Updates brauchen sie nicht — bestehende Installs behalten ihre Config in storage.local.

Auto-Update (self-hosted über Gitea)

  • manifest.jsonbrowser_specific_settings.gecko.update_url zeigt auf updates.json (raw auf main). Repo muss öffentlich bleiben, sonst 401 für den anonymen Updater.
  • Neues Release veröffentlichen: version in manifest.json bumpen, .xpi neu bauen, dann GITEA_TOKEN=… ./release.sh (hasht die xpi, aktualisiert updates.json, legt das Gitea- Release an + lädt die xpi hoch). release.sh bricht ab, falls der Token in der xpi steckt.
  • Danach updates.json + manifest.json committen & pushen.

Repo

  • Sync-Daten-Repo (Templates/Signaturen): hps/email-vorlagen auf git.hotel-park-soltau.de.
  • Plugin-Source + Release-Host: hps/hps-thunderbird-templates. Muss public bleiben — der Thunderbird-Auto-Updater greift anonym (ohne Token) auf updates.json und die Release-.xpi zu. Privat = 401 = Auto-Updates kaputt.