bos/.forgejo/workflows/calamares.yml
Breadway 5a14288025
All checks were successful
Mirror to GitHub / mirror (push) Successful in 4s
Build and publish calamares / calamares (push) Successful in 2m36s
Add in-house Calamares package (AUR-only upstream)
Calamares isn't in Arch's official repos, so BOS vendors the PKGBUILD and
publishes a built package to the [breadway] repo. All its deps are official
(kpmcore, qt6-*, yaml-cpp). Also drop the nonexistent calamares-qt6 from the
package list (calamares 3.4.x is already Qt6).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-13 23:39:39 +08:00

35 lines
1.4 KiB
YAML

name: Build and publish calamares
# Calamares is AUR-only (not in Arch's official repos), so BOS maintains an
# in-house PKGBUILD and publishes the built package to the [breadway] repo.
on:
push:
paths:
- 'packaging/calamares/**'
workflow_dispatch:
jobs:
calamares:
runs-on: [self-hosted, hestia]
container:
image: archlinux:latest
steps:
- name: Build and publish
env:
PUBLISH_TOKEN: ${{ secrets.REGISTRY_TOKEN }}
run: |
set -euo pipefail
pacman -Syu --noconfirm base-devel git cmake ninja \
extra-cmake-modules qt6-tools qt6-translations libglvnd \
kcoreaddons kpmcore libpwquality qt6-declarative qt6-svg yaml-cpp
useradd -m builder
git config --global --add safe.directory '*'
git clone --depth 1 "https://git.breadway.dev/${GITHUB_REPOSITORY}.git" /home/builder/src
chown -R builder:builder /home/builder/src
su builder -c "cd /home/builder/src/packaging/calamares && makepkg -f --noconfirm --nocheck"
PKG=$(find /home/builder/src/packaging/calamares -name '*.pkg.tar.zst' | head -1)
curl -fsS -X PUT \
-H "Authorization: token ${PUBLISH_TOKEN}" \
-H "Content-Type: application/octet-stream" \
--data-binary "@${PKG}" \
"https://git.breadway.dev/api/packages/Breadway/arch/os"