goreleaser / nfpm

nFPM is Not FPM - a simple deb, rpm, apk, ipk, and arch linux packager written in Go
https://nfpm.goreleaser.com/
MIT License
2.14k stars 156 forks source link

feat(files): accept `doc`, `licen[cs]e`, and `readme` with non-rpm #698

Open scop opened 1 year ago

scop commented 1 year ago

See commentary in code for elaboration.

This PR might be a bit incomplete: untested, no test coverage I think, and perhaps RPM should be dropped from the type names (with aliases for backwards compatibility) to make it clearer that files with them do get included with non-rpm packagers too.

Anyway, submitting here already in this form for discussion, before spending more time on it.

One example case is at https://github.com/aakso/ssh-inscribe/blob/7922b3e15f5fd9569c927f1464982c6f9e870f5b/.goreleaser.yaml#L69-L82. Note how the LICENSE and README.md entries need to be duplicated for deb and rpm; deb without the type info, rpm with it. It would get worse if there were more packager types enabled.

caarlos0 commented 1 year ago

hmm, yes, I think that if we do this, we need to type-alias et al to make it compatible with previous versions, or bump nfpm to v3