Files
bc250-console/scripts/backfill-releases.sh
T
ckochandClaude Fable 5 4e452acc7d
Build Bazzite BC-250 / Check Bazzite channel digests (push) Has been cancelled
Build Bazzite BC-250 / Build Custom Image (push) Has been cancelled
Build Bazzite BC-250 / Build Custom 40CU Image (push) Has been cancelled
Build Bazzite BC-250 / Save Bazzite channel digest cache (push) Has been cancelled
Build Bazzite BC-250 / Publish GitHub Release (push) Has been cancelled
BC-250 console image: custom GNOME recipe with remote admin
Based on 62fixolab/Latest-Bazzite-AMD-BC-250-Patched-Images @ 347fd4d.

Adds on top of the fork:
- recipes/bc250-console-gnome.yml: governor + gnome-remote-desktop +
  openssh-server, sshd enabled, hhd.service masked, no signing module
  (local build + ISO path)
- files/console/usr/bin/bc250-remote-setup: one-time on-box SSH/RDP setup
- files/console/usr/lib/bootc/kargs.d/50-bc250-ttm.toml: ttm memory kargs
- BUILD-CONSOLE.md: build -> ISO -> validation instructions

files/console/ is separate from files/system/ so the 40-CU unlock tooling
stays out of this stable 24-CU image.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 18:54:30 -04:00

77 lines
1.6 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
ROOT="$(git rev-parse --show-toplevel)"
PUBLISH=0
OWNER=""
REPO=""
usage() {
cat <<'EOF'
Usage:
scripts/backfill-releases.sh [--publish]
Creates local release-preview/*.md files for every date found in GHCR.
With --publish, creates or updates one GitHub Release per date.
EOF
}
while [[ $# -gt 0 ]]; do
case "$1" in
--publish)
PUBLISH=1
shift
;;
--owner)
OWNER="${2:?Missing value for --owner}"
shift 2
;;
--repo)
REPO="${2:?Missing value for --repo}"
shift 2
;;
-h|--help)
usage
exit 0
;;
*)
echo "Unknown argument: $1" >&2
usage >&2
exit 2
;;
esac
done
if [[ -z "$OWNER" || -z "$REPO" ]]; then
OWNER="${OWNER:-$(gh repo view --json owner --jq '.owner.login')}"
REPO="${REPO:-$(gh repo view --json name --jq '.name')}"
fi
dates=()
while IFS= read -r release_date; do
dates+=("$release_date")
done < <("$ROOT/scripts/generate-release-notes.py" --owner "$OWNER" --repo "$REPO" --list-dates)
for release_date in "${dates[@]}"; do
cmd=("$ROOT/scripts/publish-release.sh" --owner "$OWNER" --repo "$REPO" --date "$release_date")
package_commit="$(
"$ROOT/scripts/generate-release-notes.py" \
--owner "$OWNER" \
--repo "$REPO" \
--date "$release_date" \
--print-package-commit-tag
)"
if [[ -n "$package_commit" ]]; then
target_commit="$(git rev-parse --verify --quiet "${package_commit}^{commit}" || true)"
if [[ -n "$target_commit" ]]; then
cmd+=(--target "$target_commit")
fi
fi
if [[ "$PUBLISH" -eq 1 ]]; then
cmd+=(--publish)
fi
"${cmd[@]}"
done