diff --git a/pkgs/applications/networking/cluster/krelay/default.nix b/pkgs/applications/networking/cluster/krelay/default.nix new file mode 100644 index 000000000000..f0a9912ab914 --- /dev/null +++ b/pkgs/applications/networking/cluster/krelay/default.nix @@ -0,0 +1,31 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "krelay"; + version = "0.0.2"; + + src = fetchFromGitHub { + owner = "knight42"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-7P+pGiML/1aZEpYAWtAPEhrBAo8e8ATcemrH8tD73w8="; + }; + + vendorSha256 = "sha256-PrL3GYP5K6ZaSAShwuDQA7WfOVJeQraxZ8jrtnajR9g="; + + subPackages = [ "cmd/client" ]; + + ldflags = [ "-s" "-w" "-X github.com/knight42/krelay/pkg/constants.ClientVersion=${version}" ]; + + postInstall = '' + mv $out/bin/client $out/bin/kubectl-relay + ''; + + meta = with lib; { + description = "A better alternative to `kubectl port-forward` that can forward TCP or UDP traffic to IP/Host which is accessible inside the cluster."; + homepage = "https://github.com/knight42/krelay"; + changelog = "https://github.com/knight42/krelay/releases/tag/v${version}"; + license = licenses.mit; + maintainers = with maintainers; [ ivankovnatsky ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fb2a8b82d092..d2f1c10f15f9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3452,6 +3452,8 @@ with pkgs; krapslog = callPackage ../tools/misc/krapslog { }; + krelay = callPackage ../applications/networking/cluster/krelay { }; + krill = callPackage ../servers/krill { inherit (darwin.apple_sdk.frameworks) Security; };