Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib 2, buildGoModule 3, fetchFromGitHub 4, installShellFiles 5, pandoc 6, go 7}: 8 9buildGoModule rec { 10 pname = "checkmake"; 11 version = "0.2.2"; 12 13 src = fetchFromGitHub { 14 owner = "mrtazz"; 15 repo = pname; 16 rev = version; 17 hash = "sha256-Ql8XSQA/w7wT9GbmYOM2vG15GVqj9LxOGIu8Wqp9Wao="; 18 }; 19 20 vendorHash = null; 21 22 nativeBuildInputs = [ 23 installShellFiles 24 pandoc 25 ]; 26 27 ldflags = [ 28 "-s" 29 "-w" 30 "-X=main.version=${version}" 31 "-X=main.buildTime=1970-01-01T00:00:00Z" 32 "-X=main.builder=nixpkgs" 33 "-X=main.goversion=go${go.version}" 34 ]; 35 36 postPatch = '' 37 substituteInPlace man/man1/checkmake.1.md \ 38 --replace REPLACE_DATE 1970-01-01T00:00:00Z 39 ''; 40 41 postBuild = '' 42 pandoc man/man1/checkmake.1.md -st man -o man/man1/checkmake.1 43 ''; 44 45 postInstall = '' 46 installManPage man/man1/checkmake.1 47 ''; 48 49 meta = with lib; { 50 description = "Experimental tool for linting and checking Makefiles"; 51 mainProgram = "checkmake"; 52 homepage = "https://github.com/mrtazz/checkmake"; 53 changelog = "https://github.com/mrtazz/checkmake/releases/tag/${src.rev}"; 54 license = licenses.mit; 55 maintainers = with maintainers; [ vidbina ]; 56 longDescription = '' 57 checkmake is an experimental tool for linting and checking 58 Makefiles. It may not do what you want it to. 59 ''; 60 }; 61}