about summary refs log tree commit diff
path: root/pkgs/os-specific/linux/procps-ng/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/linux/procps-ng/default.nix')
-rw-r--r--pkgs/os-specific/linux/procps-ng/default.nix36
1 files changed, 30 insertions, 6 deletions
diff --git a/pkgs/os-specific/linux/procps-ng/default.nix b/pkgs/os-specific/linux/procps-ng/default.nix
index cc5e3dd5190c..316f0ad1a28d 100644
--- a/pkgs/os-specific/linux/procps-ng/default.nix
+++ b/pkgs/os-specific/linux/procps-ng/default.nix
@@ -1,15 +1,38 @@
-{ lib, stdenv, fetchurl, ncurses }:
+{ lib, stdenv, fetchFromGitLab, fetchpatch, ncurses, libtool, gettext, autoconf, automake, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "procps-${version}";
-  version = "3.3.12";
+  version = "3.3.13";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/procps-ng/procps-ng-${version}.tar.xz";
-    sha256 = "1m57w6jmry84njd5sgk5afycbglql0al80grx027kwqqcfw5mmkf";
+  src = fetchFromGitLab {
+    owner ="procps-ng";
+    repo = "procps";
+    rev = "v${version}";
+    sha256 = "0r3h9adhqi5fi62lx65z839fww35lfh2isnknhkaw71xndjpzr0q";
   };
 
   buildInputs = [ ncurses ];
+  nativeBuildInputs = [ libtool gettext autoconf automake pkgconfig ];
+
+  # https://gitlab.com/procps-ng/procps/issues/88
+  # Patches needed for musl and glibc 2.28
+  patches = [
+    (fetchpatch {
+      url = "https://gitlab.com/procps-ng/procps/uploads/f91ff094be1e4638aeffb67bdbb751ba/numa.h.diff";
+      sha256 = "16r537d2wfrvbv6dg9vyfck8n31xa58903mnssw1s4kb5ap83yd5";
+      extraPrefix = "";
+    })
+    (fetchpatch {
+      url = "https://gitlab.com/procps-ng/procps/uploads/6a7bdea4d82ba781451316fda74192ae/libio_detection.diff";
+      sha256 = "0qp0j60kiycjsv213ih10imjirmxz8zja3rk9fq5lr5xf7k2lr3p";
+    })
+  ];
+
+  # autoreconfHook doesn't quite get, what procps-ng buildprocss does
+  # with po/Makefile.in.in and stuff.
+  preConfigure = ''
+    ./autogen.sh
+  '';
 
   makeFlags = "usrbin_execdir=$(out)/bin";
 
@@ -22,10 +45,11 @@ stdenv.mkDerivation rec {
       "ac_cv_func_realloc_0_nonnull=yes" ];
 
   meta = {
-    homepage = https://sourceforge.net/projects/procps-ng/;
+    homepage = https://gitlab.com/procps-ng/procps;
     description = "Utilities that give information about processes using the /proc filesystem";
     priority = 10; # less than coreutils, which also provides "kill" and "uptime"
     license = lib.licenses.gpl2;
     platforms = lib.platforms.linux ++ lib.platforms.cygwin;
+    maintainers = [ lib.maintainers.typetetris ];
   };
 }