From ee001efd34df8f60714bf62529859db5cf97b302 Mon Sep 17 00:00:00 2001 From: Marcelo Alcantara Date: Mon, 28 Sep 2026 00:24:12 +1000 Subject: [PATCH] Build every aarch64 package natively Native pilots of the heavy packages fit the arm64 runner: linux-aurora 30 minutes, strata 17, obs-studio 7, with over 90 GB disk free throughout. --- .github/workflows/build-pr.yml | 7 +++---- ci/README.md | 3 +-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build-pr.yml b/.github/workflows/build-pr.yml index a8e25ac..827bf69 100644 --- a/.github/workflows/build-pr.yml +++ b/.github/workflows/build-pr.yml @@ -162,10 +162,9 @@ jobs: if: needs.changes.outputs.count != '0' # The droplets are x86, so aarch64 there runs under QEMU, about 30x # slower: omarchy-mac-boot's check() took 2h47m of the 180 minutes. - # aarch64 builds natively on GitHub's arm64 runners (4 vCPU, 16 GB), - # except the packages listed here, which stay on the 32-vCPU droplets - # until a native build of each has been shown to fit. - runs-on: ${{ (matrix.arch == 'aarch64' && !contains(fromJSON('["linux-aurora","strata","obs-studio"]'), matrix.package)) && 'ubuntu-24.04-arm' || fromJSON('["self-hosted","omarchy-builder"]') }} + # GitHub's arm64 runners (4 vCPU, 16 GB; ~100 GB disk free in our pilots) + # build it natively in 11 minutes, and linux-aurora in 30 (72 under QEMU). + runs-on: ${{ matrix.arch == 'aarch64' && 'ubuntu-24.04-arm' || fromJSON('["self-hosted","omarchy-builder"]') }} timeout-minutes: 180 strategy: fail-fast: false diff --git a/ci/README.md b/ci/README.md index 4efadf3..6d62b05 100644 --- a/ci/README.md +++ b/ci/README.md @@ -7,8 +7,7 @@ signing on merge exactly as before. - `.github/workflows/build-pr.yml` — on a PR touching `pkgbuilds/**`, one job per changed package on runners labelled `omarchy-builder`. aarch64 jobs - run on GitHub's native `ubuntu-24.04-arm` runners instead, except the few - heavy packages the workflow keeps on the droplets. Uploads the unsigned + run on GitHub's native `ubuntu-24.04-arm` runners instead. Uploads the unsigned `.pkg.tar.zst` as a workflow artifact (7 days). - `runner-cloud-init.yaml` — Ubuntu 24.04 user-data: docker + buildx, the GitHub runner registered `--ephemeral`, runs one job, powers off.