From ba182cb18025796e3acc97bd98f18fc580d756d7 Mon Sep 17 00:00:00 2001 From: Tobi G Date: Mon, 24 Aug 2026 09:26:50 +0200 Subject: [PATCH] GitHub-Spiegel entfernt - HACS kann nicht helfen, Gitea bleibt die einzige Quelle MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Der am 2026-08-24 angelegte Spiegel nach github.com/T130B/DM360 hatte keinen Zweck erfüllt: HACS lehnt private Repositories laut eigener Dokumentation kategorisch ab, unabhängig davon, ob sie auf Gitea oder GitHub liegen. Ein GitHub-Konto zusätzlich zu pflegen kaufte also nichts. Auf Wunsch entfernt - entwickelt wird ausschließlich auf der eigenen Gitea-Instanz. - hacs.json entfernt: tote Konfiguration ohne GitHub-Ziel, das sie bedienen könnte. - manifest.json: documentation/issue_tracker/codeowners zeigen jetzt auf gitea.nothaft.cloud/paul/audi-app statt auf den abgeschafften Spiegel. - install.ps1: Kopfkommentar nennt keinen aktiven Spiegel mehr. - AGENTS.md: die HACS-Ablehnung als endgültig festgehalten (nicht nur "heute privat"), samt der Begründung, warum ein erneuter GitHub-Anlauf nichts ändern würde - falls das je wieder aufkommt. Am laufenden Testcontainer geprüft: Integration lädt mit dem neuen Manifest fehlerfrei neu, keine Fehler im Protokoll. Co-Authored-By: Claude Sonnet 5 --- AGENTS.md | 44 ++++++++++--------- .../audi_dashboard/manifest.json | 6 +-- hacs.json | 5 --- homeassistant/installationspaket/install.ps1 | 12 +++-- 4 files changed, 31 insertions(+), 36 deletions(-) delete mode 100644 hacs.json diff --git a/AGENTS.md b/AGENTS.md index 4438c25..a209373 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -188,7 +188,7 @@ assets. Never mix these the other way around. | Area | What | Status | |---|---|---| -| `custom_components/audi_dashboard/` | The HA integration: backend, panel, OTA app bundle. HACS-shaped but HACS-installable only in principle — the repo is private and HACS categorically refuses private repos, so `install.ps1` is the actual, only install path (section H) | ✅ **finished, in use** — replaced the pyscript backend on 2026-08-23 (section H) | +| `custom_components/audi_dashboard/` | The HA integration: backend, panel, OTA app bundle. HACS is not used and cannot be — private repo, categorical refusal on HACS's side, no GitHub mirror any more; `install.ps1` is the permanent, only install path (section H) | ✅ **finished, in use** — replaced the pyscript backend on 2026-08-23 (section H) | | `homeassistant/` | Install package, recorder snippet, guides — **no code any more** | ✅ | | `testumgebung/` | Script that rebuilds a throwaway Home Assistant with the real backend | ✅ new, reproducible | | `design-system/` | React component library `@audi-dash/ui`, brand-free, feeds Claude Design | ✅ done as a kit (20 components, 1,690 lines) | @@ -1815,23 +1815,29 @@ HACS 2.0.5 rather than from memory: `custom_templates/` and `appdaemon/apps//` (verified in `repositories/*.py` → `localpath`). The app needed `/config/pyscript/` **and** `/config/audi_dashboard/` **and** `configuration.yaml` entries. This is what the conversion solved. -- **HACS is GitHub-only.** `github.com`/`api.github.com` are hardcoded throughout; the repo lived - on `gitea.nothaft.cloud`. 2026-08-24: the owner mirrored it to `github.com/T130B/DM360`, and the - manifest URLs/codeowners now point there — but this does **not** make HACS usable. **HACS +- **HACS is GitHub-only, and does not work here — permanently, not just today.** `github.com`/ + `api.github.com` are hardcoded throughout; the repo lives on `gitea.nothaft.cloud`. Briefly + mirrored to `github.com/T130B/DM360` on 2026-08-24, but that changes nothing: **HACS categorically refuses private repositories**, confirmed against its own docs (hacs.xyz/docs/faq/private_repositories: "Private GitHub repositories can not be used with HACS at all... HACS can only get publicly available information") — no token, no signed-in-account exception. An earlier note in this file claimed the opposite ("HACS must be signed in with the - account that owns it"); that was wrong and is corrected here. The GitHub mirror is **private on - purpose** (it carries the Audi typeface and the model badges, licensed for this one private - install only), so making it public to satisfy HACS is not on the table. - `homeassistant/installationspaket/install.ps1` is therefore not a fallback — it is **the only - installation path**, and the docs (`README.md`, `homeassistant/INSTALL.md`, - `installationspaket/ANLEITUNG.md`, `VERSIONIERUNG.md`, the script's own header) were rewritten - 2026-08-24 to say so instead of presenting a HACS path that cannot work. + account that owns it"); that was wrong and is corrected here. The repo is **private on purpose** + (it carries the Audi typeface and the model badges, licensed for this one private install only), + so making it public to satisfy HACS is not on the table — and since the mirror bought nothing + (HACS still can't see a private repo, mirrored or not), the owner decommissioned it the same day. + **Development is Gitea-only from here on; there is no GitHub presence.** `hacs.json` was removed + (dead weight with no GitHub target to serve), and `manifest.json`'s `documentation`/ + `issue_tracker`/`codeowners` point at the Gitea repo instead. + `homeassistant/installationspaket/install.ps1` is not a fallback — it is **the only installation + path**, and the docs (`README.md`, `homeassistant/INSTALL.md`, `installationspaket/ANLEITUNG.md`, + `VERSIONIERUNG.md`, the script's own header) say so. Don't reintroduce a GitHub mirror or + `hacs.json` without the owner raising it again — the private/public constraint that killed this + path hasn't changed and isn't expected to. -**The shape.** `custom_components/audi_dashboard/` at repo root (HACS looks for -`custom_components/` there and nowhere else), `hacs.json` beside it. Config flow, one +**The shape.** `custom_components/audi_dashboard/` at repo root — not for HACS's benefit (see +above, HACS is off the table), just where `install.ps1` and Home Assistant itself expect a +`custom_components` entry to live. Config flow, one `sensor` platform, 18 services, ~2,900 lines of pyscript ported to ~2,400 lines of integration. `koordinator.py` holds the runtime state and does the wiring that `@service`/`@state_trigger`/ `@time_trigger` used to do implicitly; the domain modules keep their old names and structure so the @@ -1915,14 +1921,10 @@ left to add), `ANLEITUNG.pdf` (stale and not regenerable here; the `.md` beside **Do not resurrect the pyscript tree.** If something is missing, port it — running both backends writes two sets of trips into the same files. -**HACS is not the delivery path — confirmed dead-end, not a gap.** 2026-08-24, checked against -HACS's own docs: private repos are refused categorically, no exception. The layout is still HACS -shape (`custom_components/audi_dashboard/` + `hacs.json` at repo root, manifest with `domain`, -`name`, `version`, `documentation`, `issue_tracker`, `codeowners`) in case the repo is ever -restructured to separate the licensed Audi assets from the installable code — but there is no -current plan to do that, and `install.ps1` is not standing in for HACS temporarily; it is the -permanent, only path. Don't spend effort re-verifying HACS compatibility for this repo again -unless the private/public situation changes. +**Don't re-litigate HACS.** Confirmed dead-end, not a gap — see the H) intro above. Nothing about +Gitea-vs-mirrored-GitHub changes it: HACS refuses private repos regardless of where they're +mirrored, and the private/public constraint (licensed Audi assets in the repo) isn't going away. +`install.ps1` is the permanent, only install path, not a stand-in. ### The deployed-parity problem, and what was built for it (2026-08-23) diff --git a/custom_components/audi_dashboard/manifest.json b/custom_components/audi_dashboard/manifest.json index d29ee1e..215dd8a 100644 --- a/custom_components/audi_dashboard/manifest.json +++ b/custom_components/audi_dashboard/manifest.json @@ -2,9 +2,9 @@ "domain": "audi_dashboard", "name": "Audi Dashboard", "version": "2026.8.24.1", - "documentation": "https://github.com/T130B/DM360/blob/main/README.md", - "issue_tracker": "https://github.com/T130B/DM360/issues", - "codeowners": ["@T130B"], + "documentation": "https://gitea.nothaft.cloud/paul/audi-app/src/branch/main/README.md", + "issue_tracker": "https://gitea.nothaft.cloud/paul/audi-app/issues", + "codeowners": ["@paul"], "config_flow": true, "integration_type": "service", "single_config_entry": true, diff --git a/hacs.json b/hacs.json deleted file mode 100644 index 741ffb6..0000000 --- a/hacs.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name": "Audi Dashboard", - "homeassistant": "2025.1.0", - "render_readme": true -} diff --git a/homeassistant/installationspaket/install.ps1 b/homeassistant/installationspaket/install.ps1 index 6c0d150..f03cd00 100644 --- a/homeassistant/installationspaket/install.ps1 +++ b/homeassistant/installationspaket/install.ps1 @@ -19,15 +19,13 @@ HACS scheidet für dieses Repository aus, und zwar endgültig: laut eigener Dokumentation (hacs.xyz/docs/faq/private_repositories) kann HACS "grundsätzlich nicht" mit privaten GitHub-Repositories arbeiten - ohne - Ausnahme für Tokens oder verbundene Konten. Das Projekt wird zwar von der - eigenen Gitea-Instanz nach github.com/T130B/DM360 gespiegelt, aber das - Repository bleibt privat: es enthält die Audi-Hausschrift und die - Typenschilder, die nur für diese eine private Installation lizenziert - sind, und öffentlich machen ist deshalb keine Option. + Ausnahme für Tokens oder verbundene Konten. Das Repository enthält die + Audi-Hausschrift und die Typenschilder, die nur für diese eine private + Installation lizenziert sind, und öffentlich machen ist deshalb keine + Option. Ein GitHub-Spiegel wurde deshalb 2026-08-24 wieder aufgegeben - + entwickelt wird ausschließlich auf der eigenen Gitea-Instanz. Dieses Skript ist damit nicht die Rückfallebene, sondern der einzige Weg. - Es installiert exakt den Ordner, den auch HACS installieren würde, wenn es - könnte - dieselbe Prüfung, ohne die HACS-Voraussetzung. SICHERHEIT GEGENÜBER DER BESTEHENDEN HA-INSTALLATION ----------------------------------------------------