Install Noir
Homebrew (macOS and Linux)
The easiest option. Noir has an official Homebrew formula, so brew upgrade keeps it up to date too.
brew install noir
Snapcraft (Linux)
Snap packages work across most Linux distros and auto-update in the background.
sudo snap install noir
Docker
Handy when you don't want to install anything on the host, or need Noir inside a CI/CD pipeline.
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:
nix profile add 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.
-
Download the archive for your platform (e.g.,
noir-linux-x86_64.tar.gzornoir-macos-universal.tar.gz). -
Extract:
tar xzf noir-*.tar.gz -
Move to a directory on your
PATH:sudo mv noir /usr/local/bin/ -
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.
-
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:
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. Install with your preferred AUR helper:
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.
-
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" -
Verify:
noir --version
Alpine Package (.apk)
Alpine Linux users can use the .apk package from GitHub Releases. Both x86_64 and aarch64 are provided.
-
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:
sudo apk add --allow-untrusted "noir-${VERSION}-x86_64.apk" -
Verify:
noir --version
Build from Source
For custom builds or contributing back to the project.
-
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.
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