Install Noir
Install OWASP Noir via Homebrew, Snapcraft, Docker, Nix, AUR, .deb, .rpm, .apk, binary download, or from source.
Noir is a single binary with no runtime dependencies. Homebrew is the quickest way for most users, but pick whatever fits your system.
Every method below installs the same noir binary, so you only need one. They're ordered roughly easiest-first. Find the section that matches your platform and package manager, and skip the rest.
Homebrew (macOS and Linux)
The easiest option. Noir has an official Homebrew formula.
To install:
brew install noir
To update:
brew upgrade noir
Snapcraft (Linux)
Snap packages work across most Linux distros and auto-update in the background.
To install:
sudo snap install noir
To update manually:
sudo snap refresh noir
Docker
Handy when you don't want to install anything on the host, or need Noir inside a CI/CD pipeline.
To pull/update the latest image:
docker pull ghcr.io/owasp-noir/noir:latest
Scan the current directory:
docker run --rm -v $(pwd):/tmp ghcr.io/owasp-noir/noir:latest -b /tmp
Image tags follow the OCI/Docker convention without the v prefix, e.g. :0.30.0, :0.30, and :latest. (Versions up to v0.29.1 used the :vX.Y.Z form; update any pinned references.) All available tags are on the GitHub Packages page.
Nix
If you use Nix, install via Flakes.
To install:
nix profile add github:owasp-noir/noir
To update:
nix profile upgrade github:owasp-noir/noir
nix --extra-experimental-features "nix-command flakes" profile add github:owasp-noir/noir
Or run once without installing:
nix run github:owasp-noir/noir -- -h
Direct Binary Download
No package manager? Grab a prebuilt binary from GitHub Releases. Linux and macOS builds are provided.
To install or update:
-
Download the binary for your platform (e.g.,
noir-v1.1.0-linux-x86_64on Linux, ornoir-v1.1.0-osx-arm64.tar.gzon macOS). -
Linux: make it executable and move it into your
PATH:chmod +x noir-v*-linux-* sudo mv noir-v*-linux-* /usr/local/bin/noir -
macOS: extract the tarball and keep the bundled
lib/directory next to the binary:# system-wide install sudo mkdir -p /opt/noir sudo tar xzf noir-v*-osx-*.tar.gz -C /opt/noir sudo ln -sf /opt/noir/noir /usr/local/bin/noirFor a user-local install without
sudo, extract under~/.local/noirinstead and add~/.local/noirto yourPATH.The macOS archive ships OpenSSL libraries in
lib/; do not move only thenoirbinary without them. -
Verify:
noir --version
Debian Package (.deb)
Debian/Ubuntu users can use the .deb package from GitHub Releases. It integrates with dpkg/apt like any other system package. Both amd64 and arm64 are provided.
To install or update:
-
Resolve the latest version and download:
VERSION=$(curl -s https://api.github.com/repos/owasp-noir/noir/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') wget "https://github.com/owasp-noir/noir/releases/download/v${VERSION}/noir_${VERSION}_amd64.deb" -
Install or upgrade:
sudo dpkg -i "noir_${VERSION}_amd64.deb" -
Fix missing dependencies if needed:
sudo apt-get -f install -
Verify:
noir --version
Arch Linux (AUR)
Noir is officially published on the AUR.
To install or update:
yay -S noir
RPM Package (.rpm)
Fedora, RHEL, CentOS, openSUSE, and other RPM-based distros can use the .rpm package from GitHub Releases. Both x86_64 and aarch64 are provided.
To install:
-
Resolve the latest version and download:
VERSION=$(curl -s https://api.github.com/repos/owasp-noir/noir/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') wget "https://github.com/owasp-noir/noir/releases/download/v${VERSION}/noir-${VERSION}.x86_64.rpm" -
Install:
sudo rpm -i "noir-${VERSION}.x86_64.rpm"Or with
dnf:sudo dnf install "./noir-${VERSION}.x86_64.rpm"
To update:
-
Download the latest version as shown in the install step.
-
Upgrade:
sudo rpm -U "noir-${VERSION}.x86_64.rpm"Or with
dnf:sudo dnf upgrade "./noir-${VERSION}.x86_64.rpm" -
Verify:
noir --version
Alpine Package (.apk)
Alpine Linux users can use the .apk package from GitHub Releases. Both x86_64 and aarch64 are provided.
To install or update:
-
Resolve the latest version and download:
VERSION=$(curl -s https://api.github.com/repos/owasp-noir/noir/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') wget "https://github.com/owasp-noir/noir/releases/download/v${VERSION}/noir-${VERSION}-x86_64.apk" -
Install or upgrade:
sudo apk add --upgrade --allow-untrusted "noir-${VERSION}-x86_64.apk" -
Verify:
noir --version
Build from Source
For custom builds or contributing back to the project.
To install:
-
Clone the repository:
git clone https://github.com/owasp-noir/noir cd noir -
Install dependencies:
shards install -
Build:
shards build --releaseThe compiled binary is at
./bin/noir.
To update:
-
Pull latest changes:
git pull -
Install dependencies and rebuild:
shards install shards build --release
Verify Your Installation
Whichever method you chose, confirm Noir is installed:
noir --version
If you see a version number, you're ready.
Next: Your First Scan