magus v0.3.0 is out. See what's new
¶ View markdown source · ✎ Suggest an edit
2 min read

Download

magus ships as a single self-contained binary. No runtime, no package manager required.

Install

curl --proto '=https' --tlsv1.2 -sSf https://eli.gladman.cc/magus/install -o install.sh
less install.sh
sh install.sh

Read the script before you run it. It downloads the current release, checks the signature, and installs the binary, the man pages, and the mgs shorthand under ~/.local. --dry-run prints the whole plan without writing anything.

In a hurry, and willing to give a network response your shell? curl ... | sh works too:

curl --proto '=https' --tlsv1.2 -sSf https://eli.gladman.cc/magus/install | sh

Other ways

Route When
Linux manual install, amd64 or arm64
macOS manual install, Apple Silicon or Intel
Windows amd64
Container image run from an OCI image, or extract the binary from one
mise you already manage tool versions with mise
Build from source you want a local build, or a noselfupdate build

Next steps

  • Verify the release before first run. Every build ships an Ed25519-signed SHA256SUMS; on a first install, verify it by hand rather than with the binary you just downloaded.
  • Set up your shell for tab-completion (bash, zsh, fish, PowerShell) and the mgs shorthand.
  • Uninstall lists every path to delete: the binary, the man pages, the XDG state and config directories, and the workspace cache.

Update

magus self update fetches the latest release, verifies the signature against the key baked into your binary, and swaps in place. Full flag reference: magus self.

Flag Effect
--check Report availability without installing
--dry-run Fetch and verify but do not swap
--version v0.4.2 Pin to a specific tag
--force Allow downgrade or reinstall
--bin-dir <path> Install elsewhere instead of in place
-y / --yes Skip the confirmation prompt

Package-maintainer builds compiled with -tags noselfupdate disable this subcommand; fall back to a manual install.

Release notes are in the CHANGELOG.

downloadinstallreleaseself-updateed25519verifysigning
Last updated (f171d664)
Earlier changes on this page (4)

Full history ↗ · Blame source ↗

Glossary

Workspace

The magus root directory that owns a set of projects and shared config; the unit magus operates over. See workspace.

Cache

The content-addressed store magus consults before running a target, so unchanged work is skipped. See cache.

CI

An ordinary magusfile-defined target you compose yourself with magus\needs - magus does not hardcode its stages. Magus.RunCI treats it specially only in that it strips the rw charm, it is the anchor magus affected ci keys off, and a selected scope with no project declaring it is a load error rather than a silent no-op. See targets.

Conventions

Placeholders

Angle brackets mark a value you replace with your own - never type the brackets:

magus run <target>
magus completion <shell>    # e.g. bash, zsh, fish

<target>, <path>, <shell>, <name> and the like are stand-ins, not literal text.