diff options
Diffstat (limited to 'nixpkgs/pkgs/development/tools/checkmake/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/tools/checkmake/default.nix | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/checkmake/default.nix b/nixpkgs/pkgs/development/tools/checkmake/default.nix new file mode 100644 index 000000000000..f25a825e37d9 --- /dev/null +++ b/nixpkgs/pkgs/development/tools/checkmake/default.nix @@ -0,0 +1,60 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, installShellFiles +, pandoc +, go +}: + +buildGoModule rec { + pname = "checkmake"; + version = "0.2.2"; + + src = fetchFromGitHub { + owner = "mrtazz"; + repo = pname; + rev = version; + hash = "sha256-Ql8XSQA/w7wT9GbmYOM2vG15GVqj9LxOGIu8Wqp9Wao="; + }; + + vendorHash = null; + + nativeBuildInputs = [ + installShellFiles + pandoc + ]; + + ldflags = [ + "-s" + "-w" + "-X=main.version=${version}" + "-X=main.buildTime=1970-01-01T00:00:00Z" + "-X=main.builder=nixpkgs" + "-X=main.goversion=go${go.version}" + ]; + + postPatch = '' + substituteInPlace man/man1/checkmake.1.md \ + --replace REPLACE_DATE 1970-01-01T00:00:00Z + ''; + + postBuild = '' + pandoc man/man1/checkmake.1.md -st man -o man/man1/checkmake.1 + ''; + + postInstall = '' + installManPage man/man1/checkmake.1 + ''; + + meta = with lib; { + description = "Experimental tool for linting and checking Makefiles"; + homepage = "https://github.com/mrtazz/checkmake"; + changelog = "https://github.com/mrtazz/checkmake/releases/tag/${src.rev}"; + license = licenses.mit; + maintainers = with maintainers; [ vidbina ]; + longDescription = '' + checkmake is an experimental tool for linting and checking + Makefiles. It may not do what you want it to. + ''; + }; +} |