name: Upload to AUR on: release: types: [published] jobs: build: runs-on: ubuntu-latest steps: - name: Check tag aka check release type id: checktag run: | if [[ "${{ github.ref }}" == *"dev"* ]]; then echo "Skip the workflow as the tag contains 'dev'" echo "::set-output name=skip::true" else echo "Continue the workflow" echo "::set-output name=skip::false" fi shell: bash - name: Extract tag name id: get_version run: echo ::set-output name=TAG_VERSION::${{ github.event.release.tag_name }} - name: Extra tag name without v id: get_version_without_v run: echo ::set-output name=TAG_VERSION_WITHOUT_V::$(echo "${{ github.event.release.tag_name }}" | sed 's/^v//') - name: Extract package_file_name id: get_package_file_name run: echo ::set-output name=PACKAGE_FILE_NAME::siyuan-${{ steps.get_version_without_v.outputs.TAG_VERSION_WITHOUT_V }}-linux.AppImage - name: Create PKGBUILD run: | cat << EOF >> PKGBUILD # maintainer: zxkmm (IHp4a21tQGhvdG1haWwuY29t) # auto running on siyuan official repo # PKGBUILD is modified from https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=siyuan-appimage # which is made by vvxxp8 pkgname=siyuan_stable pkgver=${{ steps.get_version.outputs.TAG_VERSION }} pkgrel=0 pkgdesc="auto upload to AUR when SiYuan stable release" arch=("x86_64") url="https://b3log.org/siyuan" license=("AGPL-3.0-only") _pkgname=${{ steps.get_package_file_name.outputs.PACKAGE_FILE_NAME }} noextract=(${{ steps.get_package_file_name.outputs.PACKAGE_FILE_NAME }}) options=("!strip" "!debug") depends=("fuse2") optdepends=('pandoc: docx export') source=("\${_pkgname}::https://github.com/siyuan-note/siyuan/releases/download/${{ steps.get_version.outputs.TAG_VERSION }}/${{ steps.get_package_file_name.outputs.PACKAGE_FILE_NAME }}") sha256sums=('SKIP') _installdir=/opt/appimages prepare() { chmod a+x \${_pkgname} ./\${_pkgname} --appimage-extract >/dev/null sed -i "s+AppRun+\${_installdir}/siyuan.AppImage+" "squashfs-root/siyuan.desktop" sed -i "s+^Icon=.*+Icon=siyuan_stable+" "squashfs-root/siyuan.desktop" } package() { install -Dm755 \${_pkgname} "\${pkgdir}/\${_installdir}/siyuan.AppImage" install -Dm644 "squashfs-root/resources/stage/icon.png" "\${pkgdir}/usr/share/icons/hicolor/512x512/apps/siyuan_stable.png" install -Dm644 "squashfs-root/siyuan.desktop" "\${pkgdir}/usr/share/applications/siyuan_stable.desktop" } EOF - name: Publish AUR package uses: KSXGitHub/github-actions-deploy-aur@v2.7.1 with: pkgname: siyuan_stable pkgbuild: ./PKGBUILD commit_username: ${{ secrets.AUR_USERNAME }} commit_email: ${{ secrets.AUR_EMAIL }} ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }} commit_message: Update AUR package ssh_keyscan_types: rsa,dsa,ecdsa,ed25519