# yaml-language-server: $schema=https://goreleaser.com/static/schema-pro.json env: - GO111MODULE=on before: hooks: - go mod tidy - ./scripts/completions.sh - ./scripts/manpages.sh gomod: proxy: true builds: - main: ./cmd/nfpm env: - CGO_ENABLED=0 goos: - linux - darwin - windows goarch: - amd64 - arm64 - ppc64le - s390x mod_timestamp: "{{ .CommitTimestamp }}" flags: - -trimpath ldflags: - -s -w -X main.version={{ .Version }} -X main.commit={{ .Commit }} -X main.date={{ .CommitDate }} -X main.builtBy=goreleaser -X main.treeState={{ .IsGitDirty }} dockers: - image_templates: - "goreleaser/nfpm:{{ .Tag }}-amd64" - "ghcr.io/goreleaser/nfpm:{{ .Tag }}-amd64" dockerfile: Dockerfile use: buildx build_flag_templates: - "--pull" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.name={{.ProjectName}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/amd64" - image_templates: - "goreleaser/nfpm:{{ .Tag }}-arm64v8" - "ghcr.io/goreleaser/nfpm:{{ .Tag }}-arm64v8" dockerfile: Dockerfile use: buildx build_flag_templates: - "--pull" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.name={{.ProjectName}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Version}}" - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/arm64/v8" goarch: arm64 docker_manifests: - name_template: "goreleaser/nfpm:{{ .Tag }}" image_templates: - "goreleaser/nfpm:{{ .Tag }}-amd64" - "goreleaser/nfpm:{{ .Tag }}-arm64v8" - name_template: "ghcr.io/goreleaser/nfpm:{{ .Tag }}" image_templates: - "ghcr.io/goreleaser/nfpm:{{ .Tag }}-amd64" - "ghcr.io/goreleaser/nfpm:{{ .Tag }}-arm64v8" - name_template: "goreleaser/nfpm:latest" image_templates: - "goreleaser/nfpm:{{ .Tag }}-amd64" - "goreleaser/nfpm:{{ .Tag }}-arm64v8" - name_template: "ghcr.io/goreleaser/nfpm:latest" image_templates: - "ghcr.io/goreleaser/nfpm:{{ .Tag }}-amd64" - "ghcr.io/goreleaser/nfpm:{{ .Tag }}-arm64v8" archives: - name_template: >- {{ .ProjectName }}_ {{- .Version }}_ {{- title .Os }}_ {{- if eq .Arch "amd64" }}x86_64 {{- else if eq .Arch "386" }}i386 {{- else }}{{ .Arch }}{{ end }} format_overrides: - goos: windows format: zip files: - README.md - LICENSE.md - completions/* - manpages/* brews: - repository: owner: goreleaser name: homebrew-tap folder: Formula homepage: https://nfpm.goreleaser.com description: nFPM is a simple, 0-dependencies, deb, rpm and apk packager. license: MIT test: | system "#{bin}/nfpm -v" install: |- bin.install "nfpm" bash_completion.install "completions/nfpm.bash" => "nfpm" zsh_completion.install "completions/nfpm.zsh" => "_nfpm" fish_completion.install "completions/nfpm.fish" man1.install "manpages/nfpm.1.gz" scoops: - repository: owner: goreleaser name: scoop-bucket homepage: https://nfpm.goreleaser.com folder: bucket description: nFPM is a simple, 0-dependencies, deb, rpm and apk packager. license: MIT nix: - name: nfpm repository: owner: goreleaser name: nur homepage: https://nfpm.goreleaser.com description: nFPM is a simple, 0-dependencies, deb, rpm and apk packager. path: pkgs/nfpm/default.nix license: mit extra_install: |- installManPage ./manpages/nfpm.1.gz installShellCompletion ./completions/* winget: - name: nfpm publisher: goreleaser license: Copyright Becker Software LTDA copyright: Becker Software LTDA homepage: https://nfpm.goreleaser.com short_description: nFPM is a simple, 0-dependencies, deb, rpm and apk packager. repository: owner: goreleaser name: winget-pkgs branch: "nfpm-{{.Version}}" pull_request: enabled: true draft: false check_boxes: true base: owner: microsoft name: winget-pkgs branch: master nfpms: - file_name_template: "{{ .ConventionalFileName }}" homepage: https://nfpm.goreleaser.com description: |- Simple, 0-dependencies, deb, rpm and apk packager. nFPM (not FPM) is configurable via YAML and does not need any packaging software installed. maintainer: Carlos Alexandro Becker license: MIT vendor: GoReleaser formats: - apk - deb - rpm bindir: /usr/bin section: utils contents: - src: ./completions/nfpm.bash dst: /usr/share/bash-completion/completions/nfpm file_info: mode: 0644 - src: ./completions/nfpm.fish dst: /usr/share/fish/vendor_completions.d/nfpm.fish file_info: mode: 0644 - src: ./completions/nfpm.zsh dst: /usr/share/zsh/vendor-completions/_nfpm file_info: mode: 0644 - src: ./manpages/nfpm.1.gz dst: /usr/share/man/man1/nfpm.1.gz file_info: mode: 0644 - src: ./LICENSE.md dst: /usr/share/doc/nfpm/copyright file_info: mode: 0644 - src: .lintian-overrides dst: ./usr/share/lintian/overrides/nfpm packager: deb file_info: mode: 0644 aurs: - homepage: https://nfpm.goreleaser.com description: nFPM is a simple, 0-dependencies, deb, rpm and apk packager. maintainers: - "Fernandez Ludovic " - "Carlos Alexandro Becker " license: MIT private_key: "{{ .Env.AUR_KEY }}" git_url: "ssh://aur@aur.archlinux.org/nfpm-bin.git" package: |- # bin install -Dm755 "./nfpm" "${pkgdir}/usr/bin/nfpm" # license install -Dm644 "./LICENSE.md" "${pkgdir}/usr/share/licenses/nfpm/LICENSE" # completions mkdir -p "${pkgdir}/usr/share/bash-completion/completions/" mkdir -p "${pkgdir}/usr/share/zsh/site-functions/" mkdir -p "${pkgdir}/usr/share/fish/vendor_completions.d/" install -Dm644 "./completions/nfpm.bash" "${pkgdir}/usr/share/bash-completion/completions/nfpm" install -Dm644 "./completions/nfpm.zsh" "${pkgdir}/usr/share/zsh/site-functions/_nfpm" install -Dm644 "./completions/nfpm.fish" "${pkgdir}/usr/share/fish/vendor_completions.d/nfpm.fish" # man pages install -Dm644 "./manpages/nfpm.1.gz" "${pkgdir}/usr/share/man/man1/nfpm.1.gz" furies: - account: goreleaser sboms: - artifacts: archive signs: - cmd: cosign certificate: "${artifact}.pem" output: true artifacts: checksum args: - sign-blob - "--output-certificate=${certificate}" - "--output-signature=${signature}" - "${artifact}" - --yes docker_signs: - cmd: cosign artifacts: manifests output: true args: - "sign" - "${artifact}" - --yes changelog: sort: asc use: github filters: exclude: - "^test:" - "^chore" - "merge conflict" - Merge pull request - Merge remote-tracking branch - Merge branch - go mod tidy groups: - title: Dependency updates regexp: '^.*?(feat|fix|chore)\(deps\)!?:.+$' order: 300 - title: "New Features" regexp: '^.*?feat(\([[:word:]]+\))??!?:.+$' order: 100 - title: "Security updates" regexp: '^.*?sec(\([[:word:]]+\))??!?:.+$' order: 150 - title: "Bug fixes" regexp: '^.*?fix(\([[:word:]]+\))??!?:.+$' order: 200 - title: "Documentation updates" regexp: ^.*?doc(\([[:word:]]+\))??!?:.+$ order: 400 - title: "Build process updates" regexp: ^.*?(build|ci)(\([[:word:]]+\))??!?:.+$ order: 400 - title: Other work order: 9999 checksum: name_template: "checksums.txt" release: footer: | **Full Changelog**: https://github.com/goreleaser/nfpm/compare/{{ .PreviousTag }}...{{ .Tag }} ## Helping out This release is only possible thanks to **all** the support of **awesome people**! Want to be one of them? You can [sponsor](https://goreleaser.com/sponsors/) or [contribute with code](https://goreleaser.com/contributing). ## Where to go next? * nFPM is a satellite project from GoReleaser. [Check it out](https://goreleaser.com)! * Find examples and commented usage of all options in our [website](https://nfpm.goreleaser.com/). * Reach out on [Discord](https://discord.gg/RGEBtg8vQ6) and [Twitter](https://twitter.com/goreleaser)! GoReleaser logo milestones: - close: true announce: twitter: enabled: false message_template: "nFPM {{ .Tag }} was just released! See what's new: https://github.com/goreleaser/nfpm/releases/tag/{{ .Tag }}" discord: enabled: true message_template: "nFPM {{ .Tag }} is out! See what's new: https://github.com/goreleaser/nfpm/releases/tag/{{ .Tag }}"