{ fetchFromGitHub, buildGoModule, lib, go, makeWrapper }: buildGoModule rec { pname = "pushup"; version = "0.2"; src = fetchFromGitHub { owner = "adhocteam"; repo = "pushup"; rev = "v${version}"; hash = "sha256-9ENXeVON2/Bt8oXnyVw+Vl0bPVPP7iFSyhxwc091ZIs="; }; vendorHash = null; subPackages = "."; # Pushup doesn't need CGO so disable it. CGO_ENABLED=0; ldflags = [ "-s" "-w" ]; nativeBuildInputs = [ makeWrapper ]; # The Go compiler is a runtime dependency of Pushup. allowGoReference = true; postInstall = '' wrapProgram $out/bin/${meta.mainProgram} --prefix PATH : ${ lib.makeBinPath [ go ] } ''; meta = with lib; { description = "A web framework for Go"; homepage = "https://pushup.adhoc.dev/"; license = licenses.mit; changelog = "https://github.com/adhocteam/pushup/blob/${src.rev}/CHANGELOG.md"; mainProgram = "pushup"; maintainers = with maintainers; [ paulsmith ]; }; }