From 10d0542ae767595df183e5a155e38bf1abba83fd Mon Sep 17 00:00:00 2001 From: Kris Budde Date: Sat, 11 May 2024 09:29:32 +0200 Subject: [PATCH 1/6] add kbudde to maintainers --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 29766f108106..c74aec8ba44c 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -10425,6 +10425,12 @@ githubId = 26346867; name = "K.B.Dharun Krishna"; }; + kbudde = { + email = "kris@budd.ee"; + github = "kbudde"; + githubId = 1072181; + name = "Kris Budde"; + }; kcalvinalvin = { email = "calvin@kcalvinalvin.info"; github = "kcalvinalvin"; From 6c0b38d8096344e66cd699a61662eb9b9d333a30 Mon Sep 17 00:00:00 2001 From: Kris Budde Date: Sat, 11 May 2024 09:15:37 +0200 Subject: [PATCH 2/6] new package myks --- pkgs/development/tools/myks/default.nix | 51 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 53 insertions(+) create mode 100644 pkgs/development/tools/myks/default.nix diff --git a/pkgs/development/tools/myks/default.nix b/pkgs/development/tools/myks/default.nix new file mode 100644 index 000000000000..de097e907dc8 --- /dev/null +++ b/pkgs/development/tools/myks/default.nix @@ -0,0 +1,51 @@ +{ + lib, + buildGoModule, + fetchFromGitHub, + testers, + installShellFiles, +}: + +buildGoModule rec { + pname = "myks"; + version = "3.4.4"; + + src = fetchFromGitHub { + owner = "mykso"; + repo = "myks"; + rev = "v${version}"; + hash = "sha256-PaA8j4BWijhPR3DTZ0nnO54v0Uj/DpFdJpofseTA1+A="; + }; + + vendorHash = "sha256-A30SyqgAeYwgiYLZF9M3iW2u8JXPU6ozUThziCmSRgU="; + + subPackages = "."; + + ldflags = [ + "-s" + "-w" + "-X main.version=${version}" + "-X main.commit=nixpkg-${src.rev}" + "-X main.date=1970-01-01" + ]; + + nativeBuildInputs = [ installShellFiles ]; + + CGO_ENABLED = 0; + + postInstall = '' + installShellCompletion --cmd myks \ + --bash <($out/bin/myks completion bash) \ + --zsh <($out/bin/myks completion zsh) \ + --fish <($out/bin/myks completion fish) + ''; + + meta = with lib; { + changelog = "https://github.com/mykso/myks/blob/main/CHANGELOG.md"; + description = "A configuration framework for Kubernetes applications"; + license = licenses.mit; + homepage = "https://github.com/mykso/myks"; + maintainers = [ maintainers.kbudde ]; + mainProgram = "myks"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bbdbad05f58c..882237348c52 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19193,6 +19193,8 @@ with pkgs; msitools = callPackage ../development/tools/misc/msitools { }; + myks = callPackage ../development/tools/myks { }; + haskell-ci = haskell.lib.compose.justStaticExecutables haskellPackages.haskell-ci; nailgun = callPackage ../development/tools/nailgun { }; From aa0026163f87d37fd36a081094657dbd32a3fce8 Mon Sep 17 00:00:00 2001 From: Kris Budde Date: Sat, 11 May 2024 10:56:43 +0200 Subject: [PATCH 3/6] move myks to pkgs/by-name --- .../tools/myks/default.nix => by-name/my/myks/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{development/tools/myks/default.nix => by-name/my/myks/package.nix} (100%) diff --git a/pkgs/development/tools/myks/default.nix b/pkgs/by-name/my/myks/package.nix similarity index 100% rename from pkgs/development/tools/myks/default.nix rename to pkgs/by-name/my/myks/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 882237348c52..bbdbad05f58c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19193,8 +19193,6 @@ with pkgs; msitools = callPackage ../development/tools/misc/msitools { }; - myks = callPackage ../development/tools/myks { }; - haskell-ci = haskell.lib.compose.justStaticExecutables haskellPackages.haskell-ci; nailgun = callPackage ../development/tools/nailgun { }; From d123209adebe964827a87f67d66e98e34e49c567 Mon Sep 17 00:00:00 2001 From: Kris Budde Date: Sat, 11 May 2024 12:42:38 +0200 Subject: [PATCH 4/6] add a version test --- pkgs/by-name/my/myks/package.nix | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/my/myks/package.nix b/pkgs/by-name/my/myks/package.nix index de097e907dc8..267286f3691e 100644 --- a/pkgs/by-name/my/myks/package.nix +++ b/pkgs/by-name/my/myks/package.nix @@ -1,10 +1,4 @@ -{ - lib, - buildGoModule, - fetchFromGitHub, - testers, - installShellFiles, -}: +{ lib, buildGoModule, fetchFromGitHub, testers, installShellFiles, myks, }: buildGoModule rec { pname = "myks"; @@ -33,6 +27,8 @@ buildGoModule rec { CGO_ENABLED = 0; + passthru.tests.version = testers.testVersion { package = myks; }; + postInstall = '' installShellCompletion --cmd myks \ --bash <($out/bin/myks completion bash) \ From b83a7a9a7fe24b851859fd3f662b93eaee735a69 Mon Sep 17 00:00:00 2001 From: Kris Budde Date: Sat, 11 May 2024 18:54:23 +0200 Subject: [PATCH 5/6] fix: exec shellCompletion only if not crosscompiled #308283 --- pkgs/by-name/my/myks/package.nix | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/my/myks/package.nix b/pkgs/by-name/my/myks/package.nix index 267286f3691e..6fd19e6e8c51 100644 --- a/pkgs/by-name/my/myks/package.nix +++ b/pkgs/by-name/my/myks/package.nix @@ -1,4 +1,5 @@ -{ lib, buildGoModule, fetchFromGitHub, testers, installShellFiles, myks, }: +{ lib, buildGoModule, fetchFromGitHub, testers, installShellFiles, myks, stdenv +}: buildGoModule rec { pname = "myks"; @@ -29,15 +30,16 @@ buildGoModule rec { passthru.tests.version = testers.testVersion { package = myks; }; - postInstall = '' - installShellCompletion --cmd myks \ - --bash <($out/bin/myks completion bash) \ - --zsh <($out/bin/myks completion zsh) \ - --fish <($out/bin/myks completion fish) - ''; + postInstall = + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd myks \ + --bash <($out/bin/myks completion bash) \ + --zsh <($out/bin/myks completion zsh) \ + --fish <($out/bin/myks completion fish) + ''; meta = with lib; { - changelog = "https://github.com/mykso/myks/blob/main/CHANGELOG.md"; + changelog = "https://github.com/mykso/myks/blob/v${version}/CHANGELOG.md"; description = "A configuration framework for Kubernetes applications"; license = licenses.mit; homepage = "https://github.com/mykso/myks"; From 0b85c40042d88d47ee5af62628c8078cefbb7d4e Mon Sep 17 00:00:00 2001 From: Kris Budde Date: Sat, 11 May 2024 21:56:38 +0200 Subject: [PATCH 6/6] harden package definition --- pkgs/by-name/my/myks/package.nix | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/my/myks/package.nix b/pkgs/by-name/my/myks/package.nix index 6fd19e6e8c51..6de9faf4e9c3 100644 --- a/pkgs/by-name/my/myks/package.nix +++ b/pkgs/by-name/my/myks/package.nix @@ -1,4 +1,10 @@ -{ lib, buildGoModule, fetchFromGitHub, testers, installShellFiles, myks, stdenv +{ lib, + buildGoModule, + fetchFromGitHub, + testers, + installShellFiles, + myks, + stdenv, }: buildGoModule rec { @@ -8,7 +14,7 @@ buildGoModule rec { src = fetchFromGitHub { owner = "mykso"; repo = "myks"; - rev = "v${version}"; + rev = "refs/tags/v${version}"; hash = "sha256-PaA8j4BWijhPR3DTZ0nnO54v0Uj/DpFdJpofseTA1+A="; }; @@ -19,9 +25,9 @@ buildGoModule rec { ldflags = [ "-s" "-w" - "-X main.version=${version}" - "-X main.commit=nixpkg-${src.rev}" - "-X main.date=1970-01-01" + "-X=main.version=${version}" + "-X=main.commit=nixpkg-${version}" + "-X=main.date=1970-01-01" ]; nativeBuildInputs = [ installShellFiles ];