Radish alpha
r
rad:z4D5UCArafTzTQpDZNQRuqswh3ury
Radicle desktop app
Radicle
Git
radicle-desktop .github workflows check-arch-package.yaml
on:
  pull_request:
    paths:
      - "arch/**"
  push:
    paths:
      - "arch/**"
  workflow_dispatch:

env:
  FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true

jobs:
  build-arch:
    runs-on: ubuntu-latest
    container:
      image: archlinux:base-devel
      options: --user root

    steps:
      - name: Install git
        run: pacman -Sy --noconfirm git

      - uses: actions/checkout@v6

      - name: Set up builder user
        run: |
          useradd -m builder
          echo 'builder ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/builder
          chown -R builder:builder "$GITHUB_WORKSPACE"

      - name: Cache cargo registry
        uses: actions/cache@v5
        with:
          path: /home/builder/.cargo/registry
          key: arch-cargo-${{ hashFiles('arch/radicle-desktop/PKGBUILD') }}
          restore-keys: arch-cargo-

      - name: Install radicle-bin AUR dependency
        run: |
          cd /home/builder
          git clone https://aur.archlinux.org/radicle-bin.git --depth=1
          chown -R builder:builder radicle-bin
          sudo -u builder makepkg --dir radicle-bin --install --syncdeps --noconfirm

      - name: Check .SRCINFO is up-to-date
        run: |
          cd arch/radicle-desktop
          sudo -u builder makepkg --printsrcinfo > .SRCINFO
          sudo -u builder git -C "$GITHUB_WORKSPACE" diff --exit-code arch/radicle-desktop/.SRCINFO

      - name: Build package
        run: |
          sudo -u builder env \
            CI=true \
            BUILDDIR=/home/builder/build \
            PKGDEST=/home/builder \
            SRCDEST=/home/builder \
            makepkg --dir "$GITHUB_WORKSPACE/arch/radicle-desktop" \
              --syncdeps --noconfirm --force