1
1
Fork 0
mirror of https://github.com/goreleaser/nfpm synced 2024-05-13 15:46:15 +02:00
nfpm/www/docs/install.md

155 lines
3.1 KiB
Markdown
Raw Normal View History

# Install
You can install the pre-compiled binary (in several ways), use Docker
or compile from source.
Bellow you can find the steps for each of them.
## Install the pre-compiled binary
### homebrew tap
```sh
brew install goreleaser/tap/nfpm
```
### homebrew
```sh
brew install nfpm
```
!!! info
The [formula in homebrew-core](https://github.com/Homebrew/homebrew-core/blob/master/Formula/nfpm.rb) might be slightly outdated.
Use our homebrew tap to always get the latest updates.
### scoop
```sh
scoop bucket add goreleaser https://github.com/goreleaser/scoop-bucket.git
scoop install nfpm
```
### apt
```sh
echo 'deb [trusted=yes] https://repo.goreleaser.com/apt/ /' | sudo tee /etc/apt/sources.list.d/goreleaser.list
sudo apt update
sudo apt install nfpm
```
### yum
```sh
echo '[goreleaser]
name=GoReleaser
baseurl=https://repo.goreleaser.com/yum/
enabled=1
gpgcheck=0' | sudo tee /etc/yum.repos.d/goreleaser.repo
sudo yum install nfpm
```
### deb, apk and rpm packages
Download the `.deb`, `.rpm` or `.apk` from the [releases page][releases] and
install them with the appropriate tools.
### go install
```sh
2021-06-09 20:19:14 +02:00
go install github.com/goreleaser/nfpm/v2/cmd/nfpm@latest
```
### manually
Download the pre-compiled binaries from the [releases page][releases] and copy
them to the desired location.
## Verifying the artifacts
chore(ci): keyless signing (#413) * chore(ci): keyless signing Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: fix Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: ci Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: vercel build script Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * chore(Taskfile): Remove -s flag for gofumpt (#421) * chore(deps): bump sigstore/cosign-installer from 1.3.1 to 1.4.1 (#425) Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 1.3.1 to 1.4.1. - [Release notes](https://github.com/sigstore/cosign-installer/releases) - [Commits](https://github.com/sigstore/cosign-installer/compare/v1.3.1...v1.4.1) --- updated-dependencies: - dependency-name: sigstore/cosign-installer dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(deps): bump github.com/spf13/cobra from 1.2.1 to 1.3.0 (#426) Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.2.1 to 1.3.0. - [Release notes](https://github.com/spf13/cobra/releases) - [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md) - [Commits](https://github.com/spf13/cobra/compare/v1.2.1...v1.3.0) --- updated-dependencies: - dependency-name: github.com/spf13/cobra dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: fix links Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: update help after cobra upgrade Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: name Signed-off-by: Carlos A Becker <caarlos0@gmail.com> Co-authored-by: 4censord <49623362+4censord@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-15 19:30:49 +01:00
### binaries
All artifacts are checksummed, and the checksum is signed with [cosign][].
chore(ci): keyless signing (#413) * chore(ci): keyless signing Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: fix Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: ci Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: vercel build script Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * chore(Taskfile): Remove -s flag for gofumpt (#421) * chore(deps): bump sigstore/cosign-installer from 1.3.1 to 1.4.1 (#425) Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 1.3.1 to 1.4.1. - [Release notes](https://github.com/sigstore/cosign-installer/releases) - [Commits](https://github.com/sigstore/cosign-installer/compare/v1.3.1...v1.4.1) --- updated-dependencies: - dependency-name: sigstore/cosign-installer dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(deps): bump github.com/spf13/cobra from 1.2.1 to 1.3.0 (#426) Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.2.1 to 1.3.0. - [Release notes](https://github.com/spf13/cobra/releases) - [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md) - [Commits](https://github.com/spf13/cobra/compare/v1.2.1...v1.3.0) --- updated-dependencies: - dependency-name: github.com/spf13/cobra dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: fix links Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: update help after cobra upgrade Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: name Signed-off-by: Carlos A Becker <caarlos0@gmail.com> Co-authored-by: 4censord <49623362+4censord@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-15 19:30:49 +01:00
1. Download the files you want, the `checksums.txt` and `checksums.txt.sig`
files from the [releases][releases] page:
chore(ci): keyless signing (#413) * chore(ci): keyless signing Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: fix Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: ci Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: vercel build script Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * chore(Taskfile): Remove -s flag for gofumpt (#421) * chore(deps): bump sigstore/cosign-installer from 1.3.1 to 1.4.1 (#425) Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 1.3.1 to 1.4.1. - [Release notes](https://github.com/sigstore/cosign-installer/releases) - [Commits](https://github.com/sigstore/cosign-installer/compare/v1.3.1...v1.4.1) --- updated-dependencies: - dependency-name: sigstore/cosign-installer dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(deps): bump github.com/spf13/cobra from 1.2.1 to 1.3.0 (#426) Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.2.1 to 1.3.0. - [Release notes](https://github.com/spf13/cobra/releases) - [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md) - [Commits](https://github.com/spf13/cobra/compare/v1.2.1...v1.3.0) --- updated-dependencies: - dependency-name: github.com/spf13/cobra dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: fix links Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: update help after cobra upgrade Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: name Signed-off-by: Carlos A Becker <caarlos0@gmail.com> Co-authored-by: 4censord <49623362+4censord@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-15 19:30:49 +01:00
```sh
wget https://github.com/goreleaser/nfpm/releases/download/__VERSION__/checksums.txt
wget https://github.com/goreleaser/nfpm/releases/download/__VERSION__/checksums.txt.sig
```
1. Verify the signature:
```sh
chore(ci): keyless signing (#413) * chore(ci): keyless signing Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: fix Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: ci Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: vercel build script Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * chore(Taskfile): Remove -s flag for gofumpt (#421) * chore(deps): bump sigstore/cosign-installer from 1.3.1 to 1.4.1 (#425) Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 1.3.1 to 1.4.1. - [Release notes](https://github.com/sigstore/cosign-installer/releases) - [Commits](https://github.com/sigstore/cosign-installer/compare/v1.3.1...v1.4.1) --- updated-dependencies: - dependency-name: sigstore/cosign-installer dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(deps): bump github.com/spf13/cobra from 1.2.1 to 1.3.0 (#426) Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.2.1 to 1.3.0. - [Release notes](https://github.com/spf13/cobra/releases) - [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md) - [Commits](https://github.com/spf13/cobra/compare/v1.2.1...v1.3.0) --- updated-dependencies: - dependency-name: github.com/spf13/cobra dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: fix links Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: update help after cobra upgrade Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: name Signed-off-by: Carlos A Becker <caarlos0@gmail.com> Co-authored-by: 4censord <49623362+4censord@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-15 19:30:49 +01:00
COSIGN_EXPERIMENTAL=1 cosign verify-blob \
--signature checksums.txt.sig \
checksums.txt
```
1. If the signature is valid, you can then verify the SHA256 sums match with the
downloaded binary:
```sh
sha256sum --ignore-missing -c checksums.txt
```
chore(ci): keyless signing (#413) * chore(ci): keyless signing Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: fix Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: ci Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: vercel build script Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * chore(Taskfile): Remove -s flag for gofumpt (#421) * chore(deps): bump sigstore/cosign-installer from 1.3.1 to 1.4.1 (#425) Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 1.3.1 to 1.4.1. - [Release notes](https://github.com/sigstore/cosign-installer/releases) - [Commits](https://github.com/sigstore/cosign-installer/compare/v1.3.1...v1.4.1) --- updated-dependencies: - dependency-name: sigstore/cosign-installer dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(deps): bump github.com/spf13/cobra from 1.2.1 to 1.3.0 (#426) Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.2.1 to 1.3.0. - [Release notes](https://github.com/spf13/cobra/releases) - [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md) - [Commits](https://github.com/spf13/cobra/compare/v1.2.1...v1.3.0) --- updated-dependencies: - dependency-name: github.com/spf13/cobra dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: fix links Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: update help after cobra upgrade Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: name Signed-off-by: Carlos A Becker <caarlos0@gmail.com> Co-authored-by: 4censord <49623362+4censord@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-15 19:30:49 +01:00
### docker images
chore(ci): keyless signing (#413) * chore(ci): keyless signing Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: fix Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: ci Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: vercel build script Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * chore(Taskfile): Remove -s flag for gofumpt (#421) * chore(deps): bump sigstore/cosign-installer from 1.3.1 to 1.4.1 (#425) Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 1.3.1 to 1.4.1. - [Release notes](https://github.com/sigstore/cosign-installer/releases) - [Commits](https://github.com/sigstore/cosign-installer/compare/v1.3.1...v1.4.1) --- updated-dependencies: - dependency-name: sigstore/cosign-installer dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(deps): bump github.com/spf13/cobra from 1.2.1 to 1.3.0 (#426) Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.2.1 to 1.3.0. - [Release notes](https://github.com/spf13/cobra/releases) - [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md) - [Commits](https://github.com/spf13/cobra/compare/v1.2.1...v1.3.0) --- updated-dependencies: - dependency-name: github.com/spf13/cobra dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: fix links Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: update help after cobra upgrade Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: name Signed-off-by: Carlos A Becker <caarlos0@gmail.com> Co-authored-by: 4censord <49623362+4censord@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-15 19:30:49 +01:00
Our Docker images are signed with [cosign][].
chore(ci): keyless signing (#413) * chore(ci): keyless signing Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: fix Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: ci Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: vercel build script Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * chore(Taskfile): Remove -s flag for gofumpt (#421) * chore(deps): bump sigstore/cosign-installer from 1.3.1 to 1.4.1 (#425) Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 1.3.1 to 1.4.1. - [Release notes](https://github.com/sigstore/cosign-installer/releases) - [Commits](https://github.com/sigstore/cosign-installer/compare/v1.3.1...v1.4.1) --- updated-dependencies: - dependency-name: sigstore/cosign-installer dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(deps): bump github.com/spf13/cobra from 1.2.1 to 1.3.0 (#426) Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.2.1 to 1.3.0. - [Release notes](https://github.com/spf13/cobra/releases) - [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md) - [Commits](https://github.com/spf13/cobra/compare/v1.2.1...v1.3.0) --- updated-dependencies: - dependency-name: github.com/spf13/cobra dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: fix links Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: update help after cobra upgrade Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: name Signed-off-by: Carlos A Becker <caarlos0@gmail.com> Co-authored-by: 4censord <49623362+4censord@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-15 19:30:49 +01:00
Verify the signature:
```sh
chore(ci): keyless signing (#413) * chore(ci): keyless signing Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: fix Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: ci Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: vercel build script Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: improve wording Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * chore(Taskfile): Remove -s flag for gofumpt (#421) * chore(deps): bump sigstore/cosign-installer from 1.3.1 to 1.4.1 (#425) Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 1.3.1 to 1.4.1. - [Release notes](https://github.com/sigstore/cosign-installer/releases) - [Commits](https://github.com/sigstore/cosign-installer/compare/v1.3.1...v1.4.1) --- updated-dependencies: - dependency-name: sigstore/cosign-installer dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * feat(deps): bump github.com/spf13/cobra from 1.2.1 to 1.3.0 (#426) Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.2.1 to 1.3.0. - [Release notes](https://github.com/spf13/cobra/releases) - [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md) - [Commits](https://github.com/spf13/cobra/compare/v1.2.1...v1.3.0) --- updated-dependencies: - dependency-name: github.com/spf13/cobra dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * docs: fix links Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * docs: update help after cobra upgrade Signed-off-by: Carlos A Becker <caarlos0@gmail.com> * fix: name Signed-off-by: Carlos A Becker <caarlos0@gmail.com> Co-authored-by: 4censord <49623362+4censord@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-15 19:30:49 +01:00
COSIGN_EXPERIMENTAL=1 cosign verify goreleaser/nfpm
COSIGN_EXPERIMENTAL=1 cosign verify ghcr.io/goreleaser/nfpm
```
## Running with Docker
You can also use it within a Docker container. To do that, you'll need to
execute something more-or-less like the following:
```sh
2021-11-06 18:08:44 +01:00
docker run --rm -v $PWD:/tmp -w /tmp goreleaser/nfpm package \
--config /tmp/pkg/foo.yml \
--target /tmp \
--packager deb
```
## Packaging status
[![Packaging status](https://repology.org/badge/vertical-allrepos/nfpm.svg)](https://repology.org/project/nfpm/versions)
## Compiling from source
Here you have two options:
If you want to contribute to the project, please follow the steps on our
[contributing guide](/contributing).
If you just want to build from source for whatever reason, follow these steps:
**clone:**
```sh
git clone https://github.com/goreleaser/nfpm
cd nfpm
```
**get the dependencies:**
```sh
go mod tidy
```
**build:**
```sh
go build -o nfpm ./cmd/nfpm
```
**verify it works:**
```sh
./nfpm --version
```
[releases]: https://github.com/goreleaser/nfpm/releases