nixpkgs/pkgs/development/tools/golangci-lint/default.nix

40 lines
1.0 KiB
Nix
Raw Normal View History

2020-07-08 10:20:00 +01:00
{ buildGoModule, fetchFromGitHub, lib, installShellFiles }:
2018-07-29 18:16:53 +01:00
buildGoModule rec {
pname = "golangci-lint";
2021-03-04 16:24:21 +00:00
version = "1.38.0";
2018-07-29 18:16:53 +01:00
src = fetchFromGitHub {
owner = "golangci";
repo = "golangci-lint";
rev = "v${version}";
2021-03-04 16:24:21 +00:00
sha256 = "sha256-hJGyK+hrP6CuSkODNsN8d2IhteKe/fXTF9GxbF7TQOk=";
2018-07-29 18:16:53 +01:00
};
2021-03-04 16:24:21 +00:00
vendorSha256 = "sha256-zTWipGoWFndBSH8V+QxWmGv+8RoFa+OGT4BhAq/yIbE=";
doCheck = false;
subPackages = [ "cmd/golangci-lint" ];
2020-07-08 10:20:00 +01:00
nativeBuildInputs = [ installShellFiles ];
2021-02-22 17:10:41 +00:00
preBuild = ''
2021-02-22 17:18:32 +00:00
buildFlagsArray+=("-ldflags=-s -w -X main.version=${version} -X main.commit=v${version} -X main.date=19700101-00:00:00")
2021-02-22 17:10:41 +00:00
'';
2020-07-08 10:21:00 +01:00
2020-07-08 10:20:00 +01:00
postInstall = ''
for shell in bash zsh; do
HOME=$TMPDIR $out/bin/golangci-lint completion $shell > golangci-lint.$shell
installShellCompletion golangci-lint.$shell
done
'';
meta = with lib; {
2020-07-08 10:22:00 +01:00
description = "Fast linters Runner for Go";
homepage = "https://golangci-lint.run/";
2021-02-22 17:10:41 +00:00
license = licenses.gpl3Plus;
maintainers = with maintainers; [ anpryl manveru mic92 ];
2018-07-29 18:16:53 +01:00
};
}