Install Trunk

To install trunk run:

curl https://get.trunk.io -fsSL | bash

To install without prompting:

curl https://get.trunk.io -fsSL | bash -s -- -y

Commit the Trunk Launcher directly into your repo

To allow your teammates to use trunk without installing anything, the launcher can be committed directly into your repo; Once committed, anyone working in your repository can use trunk without any additional installation. Fewer steps == less friction.

From your repo:

curl -LO https://trunk.io/releases/trunk
chmod +x trunk

With node package manager

Package ManagerCommand
npmnpm i -D @trunkio/launcher
pnpmpnpm add -D @trunkio/launcher
yarnyarn add -D @trunkio/launcher

With homebrew (macOS only)

brew install trunk-io

Uninstalling

Trunk has a very minimal installation, and therefore there's not much to uninstall. The two system paths we use are:

  • /usr/local/bin/trunk: the Trunk Launcher
  • ~/.cache/trunk: cached versions of the trunk cli, linters, formatters, etc.

To cleanly uninstall:

trunk deinit

To uninstall the Trunk VS Code extension, do so as you would any extension (docs).

Binary download (not recommended)

You can directly download the trunk binary. **We don't recommend this mode of operation because your ability to version the tool through trunk.yaml will not function when launching trunk directly from a downloaded binary. Regardless you can bypass the launcher support by downloading the prebuilt binaries here:

variableoptions
versionthe semver of the binary you want to download
platform'darwin', 'linux'
# for example https://trunk.io/releases/1.0.0/trunk-1.0.0-linux-x86_64.tar.gz
https://trunk.io/releases/${version}/trunk-${version}-${platform}-x86_64.tar.gz

Next Steps

Check out:

  • Trunk Merge: a merge queue to make merging code in github safer and easier
  • Trunk Check: an extendable superlinter with a builtin language server and preexisting issue detection
  • Trunk Actions: workflow automation for software engineers

As well as the other ways to use Trunk: