diff --git a/pkgs/tools/system/nvitop/default.nix b/pkgs/tools/system/nvitop/default.nix new file mode 100644 index 000000000000..70a0311c3e43 --- /dev/null +++ b/pkgs/tools/system/nvitop/default.nix @@ -0,0 +1,37 @@ +{ lib +, stdenv +, python3Packages +, fetchFromGitHub +, makeWrapper +}: + +python3Packages.buildPythonApplication rec { + pname = "nvitop"; + version = "0.10.0"; + + src = fetchFromGitHub { + owner = "XuehaiPan"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-nGdEMLxpw2Ts0dypkoZg3r2NF4IeT1ykbRmrmf9qxrA="; + }; + + propagatedBuildInputs = with python3Packages; [ + cachetools + psutil + termcolor + nvidia-ml-py + ]; + + checkPhase = '' + $out/bin/nvitop --help + ''; + + meta = with lib; { + description = "An interactive NVIDIA-GPU process viewer, the one-stop solution for GPU process management"; + homepage = "https://github.com/XuehaiPan/nvitop"; + license = licenses.gpl3; + maintainers = with maintainers; [ GaetanLepage ]; + platforms = with platforms; linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 81925075b329..49fe67f8c25b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21300,6 +21300,8 @@ with pkgs; nvidia-optical-flow-sdk = callPackage ../development/libraries/nvidia-optical-flow-sdk { }; + nvitop = callPackage ../tools/system/nvitop { }; + nvtop = callPackage ../tools/system/nvtop { }; nvtop-nvidia = callPackage ../tools/system/nvtop { amd = false; }; nvtop-amd = callPackage ../tools/system/nvtop { nvidia = false; };