biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / tools / yq-go / default.nix
blobf4d8137c33ebaf30a9970fa2201002e9206de57d
1 { lib, buildGoModule, fetchFromGitHub, installShellFiles, runCommand, yq-go }:
3 buildGoModule rec {
4   pname = "yq-go";
5   version = "4.43.1";
7   src = fetchFromGitHub {
8     owner = "mikefarah";
9     repo = "yq";
10     rev = "v${version}";
11     hash = "sha256-AQOHVuDREp6OpwlPFwpCUOQACOsDRH0uM6WwKyEK4JI=";
12   };
14   vendorHash = "sha256-9GCqZS0fguJo8GkVPMgbstEVzrjIS0kdbNQEaT1HSFI=";
16   nativeBuildInputs = [ installShellFiles ];
18   postInstall = ''
19     installShellCompletion --cmd yq \
20       --bash <($out/bin/yq shell-completion bash) \
21       --fish <($out/bin/yq shell-completion fish) \
22       --zsh <($out/bin/yq shell-completion zsh)
23   '';
25   passthru.tests = {
26     simple = runCommand "${pname}-test" { } ''
27       echo "test: 1" | ${yq-go}/bin/yq eval -j > $out
28       [ "$(cat $out | tr -d $'\n ')" = '{"test":1}' ]
29     '';
30   };
32   meta = with lib; {
33     description = "Portable command-line YAML processor";
34     homepage = "https://mikefarah.gitbook.io/yq/";
35     changelog = "https://github.com/mikefarah/yq/raw/v${version}/release_notes.txt";
36     mainProgram = "yq";
37     license = [ licenses.mit ];
38     maintainers = with maintainers; [ lewo SuperSandro2000 ];
39   };