name: Release Standalone Builder on: release: types: [published] jobs: build: runs-on: local steps: - name: Checkout repository uses: actions/checkout@v4 - name: Build standalone executable run: | chmod +x tools/build-standalone.sh ./tools/build-standalone.sh - name: Setup Go uses: actions/setup-go@v5 with: go-version: '1.21' - name: Upload Release Asset uses: https://gitea.com/actions/release-action@main with: files: |- kewt api_key: '${{secrets.GITEA_TOKEN}}' - name: Push to GitHub Release run: | TAG="${GITHUB_REF#refs/tags/}" # Create the release on GitHub curl -sL -X POST \ -H "Authorization: token ${{ secrets.GH_RELEASE_TOKEN }}" \ -H "Accept: application/vnd.github+json" \ "https://api.github.com/repos/n0va-bot/kewt/releases" \ -d "{\"tag_name\":\"${TAG}\",\"name\":\"${TAG}\",\"draft\":false,\"prerelease\":false}" || true # Get the release ID RELEASE_ID=$(curl -sL \ -H "Authorization: token ${{ secrets.GH_RELEASE_TOKEN }}" \ -H "Accept: application/vnd.github+json" \ "https://api.github.com/repos/n0va-bot/kewt/releases/tags/${TAG}" | jq -r '.id') # Upload the asset curl -sL -X POST \ -H "Authorization: token ${{ secrets.GH_RELEASE_TOKEN }}" \ -H "Content-Type: application/octet-stream" \ "https://uploads.github.com/repos/n0va-bot/kewt/releases/${RELEASE_ID}/assets?name=kewt" \ --data-binary @kewt publish-aur: runs-on: local needs: build steps: - name: Checkout repository uses: actions/checkout@v4 - name: Setup Arch Linux environment run: | sudo apt-get update sudo apt-get install -y pacman-package-manager curl jq || true - name: Render PKGBUILD and SRCINFO run: | # Get latest release version VERSION=${GITHUB_REF#refs/tags/v} VERSION=${VERSION#refs/tags/} # Download the asset curl -sL -o kewt https://git.krzak.org/N0VA/kewt/releases/download/v${VERSION}/kewt # Calculate checksum CHECKSUM=$(sha256sum kewt | awk '{print $1}') # Render PKGBUILD mkdir -p aur-work sed -e "s/VERSION_PLACEHOLDER/${VERSION}/g" \ -e "s/SHA256SUM_PLACEHOLDER/${CHECKSUM}/g" \ packaging/AUR/PKGBUILD.template > aur-work/PKGBUILD cd aur-work docker run --rm -v $(pwd):/pkg archlinux:base-devel bash -c "useradd builduser -m && chown -R builduser:builduser /pkg && sudo -u builduser bash -c 'cd /pkg && makepkg --printsrcinfo > .SRCINFO'" - name: Publish to AUR uses: KSXGitHub/github-actions-deploy-aur@v3.0.1 with: pkgname: kewt-bin pkgbuild: ./aur-work/PKGBUILD commit_username: ${{ github.actor }} commit_email: ${{ github.actor }}@users.noreply.github.com ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }} commit_message: "Update kewt-bin to ${{ github.ref_name }}"