Skip to content

ASM 0.4.0

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 01 Nov 19:08
Immutable release. Only release title and notes can be modified.
1dbe731

ASM 0.4.0

This candidate adds a native Apple Silicon macOS CLI.
Publication requires the protected checks, native qualification, and verified release-workflow provenance.
Published 0.3.0 artifacts remain unchanged.

Host contract

Host CLI artifact Native project target
Linux x86-64 asm-0.4.0-x86_64-linux x86_64-linux
Linux ARM64 asm-0.4.0-aarch64-linux aarch64-linux
Apple Silicon, macOS 15 or later asm-0.4.0-aarch64-macos aarch64-macos

The macOS command is native arm64 assembly linked with libSystem.
It does not execute a Linux binary or use Rosetta.
Intel macOS remains unsupported.

Installation and update

After publication and the checked catalog update, the single installer selects the exact operating system and ISA.
The command remains:

curl -qfsS -m120 https://asm.build/install.sh | sh

On macOS, install GitHub CLI 2.93.0 or later at /opt/homebrew/bin/gh first.
The bootstrap uses macOS system tools, including Perl for bounded verifier execution.
It does not require GNU Coreutils, administrator access, or a GitHub login.
Project builds require Apple's Xcode Command Line Tools.

Installation and self-update require a protected local APFS path with ownership enabled.
ACL allow entries are refused; normal deny-only home ACLs remain supported.
The updater compares the executing vnode and destination before atomic replacement.
It preserves installed bytes after failed downloads, integrity checks, attestations, or file checks.

The macOS feed is /registry/v1/index-macos.tsv.
The existing Linux feed omits macOS rows so released 0.3.0 clients can still select their next update.
Both feeds retain the existing limits, including absent signed expiry and rollback protection.

Evidence and limits

Native CI builds the macOS CLI twice from the same recorded commit.
It requires identical bytes and successful native command and hostile-input tests.
Release publication includes those final bytes in the required GitHub provenance attestation.
The release job verifies artifact size, digest, workflow, repository identity, source, signer, and hosted-runner policy.

The Mach-O code signature is ad-hoc.
Publisher authentication comes from the separately verified GitHub release provenance.
Developer ID signing and Apple notarization are not provided.
Do not disable Gatekeeper as an installation step.

Tests using local transport and verifier fixtures do not claim Sigstore cryptographic verification.
The release workflow performs that separate verification before publication.
See the macOS qualification contract and update security contract.