Overview
Bun ships as a single, dependency-free executable. You can install it via script, package manager, or Docker across macOS, Linux, and Windows.After installation, verify with
bun --version and bun --revision.Installation
- macOS & Linux
- Windows
- Package Managers
- Docker
curlcurl -fsSL https://bun.com/install | bash
Linux users The
unzip package is required to install Bun. Use sudo apt install unzip to install the unzip package. Kernel version 5.6 or higher is strongly recommended, but the minimum is 5.1. Use uname -r to check Kernel version.PowerShellpowershell -c "irm bun.sh/install.ps1|iex"
Bun requires Windows 10 version 1809 or later.
npmHomebrewScoopnpm install -g bun # the last `npm` command you'll ever need
Bun provides a Docker image that supports both Linux x64 and arm64.
docker pull oven/bun docker run --rm --init --ulimit memlock=-1:-1 oven/bun
Image Variants
There are also image variants for different operating systems:docker pull oven/bun:debian docker pull oven/bun:slim docker pull oven/bun:distroless docker pull oven/bun:alpine
bun --version # Output: 1.x.y # See the precise commit of `oven-sh/bun` that you're using bun --revision # Output: 1.x.y+b7982ac13189
If you’ve installed Bun but are seeing a
command not found error, you may have to manually add the installation directory (~/.bun/bin) to your PATH.
Add Bun to your PATH
Add Bun to your PATH
- macOS & Linux
- Windows
1
Determine which shell you're using
echo $SHELL # /bin/zsh or /bin/bash or /bin/fish
2
Open your shell configuration file
- For bash:
~/.bashrc - For zsh:
~/.zshrc - For fish:
~/.config/fish/config.fish
3
Add the Bun directory to PATH
Add this line to your configuration file:
export BUN_INSTALL="$HOME/.bun" export PATH="$BUN_INSTALL/bin:$PATH"
4
Reload your shell configuration
source ~/.bashrc # or ~/.zshrc
1
Determine if the bun binary is properly installed
& "$env:USERPROFILE\.bun\bin\bun" --versionIf the command runs successfully but
bun --version is not recognized, it means that bun is not in your system’s PATH. To fix this, open a Powershell terminal and run the following command:[System.Environment]::SetEnvironmentVariable(
"Path",
[System.Environment]::GetEnvironmentVariable("Path", "User") + ";$env:USERPROFILE\.bun\bin",
[System.EnvironmentVariableTarget]::User
)
2
Restart your terminal
After running the command, restart your terminal and test with
bun --versionbun --version
Upgrading
Once installed, the binary can upgrade itself:bun upgrade
Homebrew users
To avoid conflicts with Homebrew, use
To avoid conflicts with Scoop, use
To avoid conflicts with Homebrew, use
brew upgrade bun instead.Scoop users To avoid conflicts with Scoop, use
scoop update bun instead.
Canary Builds
-> View canary build Bun automatically releases an (untested) canary build on every commit to main. To upgrade to the latest canary build:# Upgrade to latest canary bun upgrade --canary # Switch back to stable bun upgrade --stableThe canary build is useful for testing new features and bug fixes before they’re released in a stable build. To help the Bun team fix bugs faster, canary builds automatically upload crash reports to Bun’s team.
Installing Older Versions
Since Bun is a single binary, you can install older versions by re-running the installer script with a specific version.- Linux & macOS
- Windows
To install a specific version, pass the git tag to the install script:
curl -fsSL https://bun.com/install | bash -s "bun-v1.3.3"
On Windows, pass the version number to the PowerShell install script:
iex "& {$(irm https://bun.com/install.ps1)} -Version 1.3.3"
Direct Downloads
To download Bun binaries directly, visit the releases page on GitHub.Latest Version Downloads
Linux x64
Standard Linux x64 binary
Linux x64 Baseline
For older CPUs without AVX2
Windows x64
Standard Windows binary
Windows x64 Baseline
For older CPUs without AVX2
Windows ARM64
Windows on ARM (Snapdragon, etc.)
macOS ARM64
Apple Silicon (M1/M2/M3)
macOS x64
Intel Macs
Linux ARM64
ARM64 Linux systems
Musl Binaries
For distributions withoutglibc (Alpine Linux, Void Linux): If you encounter an error like
bun: /lib/x86_64-linux-gnu/libm.so.6: version GLIBC_2.29 not found, try using the musl binary. Bun’s install script automatically chooses the correct binary for your system.CPU Requirements
Bun has specific CPU requirements based on the binary you’re using:- Standard Builds
- Baseline Builds
x64 binaries target the Haswell CPU architecture (AVX and AVX2 instructions required)
| Platform | Intel Requirement | AMD Requirement |
|---|---|---|
| x64 | Haswell (4th gen Core) or newer | Excavator or newer |
x64-baseline binaries target the Nehalem architecture for older CPUs
| Platform | Intel Requirement | AMD Requirement |
|---|---|---|
| x64-baseline | Nehalem (1st gen Core) or newer | Bulldozer or newer |
Baseline builds are slower than regular builds. Use them only if you encounter an “Illegal Instruction” error.
Bun does not support CPUs older than the baseline target, which mandates the SSE4.2 extension. macOS requires version 13.0 or later.
Uninstall
To remove Bun from your system:- macOS & Linux
- Windows
- Package Managers
rm -rf ~/.bun
powershell -c ~\.bun\uninstall.ps1
npmHomebrewScoopnpm uninstall -g bun