Skip to content

Build Archlinux Packages #35

Build Archlinux Packages

Build Archlinux Packages #35

Workflow file for this run

name: Build Archlinux Packages
on:
workflow_dispatch: # allow manual trigger
jobs:
Build: # build packages
strategy:
matrix:
pkg: [
aseprite,
citra,
flyctl,
ladybird-git,
xenia-git
]
fail-fast: false # allow package build fails
runs-on: ubuntu-latest
container: archlinux:latest
steps:
- name: Update system base and expected provider depends
run: |
pacman -Syu --noconfirm
pacman -S --noconfirm base-devel git
pacman -S --noconfirm llvm sdl2 vulkan-intel
echo 'nobody ALL=(ALL:ALL) NOPASSWD: ALL' > /etc/sudoers.d/nobody
- name: Add Chaotic-AUR for additional depends
run: |
pacman-key --init
pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
pacman-key --lsign-key 3056513887B78AEB
pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst' 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
printf '[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist\n' >> /etc/pacman.conf
pacman -Syu --noconfirm
- name: Checkout repo
uses: actions/checkout@v4
- name: Bump submodules
run: |
git config --global --add safe.directory /__w/aurbuild/aurbuild
git submodule update --init --remote
- name: Build package
run: |
cd ${{ matrix.pkg }}
chmod a+rwx .
export MAKEFLAGS="--jobs=$(nproc)"
runuser -m -u nobody -- makepkg -s --noconfirm
- name: Upload to release
uses: ncipollo/release-action@v1
with:
allowUpdates: true
tag: "packages"
artifacts: "./*/*.zst"
token: ${{ secrets.GITHUB_TOKEN }}