biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / tools / database / atlas / default.nix
blobb5d09806489a17c08d970205c8d52788584e27b6
1 { lib, buildGoModule, fetchFromGitHub, installShellFiles, testers, atlas }:
3 buildGoModule rec {
4   pname = "atlas";
5   version = "0.21.1";
7   src = fetchFromGitHub {
8     owner = "ariga";
9     repo = "atlas";
10     rev = "v${version}";
11     hash = "sha256-i0nqjlL22sM8eVXCD/SBJyNdy0l0Hq4rjW0Lr3CRZlE=";
12   };
14   modRoot = "cmd/atlas";
16   proxyVendor = true;
17   vendorHash = "sha256-48UmLwp93SjwPPrdySFVApjVf1Rsj3oNhi1lha4ZvyE=";
19   nativeBuildInputs = [ installShellFiles ];
21   ldflags = [ "-s" "-w" "-X ariga.io/atlas/cmd/atlas/internal/cmdapi.version=v${version}" ];
23   subPackages = [ "." ];
25   postInstall = ''
26     installShellCompletion --cmd atlas \
27       --bash <($out/bin/atlas completion bash) \
28       --fish <($out/bin/atlas completion fish) \
29       --zsh <($out/bin/atlas completion zsh)
30   '';
32   passthru.tests.version = testers.testVersion {
33     package = atlas;
34     command = "atlas version";
35     version = "v${version}";
36   };
38   meta = with lib; {
39     description = "A modern tool for managing database schemas";
40     homepage = "https://atlasgo.io/";
41     changelog = "https://github.com/ariga/atlas/releases/tag/v${version}";
42     license = licenses.asl20;
43     maintainers = [ maintainers.marsam ];
44     mainProgram = "atlas";
45   };