diff --git a/pkgs/by-name/ne/newt-go/package.nix b/pkgs/by-name/ne/newt-go/package.nix new file mode 100644 index 000000000000..6f86105d62f5 --- /dev/null +++ b/pkgs/by-name/ne/newt-go/package.nix @@ -0,0 +1,45 @@ +{ + lib, + buildGoModule, + fetchFromGitHub, + versionCheckHook, +}: + +buildGoModule rec { + pname = "newt"; + version = "1.1.3"; + + src = fetchFromGitHub { + owner = "fosrl"; + repo = "newt"; + tag = version; + hash = "sha256-wfm2UI4QUiYiAJIYBiSCOD/w72WRJIv2cyLIkfqGsek="; + }; + + vendorHash = "sha256-8VlT9cy2uNhQPiUpr1jJuQSgUR6TtlbQ+etran2Htxs="; + + postPatch = '' + substituteInPlace main.go \ + --replace-fail "replaceme" "${version}" + ''; + + nativeInstallCheckInputs = [ versionCheckHook ]; + + ldflags = [ + "-s" + "-w" + ]; + + doInstallCheck = true; + + versionCheckProgramArg = [ "-version" ]; + + meta = { + description = "Tunneling client for Pangolin"; + homepage = "https://github.com/fosrl/newt"; + changelog = "https://github.com/fosrl/newt/releases/tag/${src.tag}"; + license = lib.licenses.agpl3Only; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "newt"; + }; +}