summary refs log tree commit diff
path: root/pkgs/tools/nix
diff options
context:
space:
mode:
authorMalte Brandy <malte.brandy@maralorn.de>2022-03-09 13:15:28 +0100
committerMalte Brandy <malte.brandy@maralorn.de>2022-03-09 13:15:28 +0100
commit5c924dc3b9a51b4b45b0c6e9e775b5ae5c4ff3f2 (patch)
treeff35e90340e75357a46ab9391fcda908b7f31ea3 /pkgs/tools/nix
parent55face65be766a52d8277404b3b2023778e7f408 (diff)
downloadnixpkgs-5c924dc3b9a51b4b45b0c6e9e775b5ae5c4ff3f2.tar
nixpkgs-5c924dc3b9a51b4b45b0c6e9e775b5ae5c4ff3f2.tar.gz
nixpkgs-5c924dc3b9a51b4b45b0c6e9e775b5ae5c4ff3f2.tar.bz2
nixpkgs-5c924dc3b9a51b4b45b0c6e9e775b5ae5c4ff3f2.tar.lz
nixpkgs-5c924dc3b9a51b4b45b0c6e9e775b5ae5c4ff3f2.tar.xz
nixpkgs-5c924dc3b9a51b4b45b0c6e9e775b5ae5c4ff3f2.tar.zst
nixpkgs-5c924dc3b9a51b4b45b0c6e9e775b5ae5c4ff3f2.zip
nix-output-monitor: Add zsh completion for nom-build
Diffstat (limited to 'pkgs/tools/nix')
-rw-r--r--pkgs/tools/nix/nix-output-monitor/default.nix8
-rwxr-xr-xpkgs/tools/nix/nix-output-monitor/update.sh15
2 files changed, 22 insertions, 1 deletions
diff --git a/pkgs/tools/nix/nix-output-monitor/default.nix b/pkgs/tools/nix/nix-output-monitor/default.nix
index 214a25b3680..caa9abb9a1d 100644
--- a/pkgs/tools/nix/nix-output-monitor/default.nix
+++ b/pkgs/tools/nix/nix-output-monitor/default.nix
@@ -16,6 +16,7 @@
   filepath,
   generic-optics,
   HUnit,
+  installShellFiles,
   lib,
   lock-file,
   MemoTrie,
@@ -140,11 +141,18 @@ mkDerivation {
   maintainers = with lib.maintainers; [maralorn];
   passthru.updateScript = ./update.sh;
   testTarget = "unit-tests";
+  buildTools = [installShellFiles];
   postInstall = ''
     cat > $out/bin/nom-build << EOF
     #!${runtimeShell}
     ${expect}/bin/unbuffer nix-build "\$@" 2>&1 | exec $out/bin/nom
     EOF
     chmod a+x $out/bin/nom-build
+    installShellCompletion --zsh --name _nom-build ${
+      builtins.toFile "completion.zsh" ''
+        #compdef nom-build
+        compdef nom-build=nix-build
+      ''
+    }
   '';
 }
diff --git a/pkgs/tools/nix/nix-output-monitor/update.sh b/pkgs/tools/nix/nix-output-monitor/update.sh
index 938736e9194..ad5da000030 100755
--- a/pkgs/tools/nix/nix-output-monitor/update.sh
+++ b/pkgs/tools/nix/nix-output-monitor/update.sh
@@ -21,16 +21,29 @@ cat > "$derivation_file" << EOF
 # This file has been autogenerate with cabal2nix.
 # Update via ./update.sh"
 EOF
-cabal2nix --extra-arguments expect --extra-arguments runtimeShell --maintainer maralorn "https://github.com/maralorn/nix-output-monitor/archive/refs/tags/${new_version}.tar.gz" | head -n-1 >> "$derivation_file"
+
+cabal2nix \
+  --extra-arguments expect \
+  --extra-arguments runtimeShell\
+  --extra-arguments installShellFiles\
+  --maintainer maralorn \
+  "https://github.com/maralorn/nix-output-monitor/archive/refs/tags/${new_version}.tar.gz" \
+  | head -n-1 >> "$derivation_file"
+
 cat >> "$derivation_file" << EOF
     passthru.updateScript = ./update.sh;
     testTarget = "unit-tests";
+    buildTools = [ installShellFiles ];
     postInstall = ''
         cat > \$out/bin/nom-build << EOF
         #!\${runtimeShell}
         \${expect}/bin/unbuffer nix-build "\\\$@" 2>&1 | exec \$out/bin/nom
         EOF
         chmod a+x \$out/bin/nom-build
+        installShellCompletion --zsh --name _nom-build \${builtins.toFile "completion.zsh" ''
+            #compdef nom-build
+            compdef nom-build=nix-build
+        ''}
     '';
 }
 EOF