Portage advertises zstd support for compressing binary packages. See the manpage for make.conf regarding BINPKG_COMPRESS. Using BINPKG_COMPRESS="zstd" without app-arch/zstd installed results in: !!! BINPKG_COMPRESS unsupported zstd. Missing package: app-arch/zstd Portage should have a USE flag adding app-arch/zstd as an RDEPEND to pull it in.
Link to Github PR: https://github.com/gentoo/gentoo/pull/15520 gentoo-bot failed to find it. ???
We don't have use flags for gzip, bzip2, xz, etc. I don't think we need/want one for zstd.
gzip, bzip2, and xz-utils are each part of the @system set, so don't need USE flags.
According to the devmanual, a USE flag should not control runtime dependencies when the package does not link to it: https://devmanual.gentoo.org/general-concepts/use-flags/index.html Yes, the policy is sometimes violated, but we should have a good reason if we violate it. If we do it for zstd, then we also need to do it for lz4 if we're going to be consistent.
I don’t see a good reason for a USE flag. Maybe mention it in the documentation instead.
If we change the default to zstd as in bug 715108, and we make it conditional on USE=zstd, then there's an excuse to add the USE flag.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=73acbb1a7f235f3eeda6a289684e4f43ffdd7dd6 commit 73acbb1a7f235f3eeda6a289684e4f43ffdd7dd6 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2020-04-26 21:53:49 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2020-05-03 20:27:15 +0000 make.globals: add default BINPKG_COMPRESS setting (bug 715108) The ebuild will have a default enabled USE=zstd which changes the default to zstd here. Bug: https://bugs.gentoo.org/715108 Bug: https://bugs.gentoo.org/719456 Reviewed-by: Brian Dolbec <dolsen@gentoo.org> Signed-off-by: Zac Medico <zmedico@gentoo.org> cnf/make.globals | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a381b421b8283c73c2bd6e5d4e4a46cbe9a43a2 commit 6a381b421b8283c73c2bd6e5d4e4a46cbe9a43a2 Author: Ian Leonard <antonlacon@gmail.com> AuthorDate: 2020-04-25 20:32:57 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2020-05-05 23:56:43 +0000 sys-apps/portage: add zstd USE flag The zstd USE flag sets the default binary package compression to use zstd and adds it as a dependency. Masked on riscv until app-arch/zstd is keyworded. Closes: https://github.com/gentoo/gentoo/pull/15520 Bug: https://bugs.gentoo.org/715108 Bug: https://bugs.gentoo.org/719456 Signed-off-by: Ian Leonard <antonlacon@gmail.com> Signed-off-by: Zac Medico <zmedico@gentoo.org> profiles/arch/riscv/package.use.mask | 4 ++++ sys-apps/portage/portage-9999.ebuild | 9 ++++++++- 2 files changed, 12 insertions(+), 1 deletion(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e435225e72637d8383e06b0e0244c697e4d1423f commit e435225e72637d8383e06b0e0244c697e4d1423f Author: Ian Leonard <antonlacon@gmail.com> AuthorDate: 2020-05-07 15:51:38 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2020-05-07 16:12:27 +0000 sys-apps/portage: convert USE zstd to USE flag binpkg-zstd Bug: https://bugs.gentoo.org/715108 Bug: https://bugs.gentoo.org/719456 Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Ian Leonard <antonlacon@gmail.com> Signed-off-by: Zac Medico <zmedico@gentoo.org> profiles/arch/riscv/package.use.mask | 4 ++-- sys-apps/portage/metadata.xml | 1 + sys-apps/portage/portage-9999.ebuild | 6 +++--- 3 files changed, 6 insertions(+), 5 deletions(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=77960c6cf984530dbcab9fe507e170e7a2fe7dcf commit 77960c6cf984530dbcab9fe507e170e7a2fe7dcf Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2020-05-25 00:20:07 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2020-05-25 00:20:58 +0000 sys-apps/portage: Bump to version 2.3.100 #715108 Change default BINPKG_COMPRESS to zstd #719456 Add dependency on app-arch/zstd #720866 Do not set PKG_CONFIG_PATH #721402 Hostname UnicodeEncodeError surrogates not allowed #721516 Suppress precompressed QA notice for docompress -x Bug: https://bugs.gentoo.org/721152 Bug: https://bugs.gentoo.org/715108 Bug: https://bugs.gentoo.org/719456 Bug: https://bugs.gentoo.org/720866 Bug: https://bugs.gentoo.org/721402 Bug: https://bugs.gentoo.org/721516 Package-Manager: Portage-2.3.100, Repoman-2.3.22 Signed-off-by: Zac Medico <zmedico@gentoo.org> sys-apps/portage/Manifest | 1 + sys-apps/portage/portage-2.3.100.ebuild | 261 ++++++++++++++++++++++++++++++++ 2 files changed, 262 insertions(+)