mmstick / cargo-deb

A cargo subcommand that generates Debian packages from information in Cargo.toml
615 stars 50 forks source link

Correct changelog naming per Debian policy. #137

Closed ximon18 closed 4 years ago

ximon18 commented 4 years ago

According to Lintian:

Each Debian package (which provides a /usr/share/doc/pkg directory) must install a Debian changelog file in /usr/share/doc/pkg/changelog.Debian.gz

A common error is to name the Debian changelog like an upstream changelog (/usr/share/doc/pkg/changelog.gz); therefore, > Lintian will apply further checks to such a file if it exists even after issuing this error.

Refer to Debian Policy Manual section 12.7 (Changelog files and release notes) for details.

The Debian Policy Manual says:

Packages that are not Debian-native must contain a compressed copy of the debian/changelog file from the Debian source tree in /usr/share/doc/package with the name changelog.Debian.gz.

If an upstream release notes file is available, containing a summary of changes between upstream releases intended for end users of the package and often called NEWS, it should be accessible as /usr/share/doc/package/NEWS.gz. An older practice of installing the upstream release notes as /usr/share/doc/package/changelog.gz is permitted but deprecated.

Without this naming change Lintian considers the deprecated name to be an error:

N: Using profile ubuntu/main.
N: Setting up lab in /tmp/temp-lintian-lab-tG6EY1DmS4 ...
N: Starting on group krill/0.7.3-plus-1bionic
N: Unpacking packages in group krill/0.7.3-plus-1bionic
N: ----
N: Processing binary package krill (version 0.7.3-plus-1bionic, arch amd64) ...
E: krill: debian-changelog-file-missing-or-wrong-name
kornelski commented 4 years ago

Thanks