nixpkgs/pkgs/by-name/ni/nix-top/package.nix
Matt McHenry c8e81ed764 nix-top: init at 0.3.0
This was removed in 329081dc4b, 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.
2024-07-06 22:28:31 -04:00

62 lines
1.3 KiB
Nix

{
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";
};
}