diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 303fb4c9de22..2ee5f29acf80 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -8787,6 +8787,12 @@ githubId = 4141584; name = "Maxime Daniel"; }; + maxwell-lt = { + email = "maxwell.lt@live.com"; + github = "maxwell-lt"; + githubId = 17859747; + name = "Maxwell L-T"; + }; maxxk = { email = "maxim.krivchikov@gmail.com"; github = "maxxk"; diff --git a/pkgs/applications/networking/cluster/func/default.nix b/pkgs/applications/networking/cluster/func/default.nix new file mode 100644 index 000000000000..306ce8ba25e4 --- /dev/null +++ b/pkgs/applications/networking/cluster/func/default.nix @@ -0,0 +1,46 @@ +{ lib, buildGoModule, fetchFromGitHub, installShellFiles, testers, func }: + +buildGoModule rec { + pname = "func"; + version = "1.7.0"; + + src = fetchFromGitHub { + owner = "knative"; + repo = "func"; + rev = "knative-v${version}"; + sha256 = "sha256-LrWRY22deh+YL/cLb+ZwK93okVPgysBoMCmo2MrbqIs="; + }; + + vendorSha256 = null; + + subPackages = [ "cmd/func" ]; + + ldflags = [ + "-X main.vers=v${version}" + "-X main.date=19700101T000000Z" + "-X main.hash=${version}" + ]; + + nativeBuildInputs = [ installShellFiles ]; + + + postInstall = '' + installShellCompletion --cmd func \ + --bash <($out/bin/func completion bash) \ + --zsh <($out/bin/func completion zsh) + ''; + + passthru.tests.version = testers.testVersion { + package = func; + command = "func version"; + version = "v${version}"; + }; + + meta = with lib; { + description = "The Knative client library and CLI for creating, building, and deploying Knative Functions"; + homepage = "https://github.com/knative/func"; + changelog = "https://github.com/knative/func/releases/tag/knative-v${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ maxwell-lt ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index de6cdf25b64f..97a1556ef534 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17025,6 +17025,8 @@ with pkgs; explain = callPackage ../development/tools/explain { }; + func = callPackage ../applications/networking/cluster/func { }; + funnelweb = callPackage ../development/tools/literate-programming/funnelweb { }; license_finder = callPackage ../development/tools/license_finder { };