name: Update Arch Repository on: push: paths: - 'x86_64/*.pkg.tar.zst' workflow_dispatch: jobs: update-db: runs-on: ubuntu-latest container: archlinux:latest steps: - name: Checkout code uses: actions/checkout@v4 with: fetch-depth: 0 - name: Install Dependencies run: | pacman -Sy --noconfirm pacman git - name: Update Repository Database run: | # Use the environment variable to trust the directory git config --global --add safe.directory "$GITHUB_WORKSPACE" cd x86_64 if ls *.pkg.tar.zst 1> /dev/null 2>&1; then echo "Updating database..." repo-add hyprarch-repo.db.tar.gz *.pkg.tar.zst # Break symlinks for GitHub Pages compatibility rm -f hyprarch-repo.db hyprarch-repo.files cp hyprarch-repo.db.tar.gz hyprarch-repo.db cp hyprarch-repo.files.tar.gz hyprarch-repo.files else echo "No packages found in x86_64/." exit 1 fi - name: Commit and Push changes run: | # Re-verify safe directory for this specific shell step git config --global --add safe.directory "$GITHUB_WORKSPACE" git config --global user.name "github-actions[bot]" git config --global user.email "github-actions[bot]@users.noreply.github.com" git add x86_64/ if ! git diff-index --quiet HEAD; then git commit -m "Automated database update" git push else echo "Nothing to commit." fi