
Statische Hugo-Tracker-Website, die pro Distribution den Patch-Status, die festen Versionen und die Upstream-Commits für die Zapscape-KVM/x86-Shadow-MMU-Guest-to-Host-Escape dokumentiert.
Quelle für den Zapscape-Patch-Status-Tracker: eine einseitige Website, die festhält, welche Distributionen einen Fix für den KVM/x86 Guest-to-Host-Escape im Linux-Kernel ausgeliefert haben.
Alles zum Bug — CVE-IDs, betroffene und behobene Versionen, Upstream- Fix-Commits, Anerkennung für Entdeckung und Offenlegung sowie der aktuelle Patch-Status pro Distribution — gehört auf die Tracker-Seite, nicht in diese README:
site/content/_index.mdBearbeite diese Datei; alles andere in diesem Repo ist Build-Infrastruktur.
Nichts davon wird hier absichtlich wiederholt. Die Tracker-Seite wird überarbeitet, sobald CVEs vergeben werden und Distributionen Fixes ausliefern — bei den aktiv aktualisierten Trackern zweimal täglich durch den Auto-Update-Agent —, sodass jede in dieser README gepflegte Kopie still verrotten würde. Widerstehe der Versuchung, eine Zusammenfassung erneut hinzuzufügen.
Der Deployment-Plan und der aktuelle Stand der Einrichtung stehen in
WEBSITE.md.
Erfordert Hugo extended (≥ 0.146.0) und Go (damit Hugo Modules das PaperMod-Theme abrufen kann).
nix develop # dev shell: hugo, go, git, resvg
cd site
hugo server # lokale Vorschau unter http://localhost:1313/zapscape/
Wenn du direnv verwendest, einmal direnv allow
ausführen, und die Dev-Shell aktiviert sich automatisch, sobald du per cd
in das Repo wechselst.
Installiere Hugo extended ≥ 0.146.0 und Go ≥ 1.24 selbst, dann:
cd site
hugo server # http://localhost:1313/zapscape/
make build # lokaler Build nach site/public/
make dist # Build, dann rsync nach haig:/zapscape/
make banner # Social-Banner-SVG neu rastern → PNG (benötigt resvg + Roboto)
make dist führt zuerst make build aus. make banner ist nur nach dem
Bearbeiten von site/assets/zapscape-tracker.svg nötig; das gerenderte PNG
wird eingecheckt.
.
├── flake.nix # Nix dev environment (hugo, go, git, resvg + RPM tools)
├── .envrc # direnv hook → `use flake`
├── .gitignore
├── Makefile # `make build`, `make dist`, `make banner`
├── LICENSE # CC BY 4.0
├── README.md # this file
├── CLAUDE.md # project instructions for Claude Code
├── WEBSITE.md # publication plan / decisions log
├── scripts/ # auto-update agent: prompt + driver
├── systemd/ # user-level timer + service units
└── site/ # Hugo project
├── hugo.toml
├── content/
│ └── _index.md # the tracker (single page)
├── assets/css/extended/custom.css # PaperMod CSS overrides
├── assets/zapscape-tracker.svg # social-banner source (→ make banner)
├── static/zapscape-tracker.png # rendered OpenGraph banner (committed)
├── layouts/partials/ # PaperMod overrides (post_meta, extend_footer)
├── go.mod, go.sum # Hugo Modules — pulls PaperMod theme
└── … # standard Hugo skeleton
CC BY 4.0 — teilen und anpassen mit Namensnennung.