diff --git a/configure.ac b/configure.ac index 7d9151376..d89b996ba 100644 --- a/configure.ac +++ b/configure.ac @@ -66,7 +66,7 @@ DPKG_WITH_DIR([logdir], [${localstatedir}/log], [system logging directory [LOCALSTATEDIR/log]]) # Set default dpkg-deb values -DPKG_DEB_COMPRESSOR([xz]) +DPKG_DEB_COMPRESSOR([zstd]) DPKG_DEB_PROG_TAR # Checks for programs. diff --git a/debian/changelog b/debian/changelog index 8876a58d2..f3eb1f76b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +dpkg (1.20.9ubuntu2) impish; urgency=medium + + * build: Switch default dpkg-deb compression from xz to zstd. (LP: #1923845) + Keep compressing dpkg.deb with xz to help bootstrapping on non-Ubuntu + systems. + + -- Balint Reczey Mon, 14 Jun 2021 16:04:10 +0200 + dpkg (1.20.9ubuntu1) hirsute; urgency=medium * Merge with Debian; remaining changes: diff --git a/debian/rules b/debian/rules index 87c74bfee..a63583105 100755 --- a/debian/rules +++ b/debian/rules @@ -128,7 +128,10 @@ binary-arch: install dh_shlibdeps -a dh_gencontrol -a dh_md5sums -a - dh_builddeb -a + # Make debootstrap life easier on non-Debian based systems by + # compressing dpkg.deb with xz instead of zstd. + dh_builddeb -pdpkg -- -Zxz + dh_builddeb -a -Ndpkg # Put together the dpkg-dev package binary-indep: install diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides new file mode 100644 index 000000000..53cf5a5e1 --- /dev/null +++ b/debian/source/lintian-overrides @@ -0,0 +1,2 @@ +# this intends to help bootstrapping +dpkg source: debian-rules-should-not-use-custom-compression-settings diff --git a/m4/dpkg-build.m4 b/m4/dpkg-build.m4 index 1cc149a8e..997f8dbf0 100644 --- a/m4/dpkg-build.m4 +++ b/m4/dpkg-build.m4 @@ -78,7 +78,7 @@ AC_DEFUN([DPKG_DEB_COMPRESSOR], [ [change default dpkg-deb build compressor])], [with_dpkg_deb_compressor=$withval], [with_dpkg_deb_compressor=$1]) AS_CASE([$with_dpkg_deb_compressor], - [gzip|xz], [:], + [gzip|xz|zstd], [:], [AC_MSG_ERROR([unsupported default compressor $with_dpkg_deb_compressor])]) AC_DEFINE_UNQUOTED([DPKG_DEB_DEFAULT_COMPRESSOR], [COMPRESSOR_TYPE_]AS_TR_CPP(${with_dpkg_deb_compressor}), diff --git a/man/dpkg-deb.pod b/man/dpkg-deb.pod index 95c43d795..4403c272b 100644 --- a/man/dpkg-deb.pod +++ b/man/dpkg-deb.pod @@ -269,8 +269,8 @@ gzip (since dpkg 1.17.0) and B for xz. =item B<-Z>I Specify which compression type to use when building a package. -Allowed values are B, B (since dpkg 1.15.6), -and B (default is B). +Allowed values are B, B (since dpkg 1.15.6), B +(since dpkg 1.19.0.5ubuntu2) and B (default is B). =item B<--[no-]uniform-compression> @@ -278,8 +278,7 @@ Specify that the same compression parameters should be used for all archive members (i.e. B and B; since dpkg 1.17.6). Otherwise only the B member will use those parameters. The only supported -compression types allowed to be uniformly used are B, B -and B. +compression types allowed to be uniformly used are B, B, B and B. The B<--no-uniform-compression> option disables uniform compression (since dpkg 1.19.0). Uniform compression is the default (since dpkg 1.19.0).