lol
1{ lib, buildGoModule, fetchFromGitHub, testers, carapace }:
2
3buildGoModule rec {
4 pname = "carapace";
5 version = "0.28.3";
6
7 src = fetchFromGitHub {
8 owner = "rsteube";
9 repo = "${pname}-bin";
10 rev = "v${version}";
11 hash = "sha256-d56tA+tTlnwE9t0toJCCpRwNXGNwNVastdcJPunCO0c=";
12 };
13
14 vendorHash = "sha256-jbKF68fPwMigKSoSOP6pJMjn+PW2yeI/oZKv2ytoHuY=";
15
16 ldflags = [
17 "-s"
18 "-w"
19 "-X main.version=${version}"
20 ];
21
22 subPackages = [ "./cmd/carapace" ];
23
24 tags = [ "release" ];
25
26 preBuild = ''
27 go generate ./...
28 '';
29
30 passthru.tests.version = testers.testVersion { package = carapace; };
31
32 meta = with lib; {
33 description = "Multi-shell multi-command argument completer";
34 homepage = "https://rsteube.github.io/carapace-bin/";
35 maintainers = with maintainers; [ star-szr ];
36 license = licenses.mit;
37 mainProgram = "carapace";
38 };
39}