From 029f849a4cee893f7cd3e79268af6d00ab34bc44 Mon Sep 17 00:00:00 2001 From: _cry64 Date: Sun, 14 Dec 2025 11:18:29 +1000 Subject: [PATCH] fix mergeStruct result never unwrapped --- flake.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index c60e577..1d033b4 100644 --- a/flake.nix +++ b/flake.nix @@ -98,7 +98,16 @@ '' # TODO: nodeAttrs.system won't display any nice error messages!! # TODO: will mergeTypedStruct give nice error messages? or should I use mergeStructErr directly? - else nib.parse.mergeStruct (templateNode name nodeAttrs.system) nodeAttrs; + else let + templateAttrs = templateNode name nodeAttrs.system; + r = nib.parse.mergeStruct templateAttrs nodeAttrs; + in + nib.result.unwrap (_: + builtins.abort '' + Cerulean failed to parse `cerulean.nexus.nodes.${name}`! + mergeStruct should never return `result.Err`... How are you here?!? + '') + r; # TODO: mapNodes = f: builtins.mapAttrs (name: nodeAttrs: f name (parseNode name nodeAttrs)) config.nexus.nodes mapNodes = f: builtins.mapAttrs f (builtins.mapAttrs parseNode config.nexus.nodes);