From 4c9f04cbf0c8b02d78377f2369ae32b80b112d4b Mon Sep 17 00:00:00 2001 From: Rich Ercolani Date: Tue, 1 Jun 2021 05:35:36 -0400 Subject: [PATCH] Added uncompress requirement Having an old enough version of "file" and no "uncompress" program installed can cause rpmbuild as root to crash and mangle rpmdb. So let's add a build dependency for RPM-based systems. Closes: #12071 Closes: #12168 Signed-off-by: Rich Ercolani --- rpm/generic/zfs-dkms.spec.in | 7 +++++++ rpm/generic/zfs-kmod.spec.in | 7 +++++++ rpm/generic/zfs.spec.in | 5 +++++ 3 files changed, 19 insertions(+) diff --git a/rpm/generic/zfs-dkms.spec.in b/rpm/generic/zfs-dkms.spec.in index 0a6935516c6e..e0c410c680c2 100644 --- a/rpm/generic/zfs-dkms.spec.in +++ b/rpm/generic/zfs-dkms.spec.in @@ -32,6 +32,13 @@ Obsoletes: spl-dkms Provides: %{module}-kmod = %{version} AutoReqProv: no +%if 0%{?rhel}%{?fedora}%{?suse_version} +# We don't directly use it, but if this isn't installed, rpmbuild as root can +# crash+corrupt rpmdb +# See issue #12071 +BuildRequires: ncompress +%endif + %description This package contains the dkms ZFS kernel modules. diff --git a/rpm/generic/zfs-kmod.spec.in b/rpm/generic/zfs-kmod.spec.in index 6e4bfdcfedc0..1692be1a72e6 100644 --- a/rpm/generic/zfs-kmod.spec.in +++ b/rpm/generic/zfs-kmod.spec.in @@ -57,6 +57,13 @@ BuildRequires: gcc, make BuildRequires: elfutils-libelf-devel %endif +%if 0%{?rhel}%{?fedora}%{?suse_version} +# We don't directly use it, but if this isn't installed, rpmbuild as root can +# crash+corrupt rpmdb +# See issue #12071 +BuildRequires: ncompress +%endif + # The developments headers will conflict with the dkms packages. Conflicts: %{module}-dkms diff --git a/rpm/generic/zfs.spec.in b/rpm/generic/zfs.spec.in index b1750942f53f..bebf2ee2bf74 100644 --- a/rpm/generic/zfs.spec.in +++ b/rpm/generic/zfs.spec.in @@ -140,9 +140,14 @@ BuildRequires: libblkid-devel BuildRequires: libudev-devel BuildRequires: libattr-devel BuildRequires: openssl-devel +# We don't directly use it, but if this isn't installed, rpmbuild as root can +# crash+corrupt rpmdb +# See issue #12071 +BuildRequires: ncompress %if 0%{?fedora} >= 28 || 0%{?rhel} >= 8 || 0%{?centos} >= 8 BuildRequires: libtirpc-devel %endif + Requires: openssl %if 0%{?_systemd} BuildRequires: systemd