about summary refs log tree commit diff
path: root/pkgs/servers/tailscale/default.nix
diff options
context:
space:
mode:
authorPol Dellaiera <pol.dellaiera@protonmail.com>2024-06-16 22:20:46 +0200
committerGitHub <noreply@github.com>2024-06-16 22:20:46 +0200
commitca3274ea1323088226921d1e5b0fbc7026896d07 (patch)
treedd35cc9fe12a61745eee483900ff9c884387f017 /pkgs/servers/tailscale/default.nix
parent2a37f1e63af750c0474405158b7acaecee151940 (diff)
parent7c0b81b097eab0ff7a72381f5b8d6974e4b4db2d (diff)
Merge pull request #319894 from peterablehmann/tailscale
tailscale: add shell completions
Diffstat (limited to 'pkgs/servers/tailscale/default.nix')
-rw-r--r--pkgs/servers/tailscale/default.nix9
1 files changed, 8 insertions, 1 deletions
diff --git a/pkgs/servers/tailscale/default.nix b/pkgs/servers/tailscale/default.nix
index a4faeb9b9a10a..a69e7eb3aecdd 100644
--- a/pkgs/servers/tailscale/default.nix
+++ b/pkgs/servers/tailscale/default.nix
@@ -10,6 +10,7 @@
 , shadow
 , procps
 , nixosTests
+, installShellFiles
 }:
 
 let
@@ -37,7 +38,7 @@ buildGoModule {
 
   vendorHash = "sha256-SUjoeOFYz6zbEgv/vND7kEXbuWlZDrUKF2Dmqsf/KVw=";
 
-  nativeBuildInputs = lib.optionals stdenv.isLinux [ makeWrapper ];
+  nativeBuildInputs = lib.optionals stdenv.isLinux [ makeWrapper ] ++ [ installShellFiles ];
 
   CGO_ENABLED = 0;
 
@@ -63,6 +64,12 @@ buildGoModule {
       --prefix PATH : ${lib.makeBinPath [ iproute2 iptables getent shadow ]} \
       --suffix PATH : ${lib.makeBinPath [ procps ]}
 
+    local INSTALL="$out/bin/tailscale"
+    installShellCompletion --cmd tailscale \
+      --bash <($out/bin/tailscale completion bash) \
+      --fish <($out/bin/tailscale completion fish) \
+      --zsh <($out/bin/tailscale completion zsh)
+
     sed -i -e "s#/usr/sbin#$out/bin#" -e "/^EnvironmentFile/d" ./cmd/tailscaled/tailscaled.service
     install -D -m0444 -t $out/lib/systemd/system ./cmd/tailscaled/tailscaled.service
   '';