about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools/misc/man-db/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/tools/misc/man-db/default.nix')
-rw-r--r--nixpkgs/pkgs/tools/misc/man-db/default.nix35
1 files changed, 32 insertions, 3 deletions
diff --git a/nixpkgs/pkgs/tools/misc/man-db/default.nix b/nixpkgs/pkgs/tools/misc/man-db/default.nix
index 398984b8c534..b52628373594 100644
--- a/nixpkgs/pkgs/tools/misc/man-db/default.nix
+++ b/nixpkgs/pkgs/tools/misc/man-db/default.nix
@@ -1,6 +1,7 @@
 { buildPackages
 , db
 , fetchurl
+, fetchpatch
 , groff
 , gzip
 , lib
@@ -20,7 +21,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://savannah/man-db/man-db-${version}.tar.xz";
-    sha256 = "sha256-z/oe5Ol0vnhkbEZQjm3S8358WJqqspOMwQZPBY/vn40=";
+    hash = "sha256-z/oe5Ol0vnhkbEZQjm3S8358WJqqspOMwQZPBY/vn40=";
   };
 
   outputs = [ "out" "doc" ];
@@ -31,7 +32,35 @@ stdenv.mkDerivation rec {
   buildInputs = [ libpipeline db groff ]; # (Yes, 'groff' is both native and build input)
   nativeCheckInputs = [ libiconv /* for 'iconv' binary */ ];
 
-  patches = [ ./systemwide-man-db-conf.patch ];
+  patches = [
+    ./systemwide-man-db-conf.patch
+    # Remove the patches below when updating to the next man-db release.
+    # Patches addressing https://gitlab.com/man-db/man-db/-/issues/25 ...
+    (fetchpatch {
+      name = "update-warning-regex";
+      url = "https://gitlab.com/man-db/man-db/-/commit/b12ffb9df7.patch";
+      hash = "sha256-F+whRppaMZwgmGPKTXu2j1vZMNAm3vGNzNZcz9pg8Jc=";
+    })
+    (fetchpatch {
+      name = "fix-test-failures-when-iconv-not-available";
+      url = "https://gitlab.com/man-db/man-db/-/commit/26f46a60e5.patch";
+      hash = "sha256-W1a6GkYn4J3py7GLZc37xmQBQR18Xvcvj4fJoZ21+0k=";
+      # The following files are excluded from the patch as they fail to apply
+      # cleanly on the 2.11.2 sources and are deemed irrelevant for building man-db.
+      excludes = [ "NEWS.md" ];
+    })
+    # ... and https://gitlab.com/man-db/man-db/-/issues/26.
+    (fetchpatch {
+      name = "improve-lexgrog-portability";
+      url = "https://gitlab.com/man-db/man-db/-/commit/bbf7701c4f.patch";
+      hash = "sha256-QLOVgV0S2NxxTBObD8bJFR1QDH0p2RGMJXLVNagfddc=";
+    })
+    (fetchpatch {
+      name = "avoid-translation-fallout-from-lexgrog-fix";
+      url = "https://gitlab.com/man-db/man-db/-/commit/043c3cb83c.patch";
+      hash = "sha256-w12/LOGN9gO85zmqX7zookA55w3WUxBMJgWInpH5wms=";
+    })
+  ];
 
   postPatch = ''
     # Remove all mandatory manpaths. Nixpkgs makes no requirements on
@@ -79,7 +108,7 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  doCheck = !stdenv.hostPlatform.isMusl /* iconv binary */ && !stdenv.hostPlatform.isDarwin;
+  doCheck = !stdenv.hostPlatform.isMusl /* iconv binary */;
 
   passthru.tests = {
     nixos = nixosTests.man;