summary refs log tree commit diff
path: root/pkgs/os-specific/linux/procps-ng
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/linux/procps-ng')
-rw-r--r--pkgs/os-specific/linux/procps-ng/default.nix14
1 files changed, 10 insertions, 4 deletions
diff --git a/pkgs/os-specific/linux/procps-ng/default.nix b/pkgs/os-specific/linux/procps-ng/default.nix
index ad9f7191151..7f1e93c072d 100644
--- a/pkgs/os-specific/linux/procps-ng/default.nix
+++ b/pkgs/os-specific/linux/procps-ng/default.nix
@@ -1,4 +1,10 @@
-{ lib, stdenv, fetchurl, ncurses, pkgconfig }:
+{ lib, stdenv, fetchurl, ncurses, pkgconfig
+
+# procps is mostly Linux-only. Most commands require a running Linux
+# system (or very similar like that found in Cygwin). The one
+# exception is ‘watch’ which is portable enough to run on pretty much
+# any UNIX-compatible system.
+, watchOnly ? !(stdenv.isLinux || stdenv.isCygwin) }:
 
 stdenv.mkDerivation rec {
   name = "procps-${version}";
@@ -14,7 +20,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ];
 
   makeFlags = [ "usrbin_execdir=$(out)/bin" ]
-    ++ lib.optionals stdenv.isDarwin [ "watch" "PKG_LDFLAGS="];
+    ++ lib.optionals watchOnly [ "watch" "PKG_LDFLAGS="];
 
   enableParallelBuilding = true;
 
@@ -24,7 +30,7 @@ stdenv.mkDerivation rec {
     [ "ac_cv_func_malloc_0_nonnull=yes"
       "ac_cv_func_realloc_0_nonnull=yes" ];
 
-  installPhase = if stdenv.isDarwin then ''
+  installPhase = if watchOnly then ''
     install -m 0755 -D watch $out/bin/watch
     install -m 0644 -D watch.1 $out/share/man/man1/watch.1
   '' else null;
@@ -34,7 +40,7 @@ stdenv.mkDerivation rec {
     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 ++ lib.platforms.darwin;
+    platforms = lib.platforms.unix;
     maintainers = [ lib.maintainers.typetetris ];
   };
 }