From 53ed6b623f49bdf68c8af79ad763d95bee19123c Mon Sep 17 00:00:00 2001 From: Kamen Mladenov Date: Thu, 30 Jan 2025 15:49:27 +0200 Subject: feat(flake): Implement single guest packages --- flake.nix | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'flake.nix') diff --git a/flake.nix b/flake.nix index 866fbb5..5a40ece 100644 --- a/flake.nix +++ b/flake.nix @@ -29,6 +29,12 @@ (pkgs.lib.filterAttrs (_: type: type == "directory") (builtins.readDir ./zkvms)); + + guests = [ null ] ++ (builtins.attrNames + (pkgs.lib.filterAttrs + (_: type: type == "directory") + (builtins.readDir ./guests))); + foldr = pkgs.lib.foldr; createPackages = guestName: let @@ -46,14 +52,18 @@ {} zkvms; - guests = [ null ] ++ (builtins.attrNames - (pkgs.lib.filterAttrs - (_: type: type == "directory") - (builtins.readDir ./guests))); - in { - packages.${system} = pkgs.lib.foldr + hostPackages = foldr (guest: accum: accum // (createPackages guest)) {} guests; + + guestPackages = foldr + (guest: accum: accum // { + ${guest} = callPackage ./guest.nix { inherit guest; inherit zkvms; inherit hostPackages; }; + }) + {} + guests; + in { + packages.${system} = hostPackages // guestPackages; }; } -- cgit v1.2.3