diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0bf1bc6..05b0acf 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -50,6 +50,9 @@ jobs: - name: Build source package run: | make dist + - name: Build binary + run: | + make binstall - name: Publish Release uses: softprops/action-gh-release@v2 with: @@ -57,3 +60,4 @@ jobs: decasify-${{ env.VERSION }}.zip decasify-${{ env.VERSION }}.tar.zst decasify-${{ env.VERSION }}.sha256.txt + decasify-${{ env.VERSION }}-x86_64-unknown-linux-gnu diff --git a/Cargo.toml b/Cargo.toml index ff26cd0..1bd4150 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -173,3 +173,6 @@ walm = "wasm" [package.metadata.typos.files] ignore-hidden = false extend-exclude = ["/.git"] + +[package.metadata.binstall] +pkg-fmt = "bin" diff --git a/Makefile.am b/Makefile.am index 1164955..f56af67 100644 --- a/Makefile.am +++ b/Makefile.am @@ -139,11 +139,14 @@ sile-package: $(SILEASSETS) check-local: busted pytest -PHONY_DEVELOPER_TARGETS = rockspecs srcrocks rocks install-luarock busted pytest release-preview reuse-lint +PHONY_DEVELOPER_TARGETS = rockspecs srcrocks rocks install-luarock busted pytest release-preview reuse-lint binstall .PHONY: $(PHONY_DEVELOPER_TARGETS) if DEVELOPER_MODE +binstall: @PACKAGE_NAME@$(EXEEXT) + cp $< $(<)-v$(VERSION)-$(CARGO_TARGET_TRIPLE) + lint: reuse-lint reuse-lint: diff --git a/README.md b/README.md index 6d7faa4..4a83df9 100644 --- a/README.md +++ b/README.md @@ -90,6 +90,15 @@ Of course the bare binary can also be installed directly with Cargo: $ cargo install --features cli decasify ``` +If you want to save the trouble of building, you can also install a pre-built binary: + +```console +$ cargo binstall decasify +``` + +Note the binary that installs can be directly downloaded by hand from the [latest release](https://github.com/alerque/decasify/releases/latest). +Set the executable bit and copy it to somewhere in your `$PATH` to use. + ## Use as a Rust crate In your `Cargo.toml` file.