set -euo pipefail
flavor=$1 fedora=$2 kernel=$3
mirror=${MIRROR:-forge.in.quineglobal.com/quine-global-labs/mirror}
ref="$mirror/ghcr.io/ublue-os/akmods:$flavor-$fedora-$kernel"
nvr=${kernel%.aarch64}
version=${nvr%%-*}
release=${nvr#*-}
koji="https://kojipkgs.fedoraproject.org/packages/kernel/$version/$release/aarch64"
work=$(mktemp -d)
trap 'rm -rf "$work"' EXIT
mkdir -p "$work/kernel-rpms" "$work/rpms/common" "$work/rpms/kmods"
for pkg in kernel kernel-core kernel-modules kernel-modules-core kernel-modules-extra; do
curl -fsSL --retry 5 -o "$work/kernel-rpms/$pkg-$nvr.aarch64.rpm" "$koji/$pkg-$nvr.aarch64.rpm"
done
ls -l "$work/kernel-rpms"
touch "$work/rpms/common/.keep" "$work/rpms/kmods/.keep"
ctr=$(buildah from --arch arm64 --os linux scratch)
trap 'buildah rm "$ctr" >/dev/null; rm -rf "$work"' EXIT
buildah copy "$ctr" "$work/kernel-rpms" /kernel-rpms
buildah copy "$ctr" "$work/rpms" /rpms
buildah config --arch arm64 --os linux --label "ostree.linux=$kernel" "$ctr"
buildah commit --rm "$ctr" "$ref"
trap 'rm -rf "$work"' EXIT
podman push --retry 5 "$ref"
echo "pushed $ref"