From f7533ad15f3c5f7ff1ac2bb1f73df9e7bbf5fe99 Mon Sep 17 00:00:00 2001 From: Moraxyc Date: Wed, 10 Jul 2024 22:44:27 +0800 Subject: [PATCH] artalk: add completion scripts --- pkgs/by-name/ar/artalk/package.nix | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/ar/artalk/package.nix b/pkgs/by-name/ar/artalk/package.nix index a6121762400c..a0c9f3ae6cd5 100644 --- a/pkgs/by-name/ar/artalk/package.nix +++ b/pkgs/by-name/ar/artalk/package.nix @@ -3,8 +3,10 @@ buildGoModule, fetchFromGitHub, artalk, - testers, fetchurl, + installShellFiles, + stdenv, + testers, }: buildGoModule rec { pname = "artalk"; @@ -37,11 +39,20 @@ buildGoModule rec { cp -r ./artalk_ui/* ./public ''; - postInstall = '' - # work around case insensitive file systems - mv $out/bin/Artalk $out/bin/artalk.tmp - mv $out/bin/artalk.tmp $out/bin/artalk - ''; + nativeBuildInputs = [ installShellFiles ]; + + postInstall = + '' + # work around case insensitive file systems + mv $out/bin/Artalk $out/bin/artalk.tmp + mv $out/bin/artalk.tmp $out/bin/artalk + '' + + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd artalk \ + --bash <($out/bin/artalk completion bash) \ + --fish <($out/bin/artalk completion fish) \ + --zsh <($out/bin/artalk completion zsh) + ''; passthru.tests = { version = testers.testVersion { package = artalk; };