{ lib, buildGoModule, fetchgit, installShellFiles, }: let version = "0.0.3"; rev = "b70dd08c7e50d309a9e0364726bb10e0ef5a8698"; in buildGoModule { pname = "tang"; inherit version; src = fetchgit { url = "https://tangled.org/onev.cat/tang"; inherit rev; hash = "sha256-67sM40z9urUB5KxkaiJjRcscCcqdG+WLqjpIxDp1LXg="; }; vendorHash = "sha256-OBKIlZUGbvH6Om5/IicVmpXddROpdsKpJe87YvKZnzo="; subPackages = [ "cmd/tang" ]; ldflags = [ "-s" "-w" "-X main.version=${version}" "-X main.commit=${rev}" ]; nativeBuildInputs = [ installShellFiles ]; postInstall = '' installShellCompletion --cmd tang \ --bash <($out/bin/tang completion bash) \ --zsh <($out/bin/tang completion zsh) \ --fish <($out/bin/tang completion fish) ''; meta = { description = "Command-line client for Tangled"; homepage = "https://tangled.org/onev.cat/tang"; changelog = "https://tangled.org/onev.cat/tang/commits/v${version}"; license = lib.licenses.mit; mainProgram = "tang"; platforms = lib.platforms.all; }; }