summary refs log tree commit diff
path: root/pkgs/tools/package-management/rpm/default.nix
diff options
context:
space:
mode:
authorAlexander Sosedkin <monk@unboiled.info>2022-07-16 01:22:28 +0200
committerAlexander Sosedkin <monk@unboiled.info>2022-07-16 01:36:32 +0200
commitb4a0bdcf924ee4ab02954493cfeca44b8edf8b17 (patch)
tree86e838f4aa300388bff33e12eab5862b305bb06e /pkgs/tools/package-management/rpm/default.nix
parent1fc760e9138308532b1e667a2cce191f4112586a (diff)
downloadnixpkgs-b4a0bdcf924ee4ab02954493cfeca44b8edf8b17.tar
nixpkgs-b4a0bdcf924ee4ab02954493cfeca44b8edf8b17.tar.gz
nixpkgs-b4a0bdcf924ee4ab02954493cfeca44b8edf8b17.tar.bz2
nixpkgs-b4a0bdcf924ee4ab02954493cfeca44b8edf8b17.tar.lz
nixpkgs-b4a0bdcf924ee4ab02954493cfeca44b8edf8b17.tar.xz
nixpkgs-b4a0bdcf924ee4ab02954493cfeca44b8edf8b17.tar.zst
nixpkgs-b4a0bdcf924ee4ab02954493cfeca44b8edf8b17.zip
rpm: compile --with-cap
Without that, RPM is unable to handle packages that require `rpmlib(FileCaps)`;
example error message trying to install Fedora 36 shadow-utils:
`rpmlib(FileCaps) <= 4.6.1-1 is needed by shadow-utils`.
Diffstat (limited to 'pkgs/tools/package-management/rpm/default.nix')
-rw-r--r--pkgs/tools/package-management/rpm/default.nix7
1 files changed, 4 insertions, 3 deletions
diff --git a/pkgs/tools/package-management/rpm/default.nix b/pkgs/tools/package-management/rpm/default.nix
index 3deda8d7c5d..dce0b2a9423 100644
--- a/pkgs/tools/package-management/rpm/default.nix
+++ b/pkgs/tools/package-management/rpm/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib
 , pkg-config, autoreconfHook
 , fetchurl, cpio, zlib, bzip2, file, elfutils, libbfd, libgcrypt, libarchive, nspr, nss, popt, db, xz, python, lua, llvmPackages
-, sqlite, zstd, fetchpatch
+, sqlite, zstd, fetchpatch, libcap
 }:
 
 stdenv.mkDerivation rec {
@@ -18,7 +18,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
   buildInputs = [ cpio zlib zstd bzip2 file libarchive libgcrypt nspr nss db xz python lua sqlite ]
-                ++ lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ];
+                ++ lib.optional stdenv.cc.isClang llvmPackages.openmp
+                ++ lib.optional stdenv.isLinux libcap;
 
   # rpm/rpmlib.h includes popt.h, and then the pkg-config file mentions these as linkage requirements
   propagatedBuildInputs = [ popt nss db bzip2 libarchive libbfd ]
@@ -35,7 +36,7 @@ stdenv.mkDerivation rec {
     "--enable-zstd"
     "--localstatedir=/var"
     "--sharedstatedir=/com"
-  ];
+  ] ++ lib.optional stdenv.isLinux "--with-cap";
 
   patches = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [ # Fix build for macOS aarch64
     (fetchpatch {