name: Publish to AUR on: push: tags: - 'v*' workflow_dispatch: inputs: tag: description: 'Tag (v开头)' required: false type: string jobs: aur: runs-on: ubuntu-latest container: image: archlinux:latest steps: - name: Install dependencies run: pacman -Sy --noconfirm git openssh base-devel aurpublish - name: Set up SSH for AUR run: | mkdir -p ~/.ssh echo "${{ secrets.AUR_SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519 chmod 600 ~/.ssh/id_ed25519 chmod 700 ~/.ssh ssh-keyscan -t ed25519 aur.archlinux.org >> ~/.ssh/known_hosts chmod 644 ~/.ssh/known_hosts - name: Set git user run: | git config --global user.name "github-actions[bot]" git config --global user.email "github-actions[bot]@users.noreply.github.com" - name: Clone AUR repo run: | GIT_SSH_COMMAND="ssh -i ~/.ssh/id_ed25519 -o UserKnownHostsFile=~/.ssh/known_hosts" git clone ssh://aur@aur.archlinux.org/soon.git aur-push - name: Update PKGBUILD and .SRCINFO run: | cd aur-push if [ "${{ github.event_name }}" = "workflow_dispatch" ] && [ -n "${{ github.event.inputs.tag }}" ]; then TAG="${{ github.event.inputs.tag }}" else TAG="${GITHUB_REF##*/}" fi VERSION="${TAG#v}" sed -i "s/^pkgver=.*/pkgver=${VERSION}/" PKGBUILD makepkg --printsrcinfo > .SRCINFO - name: Publish to AUR with aurpublish run: | cd aur-push GIT_SSH_COMMAND="ssh -i ~/.ssh/id_ed25519 -o UserKnownHostsFile=~/.ssh/known_hosts" aurpublish soon