* feat: allow to set a build date
defaults to $SOURCE_DATE_EPOCH
closes #744
closes #734
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* fix: rename to mtime
* docs: fix systemd note
closes #739
* fix: improve arch packager
* fix: arch test
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* fix: improve apk packager
* fix: improve deb special files
* fix: reuse keys func
* fix: deps
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
---------
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* fix(rpm): conventional file name should always have the release
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* test: fix acceptance test
---------
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* feat: Add support for remote signing keys
When used as a library, `nfpm.PackageSignature.SignFn` can be set as an
alternative to `KeyFile`. This allows arbitrary signing key
implementations, like a remote signing server.
Updates https://github.com/tailscale/tailscale/issues/1882
* Update rpm/rpm_test.go
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
---------
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* feat: update protonmail/crypto
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* chore: update
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* fix: actually run the centos tests
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* chore: improve test ordering
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* fix: signing rpms
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* feat: rpm.signature.format
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* test: improvements
* Revert "feat: rpm.signature.format"
This reverts commit 9c46a58fff.
* fix: revert unneeded changes
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* fix: use my fork
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* revert: some unneeded changes
* test: fix order
* chore: finally fixed
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
---------
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* feat: expand variables in platform field
Surprising that GOARCH was expanded, but GOOS was not.
More consistent to expand both of them the same way ?
Signed-off-by: Anders F Björklund <anders.f.bjorklund@gmail.com>
* fix: check platform for all packagers
Implement platform for deb packager, goes into Architecture.
Validate that the platform is "linux", for Alpine and Arch.
Signed-off-by: Anders F Björklund <anders.f.bjorklund@gmail.com>
Signed-off-by: Anders F Björklund <anders.f.bjorklund@gmail.com>
* fix: do not encourage using /usr/local/bin
Examples, tests and docs often refer to /usr/local/bin, which should
only be used for things compiled locally, which is not the case of
installed packages.
Changed that to /usr/bin, and also some usages of things like
/usr/something to /usr/share/something.
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix: complex test
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* feat: add support for Arch Linux packages
* test: Add initial tests
* test: Increase coverage by modifying example info
* test: Add test for ArchLinux.ConventionalFileName()
* docs: Return error if package name is invalid
* fix: Make empty name invalid
* fix: Add replaces field to .PKGINFO generator
* test: Add additional tests
* test: Test for added replaces field
* docs: Add more comments
* style: Run gofumpt
* fix: Handle errors as recommended by linter
* fix: Allow changing the pkgbase
* style: Resolve semgrep findings
* docs: Change docs to reflect new Arch Linux packager
* docs: Fix spelling mistake in comment
Co-authored-by: Dj Gilcrease <digitalxero@gmail.com>
* docs: use aspell to fix all spelling mistakes
* feat: Handle packaging formats with non-distinct file extensions as described in #546
* fix: Add newline to generated .INSTALL file
* fix: Take into account provided info for non-symlink files
* docs: Fix names for arch-specific scripts in documentation
* fix: Only consider files with the correct packager field
* fix: Use correct scripts field for post_remove script
* test: Implement archlinux acceptance tests
* test: Add archlinux to acceptance_test.go
* test: Add archlinux to github test matrix
* test: Use updated build.yml from main branch
* Fix ConventionalExtension() for apk
* fix: Take epoch value into account
* fix: Add arm5 and arm6 architectures
Co-authored-by: Dj Gilcrease <digitalxero@gmail.com>
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* feat: allow env expansion in conflicts, suggests, recommends, depends, provides, and replaces. Ensuring empty env vars get stripped to not cause issues
* added test for boolean dependencies for rpm, deb, and apk.
* fix: fork rpmpack to make it easier to add features and adapt it
* test: fix linter issues
* test: fix ruleguard issues
* refactor: remove usage of ioutil
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix(ci): actually use go 1.19
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
breaking change: removing changelog generation from nfpm... users will now have to provide a changelog file/data according to the format they are using
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix(apk): create tree of dir types
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: create tree of dir contents
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: fixes
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* Deprecate EmptyFolders and introduce dir contents.
* Handle explicit dirs with attributes correctly for Debs.
* Handle explicit dirs with attributes correctly for Apks.
* Sort contents by fields that are most relevant for the package.
* Make deprecation warning for empty_folders consistent.
* Name RPM directory tag more consistently.
* Fix deprecation notice in docs.
* Fix directory normalization for Debs and Apks.
* Revert Apk builder size in tests.
* Fix file sorting.
* Fix deprecated EmptyFolders handling in info.Validate.
* Fix Apk builder size in tests.
* Only stat content source when necessary.
* Allow src on dir content.
* Small addition to file_info docs.
* Fix typo in comments.
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* Remove content type fallthrough case.
* Fix typo in apk tests.
* Fix more typos.
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* feat: bump all deps
closes #368
closes #370
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: fmt
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: renamed
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: downgrade gopenpgp/v2 for now
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: merge issues
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* chore: trigger build
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: downgrade deps
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
With Googles anouncement that x/crypto/openpgp is depreciated https://github.com/golang/go/issues/44226 we have decided to switch to github.com/ProtonMail/gopenpgp & github.com/ProtonMail/go-crypto/openpgp
* feat: upgrade fileglob
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: tests
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: update
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: quotemeta opt
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: quotemeta
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: fmt
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* feat(ci): lint action, gocenter, tools
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: fmt
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: lint issues
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>
* fix: go generate
Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>