about summary refs log tree commit diff
path: root/pkgs/tools/filesystems
diff options
context:
space:
mode:
authorajs124 <git@ajs124.de>2020-12-25 22:06:59 +0100
committerajs124 <git@ajs124.de>2021-01-02 18:45:22 +0100
commita2267f6341b9673fdef3931e6751c5766f2152ee (patch)
treea3b858cc7a6f0bbbaffe2a7195df70f145c21f3b /pkgs/tools/filesystems
parenteb2913551fb152f2ff757c51a3f7fa9b058c4457 (diff)
downloadnixlib-a2267f6341b9673fdef3931e6751c5766f2152ee.tar
nixlib-a2267f6341b9673fdef3931e6751c5766f2152ee.tar.gz
nixlib-a2267f6341b9673fdef3931e6751c5766f2152ee.tar.bz2
nixlib-a2267f6341b9673fdef3931e6751c5766f2152ee.tar.lz
nixlib-a2267f6341b9673fdef3931e6751c5766f2152ee.tar.xz
nixlib-a2267f6341b9673fdef3931e6751c5766f2152ee.tar.zst
nixlib-a2267f6341b9673fdef3931e6751c5766f2152ee.zip
xfsprogs: 4.19 -> 5.10
Diffstat (limited to 'pkgs/tools/filesystems')
-rw-r--r--pkgs/tools/filesystems/xfsprogs/default.nix40
1 files changed, 15 insertions, 25 deletions
diff --git a/pkgs/tools/filesystems/xfsprogs/default.nix b/pkgs/tools/filesystems/xfsprogs/default.nix
index 95e95ff6a183..2b0e6048741b 100644
--- a/pkgs/tools/filesystems/xfsprogs/default.nix
+++ b/pkgs/tools/filesystems/xfsprogs/default.nix
@@ -1,22 +1,14 @@
-{ stdenv, buildPackages, fetchpatch, fetchgit, autoconf, automake, gettext, libtool, pkgconfig
-, icu, libuuid, readline
+{ stdenv, buildPackages, fetchpatch, fetchurl, autoconf, automake, gettext, libtool, pkgconfig
+, icu, libuuid, readline, inih
 }:
 
-let
-  gentooPatch = name: sha256: fetchpatch {
-    url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-fs/xfsprogs/files/${name}?id=2517dd766cf84d251631f4324f7ec4bce912abb9";
-    inherit sha256;
-  };
-in
-
 stdenv.mkDerivation rec {
   pname = "xfsprogs";
-  version = "4.19.0";
+  version = "5.10.0";
 
-  src = fetchgit {
-    url = "https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git";
-    rev = "v${version}";
-    sha256 = "18728hzfxr1bg4bdzqlxjs893ac1zwlfr7nmc2q4a1sxs0sphd1d";
+  src = fetchurl {
+    url = "mirror://kernel/linux/utils/fs/xfs/xfsprogs/${pname}-${version}.tar.xz";
+    sha256 = "1schqzjx836jd54l10pqds7hyli2m77df3snk95xbr23dpj1fh70";
   };
 
   outputs = [ "bin" "dev" "out" "doc" ];
@@ -26,26 +18,24 @@ stdenv.mkDerivation rec {
     autoconf automake libtool gettext pkgconfig
     libuuid # codegen tool uses libuuid
   ];
-  buildInputs = [ readline icu ];
+  buildInputs = [ readline icu inih ];
   propagatedBuildInputs = [ libuuid ]; # Dev headers include <uuid/uuid.h>
 
   enableParallelBuilding = true;
 
-  # Why is all this garbage needed? Why? Why?
-  patches = [
-    (gentooPatch "xfsprogs-4.15.0-sharedlibs.patch" "0bv2naxpiw7vcsg8p1v2i47wgfda91z1xy1kfwydbp4wmb4nbyyv")
-    (gentooPatch "xfsprogs-4.15.0-docdir.patch" "1srgdidvq2ka0rmfdwpqp92fapgh53w1h7rajm4nnby5vp2v8dfr")
-    (gentooPatch "xfsprogs-4.9.0-underlinking.patch" "1r7l8jphspy14i43zbfnjrnyrdm4cpgyfchblascxylmans0gci7")
-  ];
-
+  # @sbindir@ is replaced with /run/current-system/sw/bin to fix dependency cycles
   preConfigure = ''
-    sed -i Makefile -e '/cp include.install-sh/d'
+    for file in scrub/{xfs_scrub_all.cron.in,xfs_scrub@.service.in,xfs_scrub_all.service.in}; do
+      substituteInPlace "$file" \
+        --replace '@sbindir@' '/run/current-system/sw/bin'
+    done
     make configure
+    patchShebangs ./install-sh
   '';
 
   configureFlags = [
     "--disable-lib64"
-    "--enable-readline"
+    "--with-systemd-unit-dir=${placeholder "out"}/lib/systemd/system"
   ];
 
   installFlags = [ "install-dev" ];
@@ -60,6 +50,6 @@ stdenv.mkDerivation rec {
     description = "SGI XFS utilities";
     license = licenses.lgpl21;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ dezgeg ];
+    maintainers = with maintainers; [ dezgeg ajs124 ];
   };
 }