about summary refs log tree commit diff
path: root/pkgs/by-name/ni
diff options
context:
space:
mode:
authorMatt McHenry2024-07-02 20:21:33 -0400
committerMatt McHenry2024-07-06 22:28:31 -0400
commitc8e81ed764bb81010edec8af09ceaad7e7f916b1 (patch)
tree6e92cf376bdc40b5265eec72ec0d916ae5ffa6c2 /pkgs/by-name/ni
parent9f4128e00b0ae8ec65918efeba59db998750ead6 (diff)
nix-top: init at 0.3.0
This was removed in 329081dc4b72a2b177e034b67fd14484eddf150c, but
since I find this package useful, I'll make an attempt to maintain it.
Fortunately someone had forked the repo before it was deleted.

The derivation has been modified slightly to reflect PR feedback.
Diffstat (limited to 'pkgs/by-name/ni')
-rw-r--r--pkgs/by-name/ni/nix-top/package.nix62
1 files changed, 62 insertions, 0 deletions
diff --git a/pkgs/by-name/ni/nix-top/package.nix b/pkgs/by-name/ni/nix-top/package.nix
new file mode 100644
index 000000000000..55170ec40896
--- /dev/null
+++ b/pkgs/by-name/ni/nix-top/package.nix
@@ -0,0 +1,62 @@
+{
+  binutils-unwrapped, # strings
+  coreutils,
+  getent, # /etc/passwd
+  fetchFromGitHub,
+  findutils,
+  lib,
+  makeWrapper,
+  ncurses, # tput
+  ruby,
+  stdenv,
+}:
+
+# No gems used, so mkDerivation is fine.
+let
+  additionalPath = lib.makeBinPath [
+    getent
+    ncurses
+    binutils-unwrapped
+    coreutils
+    findutils
+  ];
+in
+stdenv.mkDerivation rec {
+  pname = "nix-top";
+  version = "0.3.0";
+
+  src = fetchFromGitHub {
+    owner = "jerith666";
+    repo = "nix-top";
+    rev = "v${version}";
+    hash = "sha256-w/TKzbZmMt4CX2KnLwPvR1ydp5NNlp9nNx78jJvhp54=";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = [ ruby ];
+
+  installPhase =
+    ''
+      runHook preInstall
+      mkdir -p $out/libexec/nix-top
+      install -D -m755 ./nix-top $out/bin/nix-top
+      wrapProgram $out/bin/nix-top \
+        --prefix PATH : "$out/libexec/nix-top:${additionalPath}"
+    ''
+    + lib.optionalString stdenv.isDarwin ''
+      ln -s /bin/stty $out/libexec/nix-top
+    ''
+    + ''
+      runHook postInstall
+    '';
+
+  meta = {
+    description = "Tracks what nix is building";
+    homepage = "https://github.com/jerith666/nix-top";
+    license = lib.licenses.mit;
+    maintainers = [ lib.maintainers.jerith666 ];
+    platforms = lib.platforms.unix;
+    mainProgram = "nix-top";
+  };
+}