refactor: use terminal package attr paths with shared resolver

This commit is contained in:
2026-04-21 22:48:00 +02:00
parent 4781cc60be
commit 8de3bc1b72
7 changed files with 61 additions and 49 deletions
+6 -9
View File
@@ -17,23 +17,20 @@ in
...
}:
let
rawTerminalAttrPath = lib.splitString "." config.meta.host.users.kiri.terminalPackageAttr;
terminalAttrPath =
if rawTerminalAttrPath != [ ] && builtins.head rawTerminalAttrPath == "pkgs" then
builtins.tail rawTerminalAttrPath
else
rawTerminalAttrPath;
terminalPackage = lib.attrByPath terminalAttrPath null pkgs;
terminalPackage = metaLib.resolvePackagePath {
inherit pkgs;
path = config.meta.host.users.kiri.terminalPackagePath;
};
in
{
assertions = [
{
assertion = terminalPackage != null;
message = "Unknown terminal package `${config.meta.host.users.kiri.terminalPackageAttr}` for user `kiri`.";
message = "Unknown terminal package `${lib.showAttrPath config.meta.host.users.kiri.terminalPackagePath}` for user `kiri`.";
}
{
assertion = terminalPackage != null && lib.elem "terminfo" terminalPackage.outputs;
message = "Terminal package `${config.meta.host.users.kiri.terminalPackageAttr}` must provide a `terminfo` output for `orion`.";
message = "Terminal package `${lib.showAttrPath config.meta.host.users.kiri.terminalPackagePath}` must provide a `terminfo` output for `orion`.";
}
];