blob: cf8c3ae3622814f3b41d9a46e745e50fd7aa12ab (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
{ buildGoModule
, fetchFromGitHub
, installShellFiles
, nix-update-script
, lib
}:
buildGoModule rec {
pname = "doggo";
version = "1.0.4";
src = fetchFromGitHub {
owner = "mr-karan";
repo = "doggo";
rev = "v${version}";
hash = "sha256-SD/BcJxoc5Oi8+nAs+CWBEcbgtaohykNlZ14jJvEWew=";
};
vendorHash = "sha256-JIc6/G1hMf8+oIe4OMc+b0th5MCgi5Mwp3AxW4OD1lg=";
nativeBuildInputs = [ installShellFiles ];
subPackages = [ "cmd/doggo" ];
ldflags = [
"-s"
"-X main.buildVersion=v${version}"
];
postInstall = ''
installShellCompletion --cmd doggo \
--bash <($out/bin/doggo completions bash) \
--fish <($out/bin/doggo completions fish) \
--zsh <($out/bin/doggo completions zsh)
'';
passthru.updateScript = nix-update-script { };
meta = with lib; {
homepage = "https://github.com/mr-karan/doggo";
description = "Command-line DNS Client for Humans. Written in Golang";
mainProgram = "doggo";
longDescription = ''
doggo is a modern command-line DNS client (like dig) written in Golang.
It outputs information in a neat concise manner and supports protocols like DoH, DoT, DoQ, and DNSCrypt as well
'';
license = licenses.gpl3Only;
maintainers = with maintainers; [ georgesalkhouri ];
};
}
|