From b3368553a2f29e41c4bbc635d7638960a939b0ae Mon Sep 17 00:00:00 2001 From: Giulio De Pasquale Date: Wed, 13 Aug 2025 10:32:33 +0100 Subject: [PATCH] fix(utils): provide clear error for missing role files --- lib/utils.nix | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/lib/utils.nix b/lib/utils.nix index 7584428..1bd40e5 100644 --- a/lib/utils.nix +++ b/lib/utils.nix @@ -1,6 +1,24 @@ { ... }: +let + mkSysRole = role: + let + path = ../roles + "/${role}.nix"; + in + if builtins.pathExists path then + import path + else + throw "System role '${role}' not found at ${toString path}"; + + mkHomeRole = role: + let + path = ../roles/home + "/${role}.nix"; + in + if builtins.pathExists path then + import path + else + throw "Home role '${role}' not found at ${toString path}"; +in { - mkSysRole = role: import (../roles/${role}.nix); - mkHomeRole = role: import (../roles/home/${role}.nix); + inherit mkSysRole mkHomeRole; }