No description
  • HTML 41%
  • CSS 37.2%
  • Shell 17.2%
  • JavaScript 4.6%
Find a file
Kevin Heyer ee3474b2a9
All checks were successful
/ site (push) Successful in 45s
Website: Original-Logos der Apps (selfh.st/icons, homelab-svg-assets) mit Quellenangabe, Plattform Docker
- generate.sh lädt das Logo beim Bauen (Feld "icon" in iac.json für abweichende Namen)
- Plattform-Logos (LXC, VM, Docker, Proxmox, Debian) in assets/logos/
- Docker: Reiter, Filter und Kurz-URL /<app>/compose.yaml, sobald eine App es unterstützt

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 16:32:42 +02:00
.forgejo/workflows CI: auch bei Zeitplan-Läufen veröffentlichen 2026-10-08 14:15:21 +02:00
assets Website: Original-Logos der Apps (selfh.st/icons, homelab-svg-assets) mit Quellenangabe, Plattform Docker 2026-10-08 16:32:42 +02:00
content Website: neues Design – Einstieg mit Terminal, Filter, App-Seite mit Reitern und Seitenleiste 2026-10-08 14:26:55 +02:00
layouts Website: Original-Logos der Apps (selfh.st/icons, homelab-svg-assets) mit Quellenangabe, Plattform Docker 2026-10-08 16:32:42 +02:00
tools Website: Original-Logos der Apps (selfh.st/icons, homelab-svg-assets) mit Quellenangabe, Plattform Docker 2026-10-08 16:32:42 +02:00
.gitignore Website: Original-Logos der Apps (selfh.st/icons, homelab-svg-assets) mit Quellenangabe, Plattform Docker 2026-10-08 16:32:42 +02:00
hugo.toml Website: Original-Logos der Apps (selfh.st/icons, homelab-svg-assets) mit Quellenangabe, Plattform Docker 2026-10-08 16:32:42 +02:00
README.md Website: Original-Logos der Apps (selfh.st/icons, homelab-svg-assets) mit Quellenangabe, Plattform Docker 2026-10-08 16:32:42 +02:00

iac-website

Quelle für https://iac.heyer.systems – Übersicht aller iac-Apps und kurze URLs für die Einzeiler. Hugo, ohne Theme-Abhängigkeiten.

Ablauf

  1. tools/generate.sh liest alle öffentlichen Repos iac-* der Organisation, die eine iac.json haben (Repos ohne iac.json – z. B. iac-core und dieses Repo – erscheinen nicht; "hidden": true in der iac.json blendet eine App aus). Daraus entstehen content/apps/<name>.md, assets/apps/<name>.svg|png (Logo) und nginx/redirects.conf.
  2. hugo baut die Seite nach public/.
  3. CI (.forgejo/workflows/site.yml, stündlich und bei Push) packt public/ und nginx/ als site.tar.gz und veröffentlicht es als Paket iac-website – nur wenn sich der Inhalt geändert hat.
  4. Der Webserver (ein iac-nginx-Gast) holt es selbst ab: iac-nginx-sites add iac https://git.heyer.systems/api/packages/iac/generic/iac-website iac.heyer.systems default

Kurze URLs (nginx/redirects.conf)

URL Ziel
/<app> App-Seite
/<app>/ct.sh, /<app>/vm.sh, /<app>/adopt.sh, /<app>/compose.yaml Dateien im Repo der App (Branch main)
/<app>/image/latest, /<app>/image/SHA256SUMS aktuelles VM-Image in der Paket-Registry
/<app>/image/<version>/<datei> bestimmte Image-Version
/src/<repo>/<ref>.tar.gz Quellarchiv eines Repos (für update)

Logos

Die App-Seiten zeigen das Original-Logo der Software. tools/generate.sh lädt es beim Bauen (kein Einbinden fremder Server im Browser) – zuerst von selfh.st/icons (CC BY 4.0), dann von homelab-svg-assets (MIT). Gesucht wird nach dem App-Namen; abweichende Namen stehen in der iac.json:

"icon": "traefik"
"icon": { "selfhst": "traefik", "homelab": "traefik-proxy" }

Ohne Treffer erscheint der Anfangsbuchstabe. Die Quelle steht dezent unter der Seitenleiste der App und in der Fußzeile (nur tatsächlich genutzte Quellen, siehe [params.iconsources] in hugo.toml). Die Plattform-Logos (LXC, VM, Docker, Proxmox, Debian) liegen fest in assets/logos/.

Docker

Neben lxc und vm kann eine App "docker" in supports haben (ohne defaults). Liegt eine compose.yaml im Repo, zeigt die App-Seite einen Docker-Reiter mit Installation und Update, und /<app>/compose.yaml leitet dorthin weiter; sonst steht dort „noch nicht veröffentlicht“. Filter und Texte auf der Startseite nennen Docker erst, wenn mindestens eine App es unterstützt.

Lokal testen

apt install hugo jq
tools/generate.sh && hugo server