Skip to content
SPECIFICTION
Get listed

nFPM

nfpm.goreleaser.com

Free plan WebWindowsmacOSLinux

What it is

nFPM is a free Go tool for creating DEB, RPM, APK, IPK, Arch Linux, and MSIX software packages. It can be run from the command line or used as a Go library, and the project describes it as a single binary without external runtime dependencies. Package definitions use YAML and can specify metadata, files, dependencies, scripts, and format-specific overrides. Installation options include package managers, prebuilt archives, Docker, Go install, or building from source; documented package managers include Homebrew, Scoop, APT, Yum, Winget, and NPM. GoReleaser can use nFPM to generate and publish Linux packages and Windows MSIX packages. The project lists Linux, macOS, and Windows as target platforms and identifies its license as MIT. The install guide says release artifacts are checksummed and the checksum is signed with cosign; Docker images are also signed with cosign. MSIX support is described as experimental, and symlinks are skipped. The project presents nFPM as an option for users who want package creation without dependencies such as Ruby and tar.

Spec sheet

Purpose
nFPM is a Go tool for creating deb, rpm, apk, ipk, Arch Linux, and MSIX packages.Read 8 Oct 2026 · nfpm.goreleaser.com
Integrations
GoReleaser can use nFPM to generate and publish Linux packages and Windows MSIX packages.Read 8 Oct 2026 · goreleaser.com
Support
The repository directs users with questions or support needs to the GoReleaser community.Read 8 Oct 2026 · github.com
License
The repository identifies its license as MIT.Read 8 Oct 2026 · github.com
Artifact verification
The install guide says release artifacts are checksummed and the checksum is signed with cosign; Docker images are also signed with cosign.Read 8 Oct 2026 · nfpm.goreleaser.com
Configuration
Packages are defined with a YAML configuration file.Read 8 Oct 2026 · nfpm.goreleaser.com
Install options
The project documents installation through package managers, prebuilt archives, Docker, Go install, or building from source.Read 8 Oct 2026 · nfpm.goreleaser.com
Intended use
The project presents nFPM as an alternative for users who want a simple binary or library without dependencies such as Ruby and tar.Read 8 Oct 2026 · github.com
MSIX limitation
The GoReleaser documentation describes MSIX support as experimental and says symlinks are skipped.Read 8 Oct 2026 · goreleaser.com
Package contents
Configuration can specify package metadata, files, dependencies, scripts, and format-specific overrides.Read 8 Oct 2026 · nfpm.goreleaser.com
Runtime
The project describes nFPM as a single binary with no external runtime dependencies.Read 8 Oct 2026 · nfpm.goreleaser.com
Security policy
The GitHub repository links to a security policy.Read 8 Oct 2026 · github.com
Supported package managers
Documented installation options include Homebrew, Scoop, APT, Yum, Winget, and NPM.Read 8 Oct 2026 · nfpm.goreleaser.com
Ways to use
nFPM can be used as a command-line tool or as a Go library.Read 8 Oct 2026 · nfpm.goreleaser.com

Plans and prices

nFPM Free No paid plans or usage limits stated on the pages reviewed Read 8 Oct 2026 · github.com

Every nFPM plan and price →

Strong points and limits

Strong points

  • Free, with no paid plans or usage limits stated
  • Command-line tool and Go library
  • YAML can define metadata, files, dependencies, and scripts
  • Single binary without external runtime dependencies

Limits

  • MSIX support is experimental
  • Symlinks are skipped for MSIX
  • Support questions are directed to the GoReleaser community

Who it suits

nFPM suits developers who need to create software packages from a Go command-line tool or library. It may fit teams using GoReleaser to generate Linux or Windows MSIX packages.

Verdict

nFPM offers package creation through a Go tool or library with configurable YAML definitions. Treat MSIX as experimental and account for its symlink limitation if using that format.

Where Specifiction places it

Alternatives to nFPMAll alternatives →