Initial commit

This commit is contained in:
2026-09-07 11:55:21 +02:00
commit d83087cbbd
20 changed files with 1963 additions and 0 deletions
+81
View File
@@ -0,0 +1,81 @@
# ---------------------------------------------------------------------------
# Gemeinsam fuer beide Spiegel
# ---------------------------------------------------------------------------
# Domain, unter der BEIDE Repos erreichbar sind:
# https://<MIRROR_DOMAIN>/flatpak/ und https://<MIRROR_DOMAIN>/dnf/
MIRROR_DOMAIN=repo.example.com
# Port, auf dem der gemeinsame nginx auf dem Host lauscht. Hinter einem
# vorgeschalteten Reverse Proxy z.B. auf 8080 legen.
HTTP_PORT=80
# Name/ID des Spiegels. Ergibt die Client-Dateien
# /dnf/<MIRROR_REPO_ID>.repo (dnf)
# /flatpak/<MIRROR_REPO_ID>.flatpakrepo (flatpak)
MIRROR_REPO_ID=company-mirror
# ---------------------------------------------------------------------------
# Signing-Key (fuer BEIDE Spiegel derselbe)
# ---------------------------------------------------------------------------
# Der Key wird EXTERN erzeugt und als GnuPG-Homedir in den Ordner ./gpg neben
# dieser Datei gelegt. Beide Container mounten genau diesen Ordner read-only
# nach /run/secrets/gpg und kopieren ihn beim Start in ihr eigenes GNUPGHOME.
# Siehe README.md, Abschnitt "Signing-Key bereitstellen".
#
# ID des Keys, mit dem signiert wird - am besten der volle Fingerprint:
# gpg --list-secret-keys --keyid-format=long --with-colons
# Der Key darf KEINE Passphrase haben, sonst kann unbeaufsichtigt nicht
# signiert werden (weder rpmsign noch flatpak build-sign).
GPG_KEY_ID=0000000000000000000000000000000000000000
# ---------------------------------------------------------------------------
# Git-Repo mit den Freigabelisten (fuer BEIDE Spiegel dasselbe Repo)
# ---------------------------------------------------------------------------
# Erwartet im Wurzelverzeichnis des Repos:
# flatpaks.yaml -> Freigabeliste des Flatpak-Spiegels
# packages.yaml -> Freigabeliste des DNF-Spiegels
# Vorlagen dafuer liegen in ./sources-repo-template/. Beide Container holen
# das Repo vor JEDEM Sync-Lauf neu, Aenderungen brauchen also keinen
# Container-Neubau/-Neustart.
SOURCES_GIT_URL=https://gitea.example.com/it/mirror-sources.git
SOURCES_GIT_REF=main
# Variante A - HTTPS mit Token (privates Repo). Das Token wird nie in die
# URL eingebettet, sondern per GIT_CONFIG_*-Header uebergeben.
SOURCES_GIT_USERNAME=
SOURCES_GIT_TOKEN=
# Variante B - SSH mit Deploy-Key: Keydatei in ./git-ssh/ ablegen (neben
# dieser Datei) und hier den Pfad IM CONTAINER eintragen. Leer lassen, wenn
# Variante A oder ein oeffentliches Repo genutzt wird.
SOURCES_GIT_SSH_KEY=
#SOURCES_GIT_SSH_KEY=/run/secrets/git-ssh/id_ed25519
# ---------------------------------------------------------------------------
# Nur Flatpak-Spiegel
# ---------------------------------------------------------------------------
# Wie oft flatpaks.yaml geprueft und neue Refs gepullt werden. 900 = 15 Min.
FLATPAK_SYNC_INTERVAL_SECONDS=900
FLATHUB_REMOTE_URL=https://dl.flathub.org/repo/
FLATHUB_GPG_URL=https://dl.flathub.org/repo/flathub.gpg
# ---------------------------------------------------------------------------
# Nur DNF-Spiegel
# ---------------------------------------------------------------------------
# Wie oft neu synchronisiert wird. 21600 = alle 6 Stunden.
DNF_SYNC_INTERVAL_SECONDS=21600
# AlmaLinux Release/Arch, gegen die auf "bereits vorhanden" geprueft wird.
# Muss zur Alma-Version des Images passen (siehe dnf-mirror/Dockerfile).
ALMA_RELEASEVER=10
ALMA_BASEARCH=x86_64
# Repo-IDs, die als "von Alma selbst aufloesbar" gelten. Pakete mit diesen
# Namen werden NICHT gespiegelt (Ausnahmen ueber force_include in
# packages.yaml).
ALMA_BASELINE_REPOIDS=baseos,appstream,extras,crb,epel
# Optional: gegen eigene Repo-Definitionen statt der im Image vorhandenen
# System-Repos pruefen (siehe dnf-mirror/alma-baseline.repo.d/).
ALMA_BASELINE_REPOSDIR=
#ALMA_BASELINE_REPOSDIR=/etc/mirror/alma-baseline.repo.d