diff --git a/pkgs/by-name/ta/tailscale-nginx-auth/package.nix b/pkgs/by-name/ta/tailscale-nginx-auth/package.nix new file mode 100644 index 000000000000..58e30462757c --- /dev/null +++ b/pkgs/by-name/ta/tailscale-nginx-auth/package.nix @@ -0,0 +1,43 @@ +{ lib, stdenv, buildGoModule, fetchFromGitHub }: + +let + version = "1.48.2"; +in +buildGoModule { + pname = "tailscale-nginx-auth"; + inherit version; + + src = fetchFromGitHub { + owner = "tailscale"; + repo = "tailscale"; + rev = "v${version}"; + hash = "sha256-5Usi7W4y6JniyxBIfQid1XjDIZRS5oIw+KUMMiFRBwk="; + }; + vendorHash = "sha256-Fr4VZcKrXnT1PZuEG110KBefjcZzRsQRBSvByELKAy4="; + + CGO_ENABLED = 0; + + subPackages = [ "cmd/nginx-auth" ]; + + ldflags = [ + "-w" + "-s" + "-X tailscale.com/version.longStamp=${version}" + "-X tailscale.com/version.shortStamp=${version}" + ]; + + postInstall = lib.optionalString stdenv.isLinux '' + mv $out/bin/nginx-auth $out/bin/tailscale.nginx-auth + sed -i -e "s#/usr/sbin#$out/bin#" ./cmd/nginx-auth/tailscale.nginx-auth.service + install -D -m0444 -t $out/lib/systemd/system ./cmd/nginx-auth/tailscale.nginx-auth.service + install -D -m0444 -t $out/lib/systemd/system ./cmd/nginx-auth/tailscale.nginx-auth.socket + ''; + + meta = with lib; { + homepage = "https://tailscale.com"; + description = "Tool that allows users to use Tailscale Whois authentication with NGINX as a reverse proxy."; + license = licenses.bsd3; + mainProgram = "tailscale.nginx-auth"; + maintainers = with maintainers; [ danderson phaer ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8732c17ce92e..b8c4b3463ea8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -27406,6 +27406,10 @@ with pkgs; tailscale = callPackage ../servers/tailscale { }; + tailscale-nginx-auth = callPackage ../by-name/ta/tailscale-nginx-auth/package.nix { + buildGoModule = buildGo121Module; + }; + tailscale-systray = callPackage ../applications/misc/tailscale-systray { }; tailspin = callPackage ../tools/misc/tailspin { };