name: Publish and Release
on:
push:
tags:
- "*"
jobs:
publish:
runs-on: ubuntu-latest
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
steps:
- uses: actions/checkout@v3
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install librust-gdk-dev
- name: Upload to Crates
uses: actions-rs/cargo@v1
with:
command: publish
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Download artefacts
uses: dawidd6/action-download-artifact@v2
with:
workflow_conclusion: success
workflow: build.yml
name: binaries
path: ./out
- name: Create sha256sum for scoop
run: sha256sum ./out/ferium-windows-msvc.zip | cut -d ' ' -f 1 > ./out/ferium-windows-msvc.zip.sha256
- name: MD Header
run: echo "MD_HEADER=$(echo ${{ github.ref_name }} | sed 's/\.//g')" >> $GITHUB_ENV
- name: Create release
uses: softprops/action-gh-release@v1
with:
files: ./out/*
name: Ferium ${{ github.ref_name }}
body: |
Compiled binaries for Ferium version `${{ github.ref_name }}` ([changelog](https://github.com/theRookieCoder/ferium/blob/main/CHANGELOG.md#${{ env.MD_HEADER }}))
The provided binaries are for:
- GNU Linux (x64 linux gnu) with GTK backend for GNOME
- GNU Linux (x64 linux gnu) without a GUI file dialog and libraries
- GNU Linux (x64 linux gnu) with XDG backend for XDG Desktop Portal
- macOS Apple Silicon (aarch64 darwin)
- macOS Intel (x64 darwin)
- GNU Windows, i.e. Cygwin/MinGW (x64 windows gnu)
- Windows (x64 windows msvc)
You can install these by downloading and unzipping the appropriate asset, and moving the executable to ~/bin or any other binary folder in your path.
- name: Update no-gui AUR package
uses: ATiltedTree/create-aur-release@v1
with:
package_name: ferium-bin
commit_username: "Ilesh Thiada"
commit_email: ileshkt@gmail.com
ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }}
- name: Update gui AUR package
uses: ATiltedTree/create-aur-release@v1
with:
package_name: ferium-gui-bin
commit_username: "Ilesh Thiada"
commit_email: ileshkt@gmail.com
ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }}