From 319a471daddf9eff2ed16b26c54fab6aaa07f903 Mon Sep 17 00:00:00 2001 From: Hoang Nguyen Date: Sun, 26 Oct 2025 15:13:09 +0700 Subject: [PATCH 1/4] kraft: 0.11.6 -> 0.12.5 --- pkgs/by-name/kr/kraft/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/kr/kraft/package.nix b/pkgs/by-name/kr/kraft/package.nix index da51742bc073..c7880f500a8a 100644 --- a/pkgs/by-name/kr/kraft/package.nix +++ b/pkgs/by-name/kr/kraft/package.nix @@ -11,13 +11,13 @@ buildGoModule rec { pname = "kraftkit"; - version = "0.11.6"; + version = "0.12.5"; src = fetchFromGitHub { owner = "unikraft"; repo = "kraftkit"; rev = "v${version}"; - hash = "sha256-a6c7g2cxrawE7BRpcrsefCQ7xQ56wVOGjFexdkOKnv0="; + hash = "sha256-/ReHXxvn/6dDJVxk5BOvxSZrlkDkZEfr+qM5raf2a3A="; }; nativeBuildInputs = [ @@ -31,7 +31,7 @@ buildGoModule rec { btrfs-progs ]; - vendorHash = "sha256-lwgxedKLcuV6RucbU26sDO+9j+8uWkignJDomFHaSXU="; + vendorHash = "sha256-1rdpyOJVeyzYT0WHJbeqO3aH15FN1/9iQ9bEsjWwn4c="; ldflags = [ "-s" From fdb4505c14f3bc392e92a74c503823a284712afc Mon Sep 17 00:00:00 2001 From: Hoang Nguyen Date: Sun, 26 Oct 2025 15:45:56 +0700 Subject: [PATCH 2/4] kraft: install shell completions and man pages --- pkgs/by-name/kr/kraft/package.nix | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/kr/kraft/package.nix b/pkgs/by-name/kr/kraft/package.nix index c7880f500a8a..c1407861969f 100644 --- a/pkgs/by-name/kr/kraft/package.nix +++ b/pkgs/by-name/kr/kraft/package.nix @@ -3,6 +3,8 @@ stdenv, buildGoModule, fetchFromGitHub, + installShellFiles, + writableTmpDirAsHomeHook, pkg-config, btrfs-progs, gpgme, @@ -22,6 +24,8 @@ buildGoModule rec { nativeBuildInputs = [ pkg-config + installShellFiles + writableTmpDirAsHomeHook ]; buildInputs = [ @@ -39,7 +43,21 @@ buildGoModule rec { "-X kraftkit.sh/internal/version.version=${version}" ]; - subPackages = [ "cmd/kraft" ]; + subPackages = [ + "cmd/kraft" + ] + ++ lib.optionals (stdenv.buildPlatform.canExecute stdenv.hostPlatform) [ "tools/genman" ]; + + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + $out/bin/genman generate ./docs/man/ + rm $out/bin/genman + installManPage ./docs/man/* + + installShellCompletion --cmd kraft \ + --bash <($out/bin/kraft completion bash) \ + --fish <($out/bin/kraft completion fish) \ + --zsh <($out/bin/kraft completion zsh) + ''; passthru = { updateScript = nix-update-script { From 33c3c3cb4db2ba50959a78272dd5026be4d9d222 Mon Sep 17 00:00:00 2001 From: Hoang Nguyen Date: Sun, 26 Oct 2025 15:52:23 +0700 Subject: [PATCH 3/4] kraft: build with xen tag for Linux Also set Go tags and ldflags similar to the upstream build. --- pkgs/by-name/kr/kraft/package.nix | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/pkgs/by-name/kr/kraft/package.nix b/pkgs/by-name/kr/kraft/package.nix index c1407861969f..4b9908787a3f 100644 --- a/pkgs/by-name/kr/kraft/package.nix +++ b/pkgs/by-name/kr/kraft/package.nix @@ -8,6 +8,8 @@ pkg-config, btrfs-progs, gpgme, + xen, + yajl, nix-update-script, }: @@ -33,6 +35,8 @@ buildGoModule rec { ] ++ lib.optionals stdenv.hostPlatform.isLinux [ btrfs-progs + xen + yajl ]; vendorHash = "sha256-1rdpyOJVeyzYT0WHJbeqO3aH15FN1/9iQ9bEsjWwn4c="; @@ -40,9 +44,22 @@ buildGoModule rec { ldflags = [ "-s" "-w" + "-X kraftkit.sh/internal/cli/kraft.sentryDsn=" + "-X kraftkit.sh/internal/version.buildTime=1970-01-01T00:00:00Z" + "-X kraftkit.sh/internal/version.commit=nixpkgs" "-X kraftkit.sh/internal/version.version=${version}" ]; + tags = [ + "containers_image_storage_stub" + "containers_image_openpgp" + "netgo" + "osusergo" + ] + ++ lib.optionals stdenv.hostPlatform.isLinux [ + "xen" + ]; + subPackages = [ "cmd/kraft" ] From 8cced8cab1e46ea2059b58c4573a9e5e94b77e0a Mon Sep 17 00:00:00 2001 From: Hoang Nguyen Date: Sun, 26 Oct 2025 16:06:15 +0700 Subject: [PATCH 4/4] kraft: run all tests --- pkgs/by-name/kr/kraft/package.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/by-name/kr/kraft/package.nix b/pkgs/by-name/kr/kraft/package.nix index 4b9908787a3f..4f0633489e03 100644 --- a/pkgs/by-name/kr/kraft/package.nix +++ b/pkgs/by-name/kr/kraft/package.nix @@ -65,6 +65,17 @@ buildGoModule rec { ] ++ lib.optionals (stdenv.buildPlatform.canExecute stdenv.hostPlatform) [ "tools/genman" ]; + excludedPackages = [ + "test/e2e" + "initrd" + "tools" + ]; + + preCheck = '' + # Run all tests. + unset subPackages + ''; + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' $out/bin/genman generate ./docs/man/ rm $out/bin/genman