about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools/system
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/tools/system')
-rw-r--r--nixpkgs/pkgs/tools/system/acpica-tools/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/bottom/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/bpytop/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/btop/default.nix36
-rw-r--r--nixpkgs/pkgs/tools/system/clinfo/default.nix16
-rw-r--r--nixpkgs/pkgs/tools/system/collectd/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/system/consul-template/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/daemonize/default.nix14
-rw-r--r--nixpkgs/pkgs/tools/system/das_watchdog/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/system/datefudge/default.nix11
-rw-r--r--nixpkgs/pkgs/tools/system/efibootmgr/default.nix2
-rw-r--r--nixpkgs/pkgs/tools/system/efivar/default.nix8
-rw-r--r--nixpkgs/pkgs/tools/system/fcron/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/fio/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/gdu/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/gkraken/default.nix86
-rw-r--r--nixpkgs/pkgs/tools/system/gotop/default.nix1
-rw-r--r--nixpkgs/pkgs/tools/system/gptfdisk/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/gptfdisk/ncurses-6.3.patch96
-rw-r--r--nixpkgs/pkgs/tools/system/gptman/default.nix6
-rw-r--r--nixpkgs/pkgs/tools/system/honcho/default.nix21
-rw-r--r--nixpkgs/pkgs/tools/system/htop/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/htop/htop-vim.nix22
-rw-r--r--nixpkgs/pkgs/tools/system/hwinfo/default.nix35
-rw-r--r--nixpkgs/pkgs/tools/system/ipmiutil/default.nix5
-rw-r--r--nixpkgs/pkgs/tools/system/kmon/default.nix17
-rw-r--r--nixpkgs/pkgs/tools/system/localtime/default.nix40
-rw-r--r--nixpkgs/pkgs/tools/system/lshw/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/system/natscli/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/openipmi/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/system/openipmi/fix-collectd-assertion.diff11
-rw-r--r--nixpkgs/pkgs/tools/system/openseachest/default.nix38
-rw-r--r--nixpkgs/pkgs/tools/system/plan9port/default.nix34
-rw-r--r--nixpkgs/pkgs/tools/system/rocm-smi/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/rsyslog/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/s6-rc/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/s6/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/sg3_utils/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/sleuthkit/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/stress-ng/default.nix18
-rw-r--r--nixpkgs/pkgs/tools/system/symlinks/default.nix10
-rw-r--r--nixpkgs/pkgs/tools/system/syslog-ng/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/thinkfan/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/tree/default.nix52
-rw-r--r--nixpkgs/pkgs/tools/system/uefitool/variants.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/uptimed/default.nix4
-rw-r--r--nixpkgs/pkgs/tools/system/zenith/default.nix3
47 files changed, 508 insertions, 198 deletions
diff --git a/nixpkgs/pkgs/tools/system/acpica-tools/default.nix b/nixpkgs/pkgs/tools/system/acpica-tools/default.nix
index 4f0ab0297506..2374aa1489fa 100644
--- a/nixpkgs/pkgs/tools/system/acpica-tools/default.nix
+++ b/nixpkgs/pkgs/tools/system/acpica-tools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "acpica-tools";
-  version = "20210730";
+  version = "20210930";
 
   src = fetchurl {
     url = "https://acpica.org/sites/acpica/files/acpica-unix-${version}.tar.gz";
-    sha256 = "1pmm977nyl3bs71ipzcl4dh30qm8x9wm2p2ml0m62rl62kai832a";
+    sha256 = "08a8q174ac3jwxnd8q8iqc3cckwc2f7ncrc6f3171g0n38l2mn1w";
   };
 
   NIX_CFLAGS_COMPILE = "-O3";
diff --git a/nixpkgs/pkgs/tools/system/bottom/default.nix b/nixpkgs/pkgs/tools/system/bottom/default.nix
index ad049784c3c8..6a6ae20dfa98 100644
--- a/nixpkgs/pkgs/tools/system/bottom/default.nix
+++ b/nixpkgs/pkgs/tools/system/bottom/default.nix
@@ -11,13 +11,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "bottom";
-  version = "0.6.4";
+  version = "0.6.6";
 
   src = fetchFromGitHub {
     owner = "ClementTsang";
     repo = pname;
     rev = version;
-    sha256 = "sha256-4L8TUfpEfhjfE1E8GjpRnXPf8kfXdJ02FEusXB/dZWo=";
+    sha256 = "sha256-nE718NA3oLkBTTjewypYyUVRgTm4xiDTui5kEPYYCBc=";
   };
 
   prePatch = ''
@@ -33,7 +33,7 @@ rustPlatform.buildRustPackage rec {
     libiconv
   ];
 
-  cargoSha256 = "sha256-pfDj3lbJpoqnUnzGL64Azcj2HU/UhRe1k55Unh85C/k=";
+  cargoSha256 = "sha256-M6LgriXjhxlnoky+TNU7Eb15M+uTgbVKk3g/Sk90xsg=";
 
   doCheck = false;
 
diff --git a/nixpkgs/pkgs/tools/system/bpytop/default.nix b/nixpkgs/pkgs/tools/system/bpytop/default.nix
index f552ede91b5e..eb0630d33eea 100644
--- a/nixpkgs/pkgs/tools/system/bpytop/default.nix
+++ b/nixpkgs/pkgs/tools/system/bpytop/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bpytop";
-  version = "1.0.67";
+  version = "1.0.68";
 
   src = fetchFromGitHub {
     owner = "aristocratos";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-nvpIqX16WP9kslFo1ne5+QAZcvG+WFm5kDVOLN4C+b0=";
+    sha256 = "sha256-NHfaWWwNpGhqu/ALcW4p4X6sktEyLbKQuNHpAUUw4LY=";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -47,6 +47,6 @@ stdenv.mkDerivation rec {
     platforms = with platforms; linux ++ freebsd ++ darwin;
 
     # https://github.com/NixOS/nixpkgs/pull/94625#issuecomment-668509399
-    broken = stdenv.isDarwin;
+    broken = stdenv.isDarwin && stdenv.isx86_64;
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/btop/default.nix b/nixpkgs/pkgs/tools/system/btop/default.nix
index 99d1d0bfa970..9ffdd46c6b48 100644
--- a/nixpkgs/pkgs/tools/system/btop/default.nix
+++ b/nixpkgs/pkgs/tools/system/btop/default.nix
@@ -1,26 +1,54 @@
 { lib
-, fetchFromGitHub
 , stdenv
+, fetchFromGitHub
+, runCommand
+, darwin
+, removeReferencesTo
 }:
 
 stdenv.mkDerivation rec {
   pname = "btop";
-  version = "1.0.16";
+  version = "1.1.3";
 
   src = fetchFromGitHub {
     owner = "aristocratos";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-navmEd77+LOvCpjPe6dReOYGO1wGRO3OGIv8mC05Kec=";
+    sha256 = "sha256-uKR1ogQwEoyxyWBiLnW8BsOsYgTpeIpKrKspq0JwYjY=";
   };
 
+  hardeningDisable = lib.optionals (stdenv.isAarch64 && stdenv.isDarwin) [ "stackprotector" ];
+
+  ADDFLAGS = with darwin.apple_sdk.frameworks;
+    lib.optional stdenv.isDarwin
+      "-F${IOKit}/Library/Frameworks/";
+
+  buildInputs = with darwin.apple_sdk;
+    lib.optionals stdenv.isDarwin [
+      frameworks.CoreFoundation
+      frameworks.IOKit
+    ] ++ lib.optional (stdenv.isDarwin && stdenv.isx86_64) (
+      # Found this explanation for needing to create a header directory for libproc.h alone.
+      # https://github.com/NixOS/nixpkgs/blob/049e5e93af9bbbe06b4c40fd001a4e138ce1d677/pkgs/development/libraries/webkitgtk/default.nix#L154
+      # TL;DR, the other headers in the include path for the macOS SDK is not compatible with the C++ stdlib and causes issues, so we copy
+      # this to avoid those issues
+      runCommand "${pname}_headers" { } ''
+        install -Dm444 "${lib.getDev sdk}"/include/libproc.h "$out"/include/libproc.h
+      ''
+    );
+
   installFlags = [ "PREFIX=$(out)" ];
 
+  postInstall = ''
+    ${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc.cc} $(readlink -f $out/bin/btop)
+  '';
+
   meta = with lib; {
     description = "A monitor of resources";
     homepage = "https://github.com/aristocratos/btop";
+    changelog = "https://github.com/aristocratos/btop/blob/v${version}/CHANGELOG.md";
     license = licenses.asl20;
-    platforms = platforms.linux;
+    platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ rmcgibbo ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/clinfo/default.nix b/nixpkgs/pkgs/tools/system/clinfo/default.nix
index 9c5b54f554bd..a9e7c0c81def 100644
--- a/nixpkgs/pkgs/tools/system/clinfo/default.nix
+++ b/nixpkgs/pkgs/tools/system/clinfo/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, ocl-icd, opencl-headers }:
+{ lib, stdenv, fetchFromGitHub, ocl-icd, opencl-headers, OpenCL }:
 
 stdenv.mkDerivation rec {
   pname = "clinfo";
@@ -11,11 +11,11 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-0ijfbfv1F6mnt1uFH/A4yOADJoAFrPMa3yAOFJW53ek=";
   };
 
-  buildInputs = [ ocl-icd opencl-headers ];
-
-  NIX_CFLAGS_COMPILE = [
-    "-Wno-error=stringop-overflow"
-    "-Wno-error=stringop-truncation"
+  buildInputs = lib.optionals (!stdenv.isDarwin) [
+    ocl-icd
+    opencl-headers
+  ] ++ lib.optionals stdenv.isDarwin [
+    OpenCL
   ];
 
   makeFlags = [ "PREFIX=${placeholder "out"}" ];
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     description = "Print all known information about all available OpenCL platforms and devices in the system";
     homepage = "https://github.com/Oblomov/clinfo";
     license = licenses.cc0;
-    maintainers = with maintainers; [ athas ];
-    platforms = platforms.linux;
+    maintainers = with maintainers; [ athas r-burns ];
+    platforms = platforms.unix;
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/collectd/default.nix b/nixpkgs/pkgs/tools/system/collectd/default.nix
index 600c5cbfecd3..8d272b15acf1 100644
--- a/nixpkgs/pkgs/tools/system/collectd/default.nix
+++ b/nixpkgs/pkgs/tools/system/collectd/default.nix
@@ -2,6 +2,7 @@
 , autoreconfHook
 , pkg-config
 , libtool
+, nixosTests
 , ...
 }@args:
 let
@@ -16,6 +17,15 @@ stdenv.mkDerivation rec {
     sha256 = "1mh97afgq6qgmpvpr84zngh58m0sl1b4wimqgvvk376188q09bjv";
   };
 
+  patches = [
+    # fix -t never printing syntax errors
+    # should be included in next release
+    (fetchpatch {
+      url = "https://github.com/collectd/collectd/commit/3f575419e7ccb37a3b10ecc82adb2e83ff2826e1.patch";
+      sha256 = "0jwjdlfl0dp7mlbwygp6h0rsbaqfbgfm5z07lr5l26z6hhng2h2y";
+    })
+  ];
+
   nativeBuildInputs = [ pkg-config autoreconfHook ];
   buildInputs = [
     libtool
@@ -41,6 +51,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  passthru.tests = {
+    inherit (nixosTests) collectd;
+  };
+
   meta = with lib; {
     description = "Daemon which collects system performance statistics periodically";
     homepage = "https://collectd.org";
diff --git a/nixpkgs/pkgs/tools/system/consul-template/default.nix b/nixpkgs/pkgs/tools/system/consul-template/default.nix
index 020e56a1526b..7a16c5ab592c 100644
--- a/nixpkgs/pkgs/tools/system/consul-template/default.nix
+++ b/nixpkgs/pkgs/tools/system/consul-template/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "consul-template";
-  version = "0.27.0";
+  version = "0.27.2";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "consul-template";
     rev = "v${version}";
-    sha256 = "sha256-XzsewkHaFIq1kvFDHIsnhfhtLPLFRin7YrhiZuF1+co=";
+    sha256 = "sha256-Uqb0HXaYHGcW7lkUNLa2oXM0gu+SWwpv+NdPnOO87cs=";
   };
 
-  vendorSha256 = "sha256-/4ZY4YRGsUSL2e6uYPJ9tWEvXDjU5/L56yf49pUkJ2E=";
+  vendorSha256 = "sha256-my4ECzmvrPhbKlcEptQ0xi4lYxHm42IrEsOvcetuMeQ=";
 
   # consul-template tests depend on vault and consul services running to
   # execute tests so we skip them here
diff --git a/nixpkgs/pkgs/tools/system/daemonize/default.nix b/nixpkgs/pkgs/tools/system/daemonize/default.nix
index b79da1986d73..b3cf2a4356f6 100644
--- a/nixpkgs/pkgs/tools/system/daemonize/default.nix
+++ b/nixpkgs/pkgs/tools/system/daemonize/default.nix
@@ -1,18 +1,20 @@
-{ lib, stdenv, fetchurl }:
+{ lib, stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
   pname = "daemonize";
   version = "1.7.8";
 
-  src = fetchurl {
-    url    = "https://github.com/bmc/daemonize/archive/release-${version}.tar.gz";
-    sha256 = "0q2c3i3si3k7wfhl6fyckkmkc81yp67pz52p3ggis79p4nczri10";
+  src = fetchFromGitHub {
+    owner = "bmc";
+    repo = "daemonize";
+    rev = "release-${version}";
+    sha256 = "1e6LZXf/lK7sB2CbXwOg7LOi0Q8IBQNAa4d7rX0Ej3A=";
   };
 
   meta = with lib; {
     description = "Runs a command as a Unix daemon";
-    homepage    = "http://software.clapper.org/daemonize/";
-    license     = licenses.bsd3;
+    homepage = "http://software.clapper.org/daemonize/";
+    license = licenses.bsd3;
     platforms = with platforms; linux ++ freebsd ++ darwin;
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/das_watchdog/default.nix b/nixpkgs/pkgs/tools/system/das_watchdog/default.nix
index d9332acc898f..65be63bffe12 100644
--- a/nixpkgs/pkgs/tools/system/das_watchdog/default.nix
+++ b/nixpkgs/pkgs/tools/system/das_watchdog/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation {
   pname = "das_watchdog";
-  version = "git-2015-09-12";
+  version = "unstable-2015-09-12";
 
   src = fetchgit {
     url = "https://github.com/kmatheussen/das_watchdog.git";
diff --git a/nixpkgs/pkgs/tools/system/datefudge/default.nix b/nixpkgs/pkgs/tools/system/datefudge/default.nix
index be2ad70498ae..079b6b694360 100644
--- a/nixpkgs/pkgs/tools/system/datefudge/default.nix
+++ b/nixpkgs/pkgs/tools/system/datefudge/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, fetchpatch }:
+{ stdenv, lib, fetchgit, fetchpatch, makeWrapper, coreutils }:
 
 stdenv.mkDerivation rec {
   pname = "datefudge";
@@ -10,6 +10,10 @@ stdenv.mkDerivation rec {
     sha256 = "1nh433yx4y4djp0bs6aawqbwk7miq7fsbs9wpjlyh2k9dvil2lrm";
   };
 
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = [ coreutils ];
+
   postPatch = ''
     substituteInPlace Makefile \
      --replace "/usr" "/" \
@@ -20,7 +24,10 @@ stdenv.mkDerivation rec {
 
   installFlags = [ "DESTDIR=$(out)" ];
 
-  postInstall = "chmod +x $out/lib/datefudge/datefudge.so";
+  postInstall = ''
+    chmod +x $out/lib/datefudge/datefudge.so
+    wrapProgram $out/bin/datefudge --prefix PATH : ${coreutils}/bin
+  '';
 
   meta = with lib; {
     description = "Fake the system date";
diff --git a/nixpkgs/pkgs/tools/system/efibootmgr/default.nix b/nixpkgs/pkgs/tools/system/efibootmgr/default.nix
index 0c678dd9c51b..fd7eceede159 100644
--- a/nixpkgs/pkgs/tools/system/efibootmgr/default.nix
+++ b/nixpkgs/pkgs/tools/system/efibootmgr/default.nix
@@ -22,8 +22,6 @@ stdenv.mkDerivation rec {
       sha256 = "1sbijvlpv4khkix3vix9mbhzffj8lp8zpnbxm9gnzjz8yssz9p5h";
     })
   ];
-  # We have no LTO here since commit 22284b07.
-  postPatch = if stdenv.isi686 then "sed '/^CFLAGS/s/-flto//' -i Make.defaults" else null;
 
   makeFlags = [ "EFIDIR=nixos" "PKG_CONFIG=${stdenv.cc.targetPrefix}pkg-config" ];
 
diff --git a/nixpkgs/pkgs/tools/system/efivar/default.nix b/nixpkgs/pkgs/tools/system/efivar/default.nix
index c92b28e7f5ea..ed831c5ecf6d 100644
--- a/nixpkgs/pkgs/tools/system/efivar/default.nix
+++ b/nixpkgs/pkgs/tools/system/efivar/default.nix
@@ -39,9 +39,11 @@ stdenv.mkDerivation rec {
       sha256 = "1ajj11wwsvamfspq4naanvw08h63gr0g71q0dfbrrywrhc0jlmdw";
     })
   ];
-  # We have no LTO here since commit 22284b07.  With GCC 10 that triggers a warning.
-  postPatch = "sed '/^OPTIMIZE /s/-flto//' -i Make.defaults";
-  NIX_CFLAGS_COMPILE = "-Wno-error=stringop-truncation";
+
+  NIX_CFLAGS_COMPILE = [
+    "-Wno-error=stringop-truncation"
+    "-flto-partition=none"
+  ];
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ popt ];
diff --git a/nixpkgs/pkgs/tools/system/fcron/default.nix b/nixpkgs/pkgs/tools/system/fcron/default.nix
index 9e3b3c2c16d3..8b54b77e8a2c 100644
--- a/nixpkgs/pkgs/tools/system/fcron/default.nix
+++ b/nixpkgs/pkgs/tools/system/fcron/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "fcron";
-  version = "3.3.0";
+  version = "3.3.1";
 
   src = fetchurl {
     url = "http://fcron.free.fr/archives/${pname}-${version}.src.tar.gz";
-    sha256 = "0q5b1fdq1rpsd4lj7v717x47pmn62hhm13394g0yxqi614xd7sls";
+    sha256 = "sha256-81naoIpj3ft/4vlkuz9cUiRMJao2+SJaPMVNNvRoEQY=";
   };
 
   buildInputs = [ perl ];
diff --git a/nixpkgs/pkgs/tools/system/fio/default.nix b/nixpkgs/pkgs/tools/system/fio/default.nix
index dedcbc6f1e4c..c15c623f374d 100644
--- a/nixpkgs/pkgs/tools/system/fio/default.nix
+++ b/nixpkgs/pkgs/tools/system/fio/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fio";
-  version = "3.28";
+  version = "3.29";
 
   src = fetchFromGitHub {
     owner  = "axboe";
     repo   = "fio";
     rev    = "fio-${version}";
-    sha256 = "sha256-8F31tyZ4/Qk14uwkg0DRPMdSaZGRVnI1dUDOITWhYAA=";
+    sha256 = "sha256-SSQFZK8oVarenp/I37QX/N4F4Es2r2bVyWw6U2OcCHw=";
   };
 
   buildInputs = [ python3 zlib ]
diff --git a/nixpkgs/pkgs/tools/system/gdu/default.nix b/nixpkgs/pkgs/tools/system/gdu/default.nix
index 8c70910a9925..a771e3967c80 100644
--- a/nixpkgs/pkgs/tools/system/gdu/default.nix
+++ b/nixpkgs/pkgs/tools/system/gdu/default.nix
@@ -7,13 +7,13 @@
 
 buildGoModule rec {
   pname = "gdu";
-  version = "5.8.1";
+  version = "5.12.1";
 
   src = fetchFromGitHub {
     owner = "dundee";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1410mmijzjvcylrynyq4p2fayi1wjy61sibd3kws96k3k7ylb14n";
+    sha256 = "sha256-pXHMNyebUkHEZvUWtDkyp5Fqk07GA5sd+254fls8PjU=";
   };
 
   vendorSha256 = "0ls0pw1m6hy203cdkmp9847h2fmvc4hjkv5x2v6r7516cqbs25ac";
diff --git a/nixpkgs/pkgs/tools/system/gkraken/default.nix b/nixpkgs/pkgs/tools/system/gkraken/default.nix
new file mode 100644
index 000000000000..9cd30e83c325
--- /dev/null
+++ b/nixpkgs/pkgs/tools/system/gkraken/default.nix
@@ -0,0 +1,86 @@
+{ python3Packages
+, lib
+, fetchFromGitLab
+, meson
+, pkg-config
+, glib
+, ninja
+, desktop-file-utils
+, gobject-introspection
+, gtk3
+, libnotify
+, dbus
+, wrapGAppsHook
+}:
+
+python3Packages.buildPythonApplication rec {
+  pname = "gkraken";
+  version = "1.1.6";
+
+  src = fetchFromGitLab {
+    owner = "leinardi";
+    repo = "gkraken";
+    rev = version;
+    sha256 = "085zz6m7c3xzsrvkw50gbbz8l9fmswxj2hjya2f52dvgs8daijdy";
+  };
+
+  format = "other";
+
+  postPatch = ''
+    patchShebangs scripts/meson_post_install.py
+  '';
+
+  nativeBuildInputs = [
+    meson
+    pkg-config
+    glib
+    ninja
+    gtk3
+    desktop-file-utils
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gobject-introspection
+    glib
+    gtk3
+    libnotify
+    dbus
+  ];
+
+  propagatedBuildInputs = with python3Packages; [
+    pygobject3
+    peewee
+    rx
+    injector
+    liquidctl
+    pyxdg
+    requests
+    matplotlib
+    dbus-python
+  ];
+
+  dontWrapGApps = true;
+
+  # Extract udev rules from python code
+  postInstall = ''
+    mkdir -p $out/lib/udev/rules.d
+    sed -e '/\s*\(from\|@singleton\|@inject\)/d' $src/gkraken/interactor/udev_interactor.py > udev_interactor.py
+    python -c 'from udev_interactor import _UDEV_RULE; print(_UDEV_RULE)' > $out/lib/udev/rules.d/60-gkraken.rules
+  '';
+
+  preFixup = ''
+    makeWrapperArgs+=(
+      "''${gappsWrapperArgs[@]}"
+    )
+  '';
+
+  meta = with lib; {
+    description = "GUI that allows to control the cooling (fan and/or pump profiles) of NZXT Kraken AIO liquid coolers from Linux";
+    homepage = "https://gitlab.com/leinardi/gkraken";
+    changelog = "https://gitlab.com/leinardi/gkraken/-/tags/${version}";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ OPNA2608 ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/system/gotop/default.nix b/nixpkgs/pkgs/tools/system/gotop/default.nix
index dffbaaa81832..27b24b869cf2 100644
--- a/nixpkgs/pkgs/tools/system/gotop/default.nix
+++ b/nixpkgs/pkgs/tools/system/gotop/default.nix
@@ -28,5 +28,6 @@ buildGoModule rec {
     changelog = "https://github.com/xxxserxxx/gotop/raw/v${version}/CHANGELOG.md";
     license = licenses.mit;
     maintainers = [ maintainers.magnetophon ];
+    broken = stdenv.isDarwin; # needs to update gopsutil to at least v3.21.3 to include https://github.com/shirou/gopsutil/pull/1042
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/gptfdisk/default.nix b/nixpkgs/pkgs/tools/system/gptfdisk/default.nix
index 0e7aff32bf07..fc6bf89e4498 100644
--- a/nixpkgs/pkgs/tools/system/gptfdisk/default.nix
+++ b/nixpkgs/pkgs/tools/system/gptfdisk/default.nix
@@ -11,6 +11,12 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-ldGYVvAE2rxLjDQrJhLo0KnuvdUgBClxiDafFS6dxt8=";
   };
 
+  patches = [
+    # fix build failure against ncurses-6.3 (pending upstream inclusion):
+    #  https://sourceforge.net/p/gptfdisk/mailman/message/37392412/
+    ./ncurses-6.3.patch
+  ];
+
   postPatch = ''
     patchShebangs gdisk_test.sh
   '' + lib.optionalString stdenv.isDarwin ''
diff --git a/nixpkgs/pkgs/tools/system/gptfdisk/ncurses-6.3.patch b/nixpkgs/pkgs/tools/system/gptfdisk/ncurses-6.3.patch
new file mode 100644
index 000000000000..4b8ec91aa04e
--- /dev/null
+++ b/nixpkgs/pkgs/tools/system/gptfdisk/ncurses-6.3.patch
@@ -0,0 +1,96 @@
+From 9d5032d1487a8fe6ef7229d413418a27e32a28e5 Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyich@gmail.com>
+Date: Mon, 1 Nov 2021 07:51:10 +0000
+Subject: [PATCH:gptfdisk] gptcurses.cc: always use "%s"-style format for printf()-style
+ functions
+
+`ncuses-6.3` added printf-style function attributes and now makes
+it easier to catch cases when user input is used in palce of format
+string when built with CFLAGS=-Werror=format-security:
+
+    gptcurses.cc:274:10: error:
+        format not a string literal and no format arguments [-Werror=format-security]
+      274 |    printw(theLine.c_str());
+          |    ~~~~~~^~~~~~~~~~~~~~~~~
+
+Let's wrap all the missing places with "%s" format.
+---
+ gptcurses.cc | 24 ++++++++++++------------
+ 1 file changed, 12 insertions(+), 12 deletions(-)
+
+--- a/gptcurses.cc
++++ b/gptcurses.cc
+@@ -239,22 +239,22 @@ Space* GPTDataCurses::ShowSpace(int spaceNum, int lineNum) {
+       ClearLine(lineNum);
+       if (space->partNum == -1) { // space is empty
+          move(lineNum, 12);
+-         printw(BytesToIeee((space->lastLBA - space->firstLBA + 1), blockSize).c_str());
++         printw("%s", BytesToIeee((space->lastLBA - space->firstLBA + 1), blockSize).c_str());
+          move(lineNum, 24);
+          printw("free space");
+       } else { // space holds a partition
+          move(lineNum, 3);
+          printw("%d", space->partNum + 1);
+          move(lineNum, 12);
+-         printw(BytesToIeee((space->lastLBA - space->firstLBA + 1), blockSize).c_str());
++         printw("%s", BytesToIeee((space->lastLBA - space->firstLBA + 1), blockSize).c_str());
+          move(lineNum, 24);
+-         printw(space->origPart->GetTypeName().c_str());
++         printw("%s", space->origPart->GetTypeName().c_str());
+          move(lineNum, 50);
+          #ifdef USE_UTF16
+          space->origPart->GetDescription().extract(0, 39, temp, 39);
+-         printw(temp);
++         printw("%s", temp);
+          #else
+-         printw(space->origPart->GetDescription().c_str());
++         printw("%s", space->origPart->GetDescription().c_str());
+          #endif
+       } // if/else
+    } // if
+@@ -271,10 +271,10 @@ int GPTDataCurses::DisplayParts(int selected) {
+ 
+    move(lineNum++, 0);
+    theLine = "Part. #     Size        Partition Type            Partition Name";
+-   printw(theLine.c_str());
++   printw("%s", theLine.c_str());
+    move(lineNum++, 0);
+    theLine = "----------------------------------------------------------------";
+-   printw(theLine.c_str());
++   printw("%s", theLine.c_str());
+    numToShow = LINES - RESERVED_TOP - RESERVED_BOTTOM;
+    pageNum = selected / numToShow;
+    for (i = pageNum * numToShow; i <= (pageNum + 1) * numToShow - 1; i++) {
+@@ -636,7 +636,7 @@ void GPTDataCurses::DisplayOptions(char selectedKey) {
+          } // if/else
+       } // for
+       move(LINES - 1, (COLS - optionDesc.length()) / 2);
+-      printw(optionDesc.c_str());
++      printw("%s", optionDesc.c_str());
+       currentKey = selectedKey;
+    } // if
+ } // GPTDataCurses::DisplayOptions()
+@@ -748,11 +748,11 @@ void GPTDataCurses::DrawMenu(void) {
+ 
+    clear();
+    move(0, (COLS - title.length()) / 2);
+-   printw(title.c_str());
++   printw("%s", title.c_str());
+    move(2, (COLS - drive.length()) / 2);
+-   printw(drive.c_str());
++   printw("%s", drive.c_str());
+    move(3, (COLS - size.str().length()) / 2);
+-   printw(size.str().c_str());
++   printw("%s", size.str().c_str());
+    DisplayParts(currentSpaceNum);
+ } // DrawMenu
+ 
+@@ -802,7 +802,7 @@ void PromptToContinue(void) {
+ void Report(string theText) {
+    clear();
+    move(0, 0);
+-   printw(theText.c_str());
++   printw("%s", theText.c_str());
+    move(LINES - 2, (COLS - 29) / 2);
+    printw("Press any key to continue....");
+    cbreak();
diff --git a/nixpkgs/pkgs/tools/system/gptman/default.nix b/nixpkgs/pkgs/tools/system/gptman/default.nix
index 648b68bcbc4c..ed486fbf4c52 100644
--- a/nixpkgs/pkgs/tools/system/gptman/default.nix
+++ b/nixpkgs/pkgs/tools/system/gptman/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "gptman";
-  version = "0.8.0";
+  version = "0.8.2";
 
   src = fetchFromGitHub {
     owner = "cecton";
     repo = pname;
     rev = "v${version}";
-    sha256 = "11zyjrw4f8gi5s4sd2kl3sdiz0avq7clr8zqnwl04y61b3fpg7y1";
+    sha256 = "sha256-MWrTwVXlV2B8GzYRgI3np6NqqSGPbRZCKpLU7aC1mX0=";
   };
 
-  cargoSha256 = "1cp8cyrd7ab8r2j28b69c2p3ysix5b9hpsqk07cmzgqwwml0qj12";
+  cargoSha256 = "sha256-dVvZTYk17fyurtrJxjUgkxU37rxJubiTAQ1AWMnFP4s=";
 
   buildInputs = lib.optional stdenv.isDarwin libiconv;
 
diff --git a/nixpkgs/pkgs/tools/system/honcho/default.nix b/nixpkgs/pkgs/tools/system/honcho/default.nix
index 17fa94893336..66d217296565 100644
--- a/nixpkgs/pkgs/tools/system/honcho/default.nix
+++ b/nixpkgs/pkgs/tools/system/honcho/default.nix
@@ -8,30 +8,21 @@ in
 
 python3Packages.buildPythonApplication rec {
   name = "${pname}-${version}";
-  version = "1.0.1";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "nickstenning";
     repo = "honcho";
     rev = "v${version}";
-    sha256 = "11bd87474qpif20xdcn0ra1idj5k16ka51i658wfpxwc6nzsn92b";
+    sha256 = "1y0r8dw4pqcq7r4n58ixjdg1iy60lp0gxsd7d2jmhals16ij71rj";
   };
 
-  checkInputs = with python3Packages; [ jinja2 pytest mock coverage ];
-
-  buildPhase = ''
-    ${python.interpreter} setup.py build
-  '';
+  propagatedBuildInputs = [ python3Packages.setuptools ];
 
-  installPhase = ''
-    mkdir -p "$out/${python.sitePackages}"
-
-    export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
+  checkInputs = with python3Packages; [ jinja2 pytest mock coverage ];
 
-    ${python.interpreter} setup.py install \
-      --install-lib=$out/${python.sitePackages} \
-      --prefix="$out"
-  '';
+  # missing plugins
+  doCheck = false;
 
   checkPhase = ''
     runHook preCheck
diff --git a/nixpkgs/pkgs/tools/system/htop/default.nix b/nixpkgs/pkgs/tools/system/htop/default.nix
index bc8dde743c8e..26d10d1278da 100644
--- a/nixpkgs/pkgs/tools/system/htop/default.nix
+++ b/nixpkgs/pkgs/tools/system/htop/default.nix
@@ -11,13 +11,13 @@ assert systemdSupport -> stdenv.isLinux;
 
 stdenv.mkDerivation rec {
   pname = "htop";
-  version = "3.1.0";
+  version = "3.1.2";
 
   src = fetchFromGitHub {
     owner = "htop-dev";
     repo = pname;
     rev = version;
-    sha256 = "sha256-/48Ca7JPzhPS4eYsPbwbSVcx9aS1f0LHcqsbNVWL+9k=";
+    sha256 = "sha256-RKYS8UYZTVKMR/3DG31eqkG4knPRl8WXsZU/XGmGmAg=";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
diff --git a/nixpkgs/pkgs/tools/system/htop/htop-vim.nix b/nixpkgs/pkgs/tools/system/htop/htop-vim.nix
new file mode 100644
index 000000000000..05af41ae0ce4
--- /dev/null
+++ b/nixpkgs/pkgs/tools/system/htop/htop-vim.nix
@@ -0,0 +1,22 @@
+{ lib, htop, fetchFromGitHub }:
+
+htop.overrideAttrs (oldAttrs: rec {
+  pname = "htop-vim";
+  version = "unstable-2021-10-11";
+
+  src = fetchFromGitHub {
+    owner = "KoffeinFlummi";
+    repo = pname;
+    rev = "ba6fd3891e9af60b41bd092524cc05f2469fec4b";
+    sha256 = "sha256-G83+5GgEz41begDkdK8zNx48UleufFCJ9pOQ9nbtFNs=";
+  };
+
+  meta = with lib; {
+    description = "An interactive process viewer for Linux, with vim-style keybindings";
+    homepage = "https://github.com/KoffeinFlummi/htop-vim";
+    license = licenses.gpl2Only;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ thiagokokada ];
+    mainProgram = "htop";
+  };
+})
diff --git a/nixpkgs/pkgs/tools/system/hwinfo/default.nix b/nixpkgs/pkgs/tools/system/hwinfo/default.nix
index bf9e5cd9438b..12840b3f5100 100644
--- a/nixpkgs/pkgs/tools/system/hwinfo/default.nix
+++ b/nixpkgs/pkgs/tools/system/hwinfo/default.nix
@@ -1,16 +1,33 @@
-{ lib, stdenv, fetchFromGitHub, libx86emu, flex, perl, libuuid }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, flex
+, libuuid
+, libx86emu
+, perl
+}:
 
 stdenv.mkDerivation rec {
   pname = "hwinfo";
-  version = "21.76";
+  version = "21.80";
 
   src = fetchFromGitHub {
     owner = "opensuse";
     repo = "hwinfo";
     rev = version;
-    sha256 = "sha256-C0aYEgJC+ITxWcYBLPehNz9J1Y25gS1+UDVc3+7nIKQ=";
+    sha256 = "sha256-T4ny1tq3IMtmeZRgcAOvu2O23XEiLeKRoqOxhuVGBRw=";
   };
 
+  nativeBuildInputs = [
+    flex
+  ];
+
+  buildInputs = [
+    libuuid
+    libx86emu
+    perl
+  ];
+
   postPatch = ''
     # VERSION and changelog are usually generated using Git
     # unless HWINFO_VERSION is defined (see Makefile)
@@ -22,13 +39,13 @@ stdenv.mkDerivation rec {
     substituteInPlace hwinfo.pc.in --replace "prefix=/usr" "prefix=$out"
   '';
 
-  nativeBuildInputs = [ flex ];
-  buildInputs = [ libx86emu perl libuuid ];
-
-  makeFlags = [ "LIBDIR=/lib" ];
-  #enableParallelBuilding = true;
+  makeFlags = [
+    "LIBDIR=/lib"
+  ];
 
-  installFlags = [ "DESTDIR=$(out)" ];
+  installFlags = [
+    "DESTDIR=$(out)"
+  ];
 
   meta = with lib; {
     description = "Hardware detection tool from openSUSE";
diff --git a/nixpkgs/pkgs/tools/system/ipmiutil/default.nix b/nixpkgs/pkgs/tools/system/ipmiutil/default.nix
index a11890dabd6f..2166a671ab1c 100644
--- a/nixpkgs/pkgs/tools/system/ipmiutil/default.nix
+++ b/nixpkgs/pkgs/tools/system/ipmiutil/default.nix
@@ -1,12 +1,11 @@
 { lib, stdenv, fetchurl, openssl }:
 
 stdenv.mkDerivation rec {
-  baseName = "ipmiutil";
+  pname = "ipmiutil";
   version = "3.1.6";
-  name = "${baseName}-${version}";
 
   src = fetchurl {
-    url = "mirror://sourceforge/project/${baseName}/${name}.tar.gz";
+    url = "mirror://sourceforge/project/ipmiutil/pmiutil-${version}.tar.gz";
     sha256 = "0jlfb4firph3hc0854n7cw7yjwlax3wdxn37r2jl0l94dj684548";
   };
 
diff --git a/nixpkgs/pkgs/tools/system/kmon/default.nix b/nixpkgs/pkgs/tools/system/kmon/default.nix
index 7bf2c810298b..36181b371eaf 100644
--- a/nixpkgs/pkgs/tools/system/kmon/default.nix
+++ b/nixpkgs/pkgs/tools/system/kmon/default.nix
@@ -1,31 +1,32 @@
-{ lib, fetchFromGitHub, rustPlatform, python3, libxcb }:
+{ lib, rustPlatform, fetchFromGitHub, installShellFiles, python3, libxcb }:
 
 rustPlatform.buildRustPackage rec {
   pname = "kmon";
-  version = "1.5.5";
+  version = "1.6.0";
 
   src = fetchFromGitHub {
     owner = "orhun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-x4P9p2zXthGtokfKcWR/xaX/E7a9mEuQiK6cjFw4nS8=";
+    sha256 = "sha256-0sjRTbTLtBUTyx6+HnihL9TggoeIOqX9zKRaXjBUfE0=";
   };
 
-  cargoSha256 = "sha256-ZAHp7eR2pu+xEP9NZOLoczEF8QSFA5Z/8bKsCYqk4Ww=";
+  cargoSha256 = "sha256-QMJ3Rpgcfrza2zFiA5LFBuYedn+VnffzpyzAGeC0PSM=";
 
-  nativeBuildInputs = [ python3 ];
+  nativeBuildInputs = [ installShellFiles python3 ];
 
   buildInputs = [ libxcb ];
 
   postInstall = ''
-    install -D man/kmon.8 -t $out/share/man/man8/
+    installManPage man/kmon.8
   '';
 
   meta = with lib; {
     description = "Linux Kernel Manager and Activity Monitor";
     homepage = "https://github.com/orhun/kmon";
-    license = with licenses; [ gpl3 ];
+    changelog = "https://github.com/orhun/kmon/blob/v${version}/CHANGELOG.md";
+    license = licenses.gpl3Only;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ misuzu ];
+    maintainers = with maintainers; [ figsoda misuzu ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/localtime/default.nix b/nixpkgs/pkgs/tools/system/localtime/default.nix
index 0ad17c6c6595..943651fa2497 100644
--- a/nixpkgs/pkgs/tools/system/localtime/default.nix
+++ b/nixpkgs/pkgs/tools/system/localtime/default.nix
@@ -1,38 +1,40 @@
-{ lib, fetchFromGitHub, buildGoPackage, m4 }:
-
-buildGoPackage rec {
+{ buildGoModule
+, fetchFromGitHub
+, geoclue2-with-demo-agent
+, lib
+, m4
+}:
+
+buildGoModule {
   pname = "localtime";
-  version = "unstable-2017-11-07";
+  version = "unstable-2021-11-23";
 
   src = fetchFromGitHub {
     owner = "Stebalien";
     repo = "localtime";
-    rev = "2e7b4317c723406bd75b2a1d640219ab9f8090ce";
-    sha256 = "04fyna8p7q7skzx9fzmncd6gx7x5pwa9jh8a84hpljlvj0kldfs8";
+    rev = "3e5d6cd64444b2164e87cea03448bfb8eefd6ccd";
+    sha256 = "sha256-6uxxPq6abtRqM/R2Fw46ynP9PEkHggTSUymLYlQXQRU=";
   };
 
-  goPackagePath = "github.com/Stebalien/localtime";
-
-  nativeBuildInputs = [ m4 ];
-
-  makeFlags = [
-    "PREFIX=${placeholder "out"}"
-    "BINDIR=${placeholder "out"}/bin"
-  ];
+  vendorSha256 = "sha256-sf3sL6aO5jSytT2NtBkA3lhg77RIzbYkSC4fkH+cwwk=";
 
-  buildPhase = ''
-    cd go/src/${goPackagePath}
-    make $makeFlags
+  postPatch = ''
+    demoPath="${geoclue2-with-demo-agent}/libexec/geoclue-2.0/demos/agent"
+    sed -i localtimed.go -e "s#/usr/lib/geoclue-2.0/demos/agent#$demoPath#"
   '';
 
+  nativeBuildInputs = [ m4 ];
+
   installPhase = ''
-    make install $makeFlags
+    runHook preInstall
+    make PREFIX="$out" install
+    runHook postInstall
   '';
 
   meta = with lib; {
     description = "A daemon for keeping the system timezone up-to-date based on the current location";
     homepage = "https://github.com/Stebalien/localtime";
-    maintainers = with maintainers; [ ];
+    maintainers = with maintainers; [ lovesegfault ];
     platforms = platforms.linux;
     license = licenses.gpl3;
   };
diff --git a/nixpkgs/pkgs/tools/system/lshw/default.nix b/nixpkgs/pkgs/tools/system/lshw/default.nix
index 040f065acd72..25bf79cadddf 100644
--- a/nixpkgs/pkgs/tools/system/lshw/default.nix
+++ b/nixpkgs/pkgs/tools/system/lshw/default.nix
@@ -2,14 +2,12 @@
 , withGUI ? false, gtk2, pkg-config, sqlite # compile GUI
 }:
 
-let numVersion = "02.18"; # :(
-in
 stdenv.mkDerivation rec {
-  name = "lshw-${numVersion}b";
-  version = numVersion;
+  pname = "lshw";
+  version = "B.02.18";
 
   src = fetchurl {
-    url = "https://ezix.org/software/files/lshw-B.${version}.tar.gz";
+    url = "https://ezix.org/software/files/lshw-${version}.tar.gz";
     sha256 = "0brwra4jld0d53d7jsgca415ljglmmx1l2iazpj4ndilr48yy8mf";
   };
 
@@ -48,7 +46,7 @@ stdenv.mkDerivation rec {
     homepage = "https://ezix.org/project/wiki/HardwareLiSter";
     description = "Provide detailed information on the hardware configuration of the machine";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ phreedom ];
+    maintainers = with maintainers; [ ];
     platforms = platforms.linux;
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/natscli/default.nix b/nixpkgs/pkgs/tools/system/natscli/default.nix
index 226528782e5f..97a690690ac4 100644
--- a/nixpkgs/pkgs/tools/system/natscli/default.nix
+++ b/nixpkgs/pkgs/tools/system/natscli/default.nix
@@ -5,12 +5,12 @@
 
 buildGoModule rec {
   pname = "natscli";
-  version = "0.0.26";
+  version = "0.0.28";
 
   src = fetchFromGitHub {
     owner = "nats-io";
     repo = pname;
-    rev = version;
+    rev = "v${version}";
     sha256 = "sha256-w0a2BzfRKf55hFgdaDLsR2YeC5Jqa2uynlRN2oGPX8g=";
   };
 
diff --git a/nixpkgs/pkgs/tools/system/openipmi/default.nix b/nixpkgs/pkgs/tools/system/openipmi/default.nix
index 06df9afa8139..7e54a5549b71 100644
--- a/nixpkgs/pkgs/tools/system/openipmi/default.nix
+++ b/nixpkgs/pkgs/tools/system/openipmi/default.nix
@@ -2,19 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "OpenIPMI";
-  version = "2.0.31";
+  version = "2.0.32";
 
   src = fetchurl {
     url = "mirror://sourceforge/openipmi/OpenIPMI-${version}.tar.gz";
-    sha256 = "05wpkn74nxqp5p6sa2yaf2ajrh8b0gfkb7y4r86lnigz4rvz6lkh";
+    sha256 = "sha256-9tD9TAp0sF+AkHIp0LJw9UyiMpS8wRl5+LjRJ2Z4aUU=";
   };
 
-  patches = [
-    # fix assertion when used as a library in collectd
-    # taken from https://sourceforge.net/p/openipmi/code/ci/d613d279dbce2d5e4594f6fed39653d83af0d99b/
-    ./fix-collectd-assertion.diff
-  ];
-
   buildInputs = [ ncurses popt python3 readline ];
 
   outputs = [ "out" "lib" "dev" "man" ];
diff --git a/nixpkgs/pkgs/tools/system/openipmi/fix-collectd-assertion.diff b/nixpkgs/pkgs/tools/system/openipmi/fix-collectd-assertion.diff
deleted file mode 100644
index af39fcc05677..000000000000
--- a/nixpkgs/pkgs/tools/system/openipmi/fix-collectd-assertion.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/unix/posix_thread_os_hnd.c
-+++ b/unix/posix_thread_os_hnd.c
-@@ -140,8 +140,6 @@
-     fd_data->data_ready = data_ready;
-     fd_data->handler = handler;
-     fd_data->freed = freed;
--    sel_set_fd_write_handler(posix_sel, fd, SEL_FD_HANDLER_DISABLED);
--    sel_set_fd_except_handler(posix_sel, fd, SEL_FD_HANDLER_DISABLED);
-     rv = sel_set_fd_handlers(posix_sel, fd, fd_data, fd_handler, NULL, NULL,
- 			     free_fd_data);
-     if (rv) {
diff --git a/nixpkgs/pkgs/tools/system/openseachest/default.nix b/nixpkgs/pkgs/tools/system/openseachest/default.nix
new file mode 100644
index 000000000000..7b7909fbe002
--- /dev/null
+++ b/nixpkgs/pkgs/tools/system/openseachest/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, fetchFromGitHub
+, stdenv
+}:
+
+stdenv.mkDerivation rec {
+  pname = "openseachest";
+  version = "21.06.21";
+
+  src = fetchFromGitHub {
+    owner = "Seagate";
+    repo = "openSeaChest";
+    rev = "v${version}";
+    sha256 = "09xay3frk0yh48ww650dsjp0rx0w1m3ab3rpz5k1jizppv4kk9fi";
+    fetchSubmodules = true;
+  };
+
+  makeFlags = [ "-C Make/gcc" ];
+  buildFlags = [ "release" ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/{bin,share}
+    cp -r Make/gcc/openseachest_exes/. $out/bin
+    cp -r docs/man $out/share
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "A collection of command line diagnostic tools for storage devices";
+    homepage = "https://github.com/Seagate/openSeaChest";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ justinas ];
+    platforms = with platforms; freebsd ++ linux;
+  };
+}
diff --git a/nixpkgs/pkgs/tools/system/plan9port/default.nix b/nixpkgs/pkgs/tools/system/plan9port/default.nix
index a735e35624f7..d6c8833618cd 100644
--- a/nixpkgs/pkgs/tools/system/plan9port/default.nix
+++ b/nixpkgs/pkgs/tools/system/plan9port/default.nix
@@ -1,23 +1,26 @@
-{ lib, stdenv, fetchFromGitHub, which
+{ lib
+, stdenv
+, fetchFromGitHub
 , darwin ? null
-, xorgproto ? null
+, fontconfig ? null
+, freetype ? null
 , libX11
 , libXext ? null
 , libXt ? null
-, fontconfig ? null
-, freetype ? null
 , perl ? null  # For building web manuals
+, which
+, xorgproto ? null
 }:
 
 stdenv.mkDerivation {
   pname = "plan9port";
-  version = "2021-04-22";
+  version = "2021-10-19";
 
   src =  fetchFromGitHub {
     owner = "9fans";
     repo = "plan9port";
-    rev = "70cc6e5ba7798b315c3fb3aae19620a01604a459";
-    hash = "sha256-HCn8R9YSocHrpw/xK5n8gsCLSAbAQgw0NtjO9vYIbKo=";
+    rev = "d0d440860f2000a1560abb3f593cdc325fcead4c";
+    hash = "sha256-2aYXqPGwrReyFPrLDtEjgQd/RJjpOfI3ge/tDocYpRQ=";
   };
 
   postPatch = ''
@@ -44,10 +47,19 @@ stdenv.mkDerivation {
   buildInputs = [
     perl
   ] ++ lib.optionals (!stdenv.isDarwin) [
-    xorgproto libX11 libXext libXt fontconfig
-    freetype # fontsrv wants ft2build.h provides system fonts for acme and sam.
+    fontconfig
+    freetype # fontsrv wants ft2build.h provides system fonts for acme and sam
+    libX11
+    libXext
+    libXt
+    xorgproto
   ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
-    Carbon Cocoa IOKit Metal QuartzCore
+    Carbon
+    Cocoa
+    IOKit
+    Metal
+    QuartzCore
+    darwin.DarwinTools
   ]);
 
   builder = ./builder.sh;
@@ -90,6 +102,8 @@ stdenv.mkDerivation {
       kovirobi
     ];
     platforms = platforms.unix;
+    # TODO: revisit this when the sdk situation on x86_64-darwin changes
+    broken = stdenv.isDarwin && stdenv.isx86_64;
   };
 }
 # TODO: investigate the mouse chording support patch
diff --git a/nixpkgs/pkgs/tools/system/rocm-smi/default.nix b/nixpkgs/pkgs/tools/system/rocm-smi/default.nix
index 52b75b7a4e9e..c91f5d818b17 100644
--- a/nixpkgs/pkgs/tools/system/rocm-smi/default.nix
+++ b/nixpkgs/pkgs/tools/system/rocm-smi/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rocm-smi";
-  version = "4.3.1";
+  version = "4.5.2";
 
   src = fetchFromGitHub {
     owner = "RadeonOpenCompute";
     repo = "rocm_smi_lib";
     rev = "rocm-${version}";
-    hash = "sha256-Ckno73Otkc9rHEUkSgNoOui+6ZHGUF+B9iAoe0NQH0c=";
+    hash = "sha256-zfsNGDAwBD91w0loWxd8AwuZ3kZSPCXMxxQnX6ktOiE=";
   };
 
   nativeBuildInputs = [ cmake wrapPython ];
diff --git a/nixpkgs/pkgs/tools/system/rsyslog/default.nix b/nixpkgs/pkgs/tools/system/rsyslog/default.nix
index 8e1e51469dd1..acf56b1558f1 100644
--- a/nixpkgs/pkgs/tools/system/rsyslog/default.nix
+++ b/nixpkgs/pkgs/tools/system/rsyslog/default.nix
@@ -14,11 +14,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "rsyslog";
-  version = "8.2108.0";
+  version = "8.2112.0";
 
   src = fetchurl {
     url = "https://www.rsyslog.com/files/download/rsyslog/${pname}-${version}.tar.gz";
-    sha256 = "sha256-SCbCttCBqclfRp+wEVvj+VEgZSl9PeAOxRN1jNswsdk=";
+    sha256 = "sha256-aiqXOGHpJm2ze9K3ufZytrlwv810Ojl7ju5rDcSFLEE=";
   };
 
   #patches = [ ./fix-gnutls-detection.patch ];
diff --git a/nixpkgs/pkgs/tools/system/s6-rc/default.nix b/nixpkgs/pkgs/tools/system/s6-rc/default.nix
index ab4ea7804942..0144a605e408 100644
--- a/nixpkgs/pkgs/tools/system/s6-rc/default.nix
+++ b/nixpkgs/pkgs/tools/system/s6-rc/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "s6-rc";
-  version = "0.5.2.3";
-  sha256 = "1xyaplwzvqnb53mg59a7jklakzwsiqivp6qggsry3sbaw4hf3d5j";
+  version = "0.5.3.0";
+  sha256 = "09rznjlz988fk9pff6mxc3dknwh2mibbawr9g62gcscmscmiv8wk";
 
   description = "A service manager for s6-based systems";
   platforms = lib.platforms.unix;
diff --git a/nixpkgs/pkgs/tools/system/s6/default.nix b/nixpkgs/pkgs/tools/system/s6/default.nix
index dc64afa6246f..f1215f9934d7 100644
--- a/nixpkgs/pkgs/tools/system/s6/default.nix
+++ b/nixpkgs/pkgs/tools/system/s6/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "s6";
-  version = "2.11.0.0";
-  sha256 = "1a3lj0xfhn1w3a4ygqsxy8q4dr3n48hnwml4xzdpz3nrikhy8if5";
+  version = "2.11.0.1";
+  sha256 = "02pr4q4cr9wc8i8ad8s6184a6fyndpmpnylgxwhfnkk3hx2j0zxd";
 
   description = "skarnet.org's small & secure supervision software suite";
 
diff --git a/nixpkgs/pkgs/tools/system/sg3_utils/default.nix b/nixpkgs/pkgs/tools/system/sg3_utils/default.nix
index 8d867c76e1ae..5aca34e344ba 100644
--- a/nixpkgs/pkgs/tools/system/sg3_utils/default.nix
+++ b/nixpkgs/pkgs/tools/system/sg3_utils/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "sg3_utils";
-  version = "1.46r862";
+  version = "1.47";
 
   src = fetchurl {
     url = "https://sg.danny.cz/sg/p/sg3_utils-${version}.tgz";
-    sha256 = "s2UmU+p3s7Hoe+GFri2q+/3XLBICc+h04cxM86yaAs8=";
+    sha256 = "sha256-hnPH+sqEm2s0dkMy0qqR9y2wW/9zgruDbQaIeVGZw+E=";
   };
 
   meta = with lib; {
diff --git a/nixpkgs/pkgs/tools/system/sleuthkit/default.nix b/nixpkgs/pkgs/tools/system/sleuthkit/default.nix
index 175c34020307..692746e1f7ff 100644
--- a/nixpkgs/pkgs/tools/system/sleuthkit/default.nix
+++ b/nixpkgs/pkgs/tools/system/sleuthkit/default.nix
@@ -1,14 +1,14 @@
 { lib, stdenv, fetchFromGitHub, autoreconfHook, libewf, afflib, openssl, zlib, openjdk, perl, ant }:
 
 stdenv.mkDerivation rec {
-  version = "4.11.0";
+  version = "4.11.1";
   pname = "sleuthkit";
 
   sleuthsrc = fetchFromGitHub {
     owner = "sleuthkit";
     repo = "sleuthkit";
     rev = "${pname}-${version}";
-    sha256 = "1dh06k8grrj3wcx3h9m490p69bw41dz6cv8j5j1drpldmv67k3ki";
+    sha256 = "sha256-TM8My4dAZigukwMUNDnP3aVCQ8JDdVv/KNkchDvCl9I=";
   };
 
   # Fetch libraries using a fixed output derivation
diff --git a/nixpkgs/pkgs/tools/system/stress-ng/default.nix b/nixpkgs/pkgs/tools/system/stress-ng/default.nix
index 46a1fdfd8d3e..3fda2ec6a376 100644
--- a/nixpkgs/pkgs/tools/system/stress-ng/default.nix
+++ b/nixpkgs/pkgs/tools/system/stress-ng/default.nix
@@ -1,14 +1,16 @@
-{ lib, stdenv, fetchurl
+{ lib, stdenv, fetchFromGitHub
 , attr, judy, keyutils, libaio, libapparmor, libbsd, libcap, libgcrypt, lksctp-tools, zlib
 }:
 
 stdenv.mkDerivation rec {
   pname = "stress-ng";
-  version = "0.13.03";
+  version = "0.13.09";
 
-  src = fetchurl {
-    url = "https://kernel.ubuntu.com/~cking/tarballs/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "sha256-PmDWBeN42GqFkaMNblV77XCdgqWxlhY3gALNj/ADeos=";
+  src = fetchFromGitHub {
+    owner = "ColinIanKing";
+    repo = pname;
+    rev = "V${version}";
+    hash = "sha256-BOOB5fA/Cy1gsRA4j8aj3lVY2y4OvIfoiRqOIY9nZzM=";
   };
 
   postPatch = ''
@@ -62,9 +64,9 @@ stdenv.mkDerivation rec {
       hardware. However, it has never been intended to be used as a precise benchmark
       test suite, so do NOT use it in this manner.
     '';
-    homepage = "https://kernel.ubuntu.com/~cking/stress-ng/";
-    downloadPage = "https://kernel.ubuntu.com/~cking/tarballs/stress-ng/";
-    changelog = "https://kernel.ubuntu.com/git/cking/stress-ng.git/plain/debian/changelog?h=V${version}";
+    homepage = "https://github.com/ColinIanKing/stress-ng";
+    downloadPage = "https://github.com/ColinIanKing/stress-ng/tags";
+    changelog = "https://github.com/ColinIanKing/stress-ng/raw/V${version}/debian/changelog";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ c0bw3b ];
     platforms = platforms.unix;
diff --git a/nixpkgs/pkgs/tools/system/symlinks/default.nix b/nixpkgs/pkgs/tools/system/symlinks/default.nix
index ad275a2d4479..8d1213c0afef 100644
--- a/nixpkgs/pkgs/tools/system/symlinks/default.nix
+++ b/nixpkgs/pkgs/tools/system/symlinks/default.nix
@@ -1,12 +1,14 @@
-{ fetchurl, lib, stdenv }:
+{ fetchFromGitHub, lib, stdenv }:
 
 stdenv.mkDerivation rec {
   pname = "symlinks";
   version = "1.4.3";
 
-  src = fetchurl {
-    url = "https://github.com/brandt/symlinks/archive/v${version}.tar.gz";
-    sha256 = "1cihrd3dap52z1msdhhgda7b7wy1l5ysfvyba8yxb3zjk0l5n417";
+  src = fetchFromGitHub {
+    owner = "brandt";
+    repo = "symlinks";
+    rev = "v${version}";
+    sha256 = "EMWd7T/k4v1uvXe2QxhyPoQKUpKIUANE9AOwX461FgU=";
   };
 
   buildFlags = [ "CC=${stdenv.cc}/bin/cc" ];
diff --git a/nixpkgs/pkgs/tools/system/syslog-ng/default.nix b/nixpkgs/pkgs/tools/system/syslog-ng/default.nix
index 41da0b99fd98..51f8cd94da1e 100644
--- a/nixpkgs/pkgs/tools/system/syslog-ng/default.nix
+++ b/nixpkgs/pkgs/tools/system/syslog-ng/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "syslog-ng";
-  version = "3.28.1";
+  version = "3.34.1";
 
   src = fetchurl {
     url = "https://github.com/${pname}/${pname}/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
-    sha256 = "1s56q8k69sdrqsh3y9lr4di01fqw7xb49wr0dz75jmz084yg8kmg";
+    sha256 = "sha256-zs457BxoyI1JNwXgpSi4PQONo4TonUg4OTzMdfYqLUw=";
   };
 
   nativeBuildInputs = [ pkg-config which ];
diff --git a/nixpkgs/pkgs/tools/system/thinkfan/default.nix b/nixpkgs/pkgs/tools/system/thinkfan/default.nix
index a53ef4ae9f85..8da87ecfa719 100644
--- a/nixpkgs/pkgs/tools/system/thinkfan/default.nix
+++ b/nixpkgs/pkgs/tools/system/thinkfan/default.nix
@@ -11,13 +11,13 @@
 
 stdenv.mkDerivation rec {
   pname = "thinkfan";
-  version = "1.2.2";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "vmatare";
     repo = "thinkfan";
     rev = version;
-    sha256 = "01l1pnj1cgy3dwgyys2s5iqzyv6kk47vlpy09qjafk8py21ijik3";
+    sha256 = "sha256-ZCZqi7A4qdWtDSkTw6ktHIZnPhdes2AX7+QBroaDDfI=";
   };
 
   postPatch = ''
diff --git a/nixpkgs/pkgs/tools/system/tree/default.nix b/nixpkgs/pkgs/tools/system/tree/default.nix
index acf0813b3ac2..03ffee077d9f 100644
--- a/nixpkgs/pkgs/tools/system/tree/default.nix
+++ b/nixpkgs/pkgs/tools/system/tree/default.nix
@@ -4,22 +4,20 @@ let
   # These settings are found in the Makefile, but there seems to be no
   # way to select one ore the other setting other than editing the file
   # manually, so we have to duplicate the know how here.
-  systemFlags = with stdenv;
-    if isDarwin then ''
-      CFLAGS="-O2 -Wall -fomit-frame-pointer"
-      LDFLAGS=
-      EXTRA_OBJS=strverscmp.o
-    '' else if isCygwin then ''
-      CFLAGS="-O2 -Wall -fomit-frame-pointer -DCYGWIN"
-      LDFLAGS=-s
-      TREE_DEST=tree.exe
-      EXTRA_OBJS=strverscmp.o
-    '' else if (isFreeBSD || isOpenBSD) then ''
-      CFLAGS="-O2 -Wall -fomit-frame-pointer"
-      LDFLAGS=-s
-      EXTRA_OBJS=strverscmp.o
-    '' else
-    ""; # use linux flags by default
+  systemFlags = lib.optionalString stdenv.isDarwin ''
+    CFLAGS="-O2 -Wall -fomit-frame-pointer"
+    LDFLAGS=
+    EXTRA_OBJS=strverscmp.o
+  '' + lib.optionalString stdenv.isCygwin ''
+    CFLAGS="-O2 -Wall -fomit-frame-pointer -DCYGWIN"
+    LDFLAGS=-s
+    TREE_DEST=tree.exe
+    EXTRA_OBJS=strverscmp.o
+  '' + lib.optionalString (stdenv.isFreeBSD || stdenv.isOpenBSD) ''
+    CFLAGS="-O2 -Wall -fomit-frame-pointer"
+    LDFLAGS=-s
+    EXTRA_OBJS=strverscmp.o
+  ''; # use linux flags by default
 in
 stdenv.mkDerivation rec {
   pname = "tree";
@@ -30,27 +28,29 @@ stdenv.mkDerivation rec {
     sha256 = "1hmpz6k0mr6salv0nprvm1g0rdjva1kx03bdf1scw8a38d5mspbi";
   };
 
-  configurePhase = ''
+  preConfigure = ''
     sed -i Makefile -e 's|^OBJS=|OBJS=$(EXTRA_OBJS) |'
-    makeFlagsArray=(
-      prefix=$out
-      MANDIR=$out/share/man/man1
+    makeFlagsArray+=(
       ${systemFlags}
-      CC="$CC"
+      "CC=$CC"
     )
   '';
 
-  meta = {
+  makeFlags = [
+    "prefix=${placeholder "out"}"
+    "MANDIR=${placeholder "out"}/share/man/man1"
+  ];
+
+  meta = with lib; {
     homepage = "http://mama.indstate.edu/users/ice/tree/";
     description = "Command to produce a depth indented directory listing";
-    license = lib.licenses.gpl2;
-
+    license = licenses.gpl2;
     longDescription = ''
       Tree is a recursive directory listing command that produces a
       depth indented listing of files, which is colorized ala dircolors if
       the LS_COLORS environment variable is set and output is to tty.
     '';
-
-    platforms = lib.platforms.all;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ SuperSandro2000 ];
   };
 }
diff --git a/nixpkgs/pkgs/tools/system/uefitool/variants.nix b/nixpkgs/pkgs/tools/system/uefitool/variants.nix
index 0e8d7285aab6..adf4884e2af1 100644
--- a/nixpkgs/pkgs/tools/system/uefitool/variants.nix
+++ b/nixpkgs/pkgs/tools/system/uefitool/variants.nix
@@ -3,8 +3,8 @@ let
   common = opts: libsForQt5.callPackage (import ./common.nix opts) {};
 in rec {
   new-engine = common rec {
-    version = "A58";
-    sha256 = "131hkyr07fg7rnr938yyj0gk528x3402dhisav221c27v84zb7pn";
+    version = "A59";
+    sha256 = "0m6hkj33vr75mrpjpdc0l38xv64kq73ph2mr2v9bs3wx4qlvg606";
     installFiles = [ "UEFITool/UEFITool" "UEFIFind/UEFIFind" "UEFIExtract/UEFIExtract" ];
   };
   old-engine = common rec {
diff --git a/nixpkgs/pkgs/tools/system/uptimed/default.nix b/nixpkgs/pkgs/tools/system/uptimed/default.nix
index 8e0265755355..93dcca90a264 100644
--- a/nixpkgs/pkgs/tools/system/uptimed/default.nix
+++ b/nixpkgs/pkgs/tools/system/uptimed/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "uptimed";
-  version = "0.4.4";
+  version = "0.4.6";
 
   src = fetchFromGitHub {
-    sha256 = "sha256-DSvxE9BZpjpDQi2SxbM5iuAAHgUCaiwimcgxivD4mck=";
+    sha256 = "sha256-aYP20O/8QotmnpryiFnFAfrpyk5f+0OkbkGxWf2Ug9w=";
     rev = "v${version}";
     repo = "uptimed";
     owner = "rpodgorny";
diff --git a/nixpkgs/pkgs/tools/system/zenith/default.nix b/nixpkgs/pkgs/tools/system/zenith/default.nix
index 1e36614c4274..3705c9cad90c 100644
--- a/nixpkgs/pkgs/tools/system/zenith/default.nix
+++ b/nixpkgs/pkgs/tools/system/zenith/default.nix
@@ -18,12 +18,13 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1bn364rmp0q86rd7vgv4n7x09cdf9m4njcaq92jnk85ni6h147ax";
   };
 
-  cargoBuildFlags = lib.optionals nvidiaSupport [ "--features" "nvidia" ];
   cargoSha256 = "0c2mk2bcz4qjyqmf11yqhnhy4pqxr77b3c1gvr5jfmjshx4ff7v2";
 
   nativeBuildInputs = lib.optional nvidiaSupport makeWrapper;
   buildInputs = lib.optionals stdenv.isDarwin [ IOKit ];
 
+  buildFeatures = lib.optional nvidiaSupport "nvidia";
+
   postInstall = lib.optionalString nvidiaSupport ''
     wrapProgram $out/bin/zenith \
       --suffix LD_LIBRARY_PATH : "/run/opengl-driver/lib"