From 92eedad50b79f639eb42f8b97a68951b1a14cd09 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 29 Jul 2018 15:57:38 -0400 Subject: [PATCH 1/3] nix-top: init at 0.1.0 --- .../package-management/nix-top/default.nix | 50 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 52 insertions(+) create mode 100644 pkgs/tools/package-management/nix-top/default.nix diff --git a/pkgs/tools/package-management/nix-top/default.nix b/pkgs/tools/package-management/nix-top/default.nix new file mode 100644 index 00000000000..b334b1270cf --- /dev/null +++ b/pkgs/tools/package-management/nix-top/default.nix @@ -0,0 +1,50 @@ +{ stdenv +, lib +, fetchFromGitHub +, ruby +, makeWrapper +, procps # ps +, ncurses # tput +, binutils-unwrapped # strings +, findutils +}: + +# No gems used, so mkDerivation is fine. +let + additionalPath = lib.makeBinPath [ncurses procps binutils-unwrapped findutils]; +in +stdenv.mkDerivation rec { + name = "nix-top-${version}"; + version = "0.1.0"; + + src = fetchFromGitHub { + owner = "samueldr"; + repo = "nix-top"; + rev = "v${version}"; + sha256 = "0l50w90hs3kmdk5kb3cwjzkx38104j6n4ssqs6jpnqfc2znagpni"; + }; + + nativeBuildInputs = [ + makeWrapper + ]; + + buildInputs = [ + ruby + ]; + + installPhase = '' + mkdir -p $out/bin/ + cp ./nix-top $out/bin/nix-top + wrapProgram $out/bin/nix-top \ + --prefix PATH : "${additionalPath}" + ''; + + meta = with lib; { + description = "Tracks what nix is building"; + homepage = https://github.com/samueldr/nix-top; + license = licenses.mit; + maintainers = with maintainers; [ samueldr ]; + platforms = platforms.linux; + inherit version; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 644f5d821e6..3447004cdda 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21301,6 +21301,8 @@ with pkgs; nix-template-rpm = callPackage ../build-support/templaterpm { inherit (pythonPackages) python toposort; }; + nix-top = callPackage ../tools/package-management/nix-top { }; + nix-repl = callPackage ../tools/package-management/nix-repl { nix = nix1; }; nix-review = callPackage ../tools/package-management/nix-review { }; From e1dc63b41b09988ca5b53a53e570b9f48b5b8394 Mon Sep 17 00:00:00 2001 From: Samuel Dionne-Riel Date: Sun, 29 Jul 2018 22:09:02 -0400 Subject: [PATCH 2/3] nix-top: 0.1.0 -> 0.2.0 --- .../package-management/nix-top/default.nix | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/pkgs/tools/package-management/nix-top/default.nix b/pkgs/tools/package-management/nix-top/default.nix index b334b1270cf..561c5a63777 100644 --- a/pkgs/tools/package-management/nix-top/default.nix +++ b/pkgs/tools/package-management/nix-top/default.nix @@ -3,25 +3,27 @@ , fetchFromGitHub , ruby , makeWrapper -, procps # ps +, getent # /etc/passwd , ncurses # tput +, procps # ps , binutils-unwrapped # strings +, coreutils , findutils }: # No gems used, so mkDerivation is fine. let - additionalPath = lib.makeBinPath [ncurses procps binutils-unwrapped findutils]; + additionalPath = lib.makeBinPath [ getent ncurses binutils-unwrapped coreutils findutils ]; in stdenv.mkDerivation rec { name = "nix-top-${version}"; - version = "0.1.0"; + version = "0.2.0"; src = fetchFromGitHub { owner = "samueldr"; repo = "nix-top"; rev = "v${version}"; - sha256 = "0l50w90hs3kmdk5kb3cwjzkx38104j6n4ssqs6jpnqfc2znagpni"; + sha256 = "0560a9g8n4p764r3va1nn95iv4bg71g8h0wws1af2p5g553j4zps"; }; nativeBuildInputs = [ @@ -33,10 +35,13 @@ stdenv.mkDerivation rec { ]; installPhase = '' - mkdir -p $out/bin/ + mkdir -p $out/bin $out/libexec/nix-top cp ./nix-top $out/bin/nix-top + chmod +x $out/bin/nix-top wrapProgram $out/bin/nix-top \ - --prefix PATH : "${additionalPath}" + --prefix PATH : "$out/libexec/nix-top:${additionalPath}" + '' + stdenv.lib.optionalString stdenv.isDarwin '' + ln -s /bin/stty $out/libexec/nix-top ''; meta = with lib; { @@ -44,7 +49,7 @@ stdenv.mkDerivation rec { homepage = https://github.com/samueldr/nix-top; license = licenses.mit; maintainers = with maintainers; [ samueldr ]; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; inherit version; }; } From 8717de96a9d0441c28ce15063adb6f4821cdb3fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Mon, 30 Jul 2018 10:04:15 +0100 Subject: [PATCH 3/3] nix-top: simplify installPhase --- pkgs/tools/package-management/nix-top/default.nix | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/package-management/nix-top/default.nix b/pkgs/tools/package-management/nix-top/default.nix index 561c5a63777..a2cd0242839 100644 --- a/pkgs/tools/package-management/nix-top/default.nix +++ b/pkgs/tools/package-management/nix-top/default.nix @@ -33,11 +33,10 @@ stdenv.mkDerivation rec { buildInputs = [ ruby ]; - + installPhase = '' - mkdir -p $out/bin $out/libexec/nix-top - cp ./nix-top $out/bin/nix-top - chmod +x $out/bin/nix-top + 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}" '' + stdenv.lib.optionalString stdenv.isDarwin ''