Merge pull request #35 from matter-labs/mkSGXContainer-recursiveMerge

fix: use `lib.recursiveUpdate` by default
This commit is contained in:
Harald Hoyer 2024-06-05 14:24:50 +02:00 committed by GitHub
commit 74a45f2eb2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -27,22 +27,6 @@ _:
}: }:
assert lib.assertMsg (!(isAzure && sgx_default_qcnl_conf != null)) "sgx_default_qcnl_conf can't be set for Azure"; assert lib.assertMsg (!(isAzure && sgx_default_qcnl_conf != null)) "sgx_default_qcnl_conf can't be set for Azure";
let let
recursiveMerge = attrList:
with lib;
let
f = attrPath:
zipAttrsWith (n: values:
if tail values == [ ]
then head values
else if all isList values
then unique (concatLists values)
else if all isAttrs values
then f (attrPath ++ [ n ]) values
else last values
);
in
f [ ] attrList;
manifest_base = { manifest_base = {
libos = { inherit entrypoint; }; libos = { inherit entrypoint; };
fs = { fs = {
@ -93,9 +77,7 @@ _:
}; };
}; };
mergedManifest = ((if customRecursiveMerge == null then recursiveMerge else customRecursiveMerge) [ manifest_base manifest ]) mergedManifest = (if customRecursiveMerge == null then lib.recursiveUpdate else customRecursiveMerge) manifest_base manifest;
# Don't merge the `loader.argv` array
// { loader.argv = lib.attrsets.attrByPath [ "loader" "argv" ] manifest_base.loader.argv manifest; };
tomlFormat = pkgs.formats.toml { }; tomlFormat = pkgs.formats.toml { };
manifestFile = tomlFormat.generate "${name}.manifest.toml" mergedManifest; manifestFile = tomlFormat.generate "${name}.manifest.toml" mergedManifest;