diff --git a/.github/musl-build-setup.yml b/.github/musl-build-setup.yml index 778f8f11..e52a0a83 100644 --- a/.github/musl-build-setup.yml +++ b/.github/musl-build-setup.yml @@ -1,4 +1,5 @@ -- if: ${{ runner.os == 'Linux' }} +- name: Musl build setup + if: ${{ runner.os == 'Linux' }} run: | sudo apt-get install -y pkg-config libssl-dev musl musl-dev musl-tools rustup target add x86_64-unknown-linux-musl diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 49e24ef7..91ce0019 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,3 +1,5 @@ +# This file was autogenerated by cargo-dist: https://opensource.axo.dev/cargo-dist/ +# # Copyright 2022-2024, axodotdev # SPDX-License-Identifier: MIT or Apache-2.0 # @@ -61,7 +63,7 @@ jobs: # we specify bash to get pipefail; it guards against the `curl` command # failing. otherwise `sh` won't catch that `curl` returned non-0 shell: bash - run: "curl --proto '=https' --tlsv1.2 -LsSf https://github.com/axodotdev/cargo-dist/releases/download/v0.19.1/cargo-dist-installer.sh | sh" + run: "curl --proto '=https' --tlsv1.2 -LsSf https://github.com/axodotdev/cargo-dist/releases/download/v0.22.1/cargo-dist-installer.sh | sh" - name: Cache cargo-dist uses: actions/upload-artifact@v4 with: @@ -115,6 +117,11 @@ jobs: - uses: actions/checkout@v4 with: submodules: recursive + - name: "Musl build setup" + if: "${{ runner.os == 'Linux' }}" + run: | + sudo apt-get install -y pkg-config libssl-dev musl musl-dev musl-tools + rustup target add x86_64-unknown-linux-musl - name: Install cargo-dist run: ${{ matrix.install_dist }} # Get the dist-manifest @@ -299,6 +306,11 @@ jobs: name=$(echo "$filename" | sed "s/\.rb$//") version=$(echo "$release" | jq .app_version --raw-output) + export PATH="/home/linuxbrew/.linuxbrew/bin:$PATH" + brew update + # We avoid reformatting user-provided data such as the app description and homepage. + brew style --except-cops FormulaAudit/Homepage,FormulaAudit/Desc,FormulaAuditStrict --fix "Formula/${filename}" || true + git add "Formula/${filename}" git commit -m "${name} ${version}" done diff --git a/Cargo.toml b/Cargo.toml index 11aeb532..2abd5b97 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -9,7 +9,7 @@ tag-name = "v{{version}}" # Config for 'cargo dist' [workspace.metadata.dist] # The preferred cargo-dist version to use in CI (Cargo.toml SemVer syntax) -cargo-dist-version = "0.19.1" +cargo-dist-version = "0.22.1" # CI backends to support ci = "github" # The installers to generate for each app @@ -17,12 +17,7 @@ installers = ["shell", "powershell", "npm", "homebrew"] # A GitHub repo to push Homebrew formulas to tap = "aiken-lang/homebrew-tap" # Target platforms to build apps for (Rust target-triple syntax) -targets = [ - "aarch64-apple-darwin", - "x86_64-apple-darwin", - "x86_64-unknown-linux-musl", - "x86_64-pc-windows-msvc", -] +targets = ["aarch64-apple-darwin", "x86_64-apple-darwin", "x86_64-unknown-linux-musl", "x86_64-pc-windows-msvc"] # The archive format to use for windows builds (defaults .zip) windows-archive = ".tar.gz" # The archive format to use for non-windows builds (defaults .tar.xz) @@ -31,7 +26,7 @@ unix-archive = ".tar.gz" npm-scope = "@aiken-lang" # Publish jobs to run in CI publish-jobs = ["homebrew", "npm"] -# Publish jobs to run in CI +# Which actions to run on pull requests pr-run-mode = "plan" # Whether to install an updater program install-updater = false