Hello, I’m using home-manager as flake to configure my setup (GitHub - nxy7/dotfiles). I was using helix editor from forked version for a long time, now when I tried pinning it back to latest changes on master branch I’m receiving some errors. I can build helix repo with nix build github:helix-editor/helix
just fine, so I concluded it has to be something with the way i setup my home-manager.
I’d be glad for any guidance, examples of non nix-os configurations using flakes, home-manager and pinning versions of package or if someone has enough spare time, I’d be glad for pointing errors in my setup (link above).
Here are error logs from nix run . switch -- --flake .
command.
error:
… while evaluating the attribute 'buildCommand' of the derivation 'home-manager-generation'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/pkgs/stdenv/generic/make-derivation.nix:302:7:
301| // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) {
302| name =
| ^
303| let
… while evaluating the attribute 'text' of the derivation 'activation-script'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/pkgs/stdenv/generic/make-derivation.nix:302:7:
301| // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) {
302| name =
| ^
303| let
… while evaluating call site
at «none»:0: (source not available)
… while calling 'mkCmd'
at /nix/store/jmbwf2vqfidi4bs48f6zsdx2pdchkm5f-source/modules/home-environment.nix:657:17:
656| let
657| mkCmd = res: ''
| ^
658| _iNote "Activating %s" "${res.name}"
… while evaluating the attribute 'data'
at /nix/store/jmbwf2vqfidi4bs48f6zsdx2pdchkm5f-source/modules/lib/dag.nix:89:37:
88| in if sorted ? result then {
89| result = map (v: { inherit (v) name data; }) sorted.result;
| ^
90| } else
… while evaluating the attribute 'data'
at /nix/store/jmbwf2vqfidi4bs48f6zsdx2pdchkm5f-source/modules/lib/dag.nix:83:9:
82| name = n;
83| data = v.data;
| ^
84| after = v.after ++ dagBefore dag n;
… while evaluating call site
at «none»:0: (source not available)
… while calling 'g'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/attrsets.nix:595:19:
594| g =
595| name: value:
| ^
596| if isAttrs value && cond value
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/attrsets.nix:598:20:
597| then recurse (path ++ [name]) value
598| else f (path ++ [name]) value;
| ^
599| in mapAttrs g;
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:274:72:
273| # For definitions that have an associated option
274| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
| ^
275|
… while evaluating the attribute 'value'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:752:9:
751| in warnDeprecation opt //
752| { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
| ^
753| inherit (res.defsFinal') highestPrio;
… while evaluating the option `home.activation.installPackages.data':
… while evaluating the attribute 'mergedValue'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:787:5:
786| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
787| mergedValue =
| ^
788| if isDefined then
… while evaluating the attribute 'values'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:781:9:
780| in {
781| values = defs''';
| ^
782| inherit (defs'') highestPrio;
… while evaluating the attribute 'values'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:880:7:
879| in {
880| values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
| ^
881| inherit highestPrio;
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:767:17:
766| # Process mkMerge and mkIf properties.
767| defs' = concatMap (m:
| ^
768| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:767:28:
766| # Process mkMerge and mkIf properties.
767| defs' = concatMap (m:
| ^
768| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while evaluating definitions from `/nix/store/jmbwf2vqfidi4bs48f6zsdx2pdchkm5f-source/modules/home-environment.nix':
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:768:137:
767| defs' = concatMap (m:
768| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
| ^
769| ) defs;
… while calling 'dischargeProperties'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:839:25:
838| */
839| dischargeProperties = def:
| ^
840| if def._type or "" == "merge" then
… while evaluating the attribute 'value'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:592:44:
591| defnsByName' = byName "config" (module: value:
592| [{ inherit (module) file; inherit value; }]
| ^
593| ) configs;
… while evaluating the attribute 'passAsFile' of the derivation 'home-manager-path'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/pkgs/stdenv/generic/make-derivation.nix:302:7:
301| // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) {
302| name =
| ^
303| let
… while evaluating the attribute 'passAsFile'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/pkgs/build-support/buildenv/default.nix:77:5:
76| # XXX: The size is somewhat arbitrary
77| passAsFile = if builtins.stringLength pkgs >= 128*1024 then [ "pkgs" ] else [ ];
| ^
78| }
… while evaluating call site
at «none»:0: (source not available)
… while calling 'g'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/attrsets.nix:595:19:
594| g =
595| name: value:
| ^
596| if isAttrs value && cond value
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/attrsets.nix:598:20:
597| then recurse (path ++ [name]) value
598| else f (path ++ [name]) value;
| ^
599| in mapAttrs g;
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:274:72:
273| # For definitions that have an associated option
274| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
| ^
275|
… while evaluating the attribute 'value'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:752:9:
751| in warnDeprecation opt //
752| { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
| ^
753| inherit (res.defsFinal') highestPrio;
… while evaluating the option `home.packages':
… while evaluating the attribute 'mergedValue'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:787:5:
786| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
787| mergedValue =
| ^
788| if isDefined then
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:789:59:
788| if isDefined then
789| if all (def: type.check def.value) defsFinal then type.merge loc defsFinal
| ^
790| else let allInvalid = filter (def: ! type.check def.value) defsFinal;
… while calling 'merge'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/types.nix:491:20:
490| check = isList;
491| merge = loc: defs:
| ^
492| map (x: x.value) (filter (x: x ? value) (concatLists (imap1 (n: def:
… while evaluating call site
at «none»:0: (source not available)
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/types.nix:492:35:
491| merge = loc: defs:
492| map (x: x.value) (filter (x: x ? value) (concatLists (imap1 (n: def:
| ^
493| imap1 (m: def':
… while evaluating call site
at «none»:0: (source not available)
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/lists.nix:117:29:
116| */
117| imap1 = f: list: genList (n: f (n + 1) (elemAt list n)) (length list);
| ^
118|
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/lists.nix:117:32:
116| */
117| imap1 = f: list: genList (n: f (n + 1) (elemAt list n)) (length list);
| ^
118|
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/types.nix:493:21:
492| map (x: x.value) (filter (x: x ? value) (concatLists (imap1 (n: def:
493| imap1 (m: def':
| ^
494| (mergeDefinitions
… while evaluating the attribute 'optionalValue'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:799:5:
798|
799| optionalValue =
| ^
800| if isDefined then { value = mergedValue; }
… while evaluating the attribute 'values'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:781:9:
780| in {
781| values = defs''';
| ^
782| inherit (defs'') highestPrio;
… while evaluating the attribute 'values'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:880:7:
879| in {
880| values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
| ^
881| inherit highestPrio;
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:767:17:
766| # Process mkMerge and mkIf properties.
767| defs' = concatMap (m:
| ^
768| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:767:28:
766| # Process mkMerge and mkIf properties.
767| defs' = concatMap (m:
| ^
768| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while evaluating definitions from `/nix/store/jmbwf2vqfidi4bs48f6zsdx2pdchkm5f-source/modules/programs/helix.nix':
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:768:137:
767| defs' = concatMap (m:
768| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
| ^
769| ) defs;
… while calling 'dischargeProperties'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:839:25:
838| */
839| dischargeProperties = def:
| ^
840| if def._type or "" == "merge" then
… while evaluating the attribute 'value'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/types.nix:497:38:
496| elemType
497| [{ inherit (def) file; value = def'; }]
| ^
498| ).optionalValue
… while evaluating call site
at «none»:0: (source not available)
… while calling 'g'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/attrsets.nix:595:19:
594| g =
595| name: value:
| ^
596| if isAttrs value && cond value
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/attrsets.nix:598:20:
597| then recurse (path ++ [name]) value
598| else f (path ++ [name]) value;
| ^
599| in mapAttrs g;
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:274:72:
273| # For definitions that have an associated option
274| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
| ^
275|
… while evaluating the attribute 'value'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:752:9:
751| in warnDeprecation opt //
752| { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
| ^
753| inherit (res.defsFinal') highestPrio;
… while evaluating the option `programs.helix.package':
… while evaluating the attribute 'mergedValue'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:787:5:
786| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
787| mergedValue =
| ^
788| if isDefined then
… while evaluating the attribute 'values'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:781:9:
780| in {
781| values = defs''';
| ^
782| inherit (defs'') highestPrio;
… while evaluating the attribute 'values'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:880:7:
879| in {
880| values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
| ^
881| inherit highestPrio;
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:767:17:
766| # Process mkMerge and mkIf properties.
767| defs' = concatMap (m:
| ^
768| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:767:28:
766| # Process mkMerge and mkIf properties.
767| defs' = concatMap (m:
| ^
768| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while evaluating definitions from `/nix/store/6hrhd5n8sdlarhz86payr6fk9iizmrig-source/home.nix':
… while evaluating call site
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:768:137:
767| defs' = concatMap (m:
768| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
| ^
769| ) defs;
… while calling 'dischargeProperties'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:839:25:
838| */
839| dischargeProperties = def:
| ^
840| if def._type or "" == "merge" then
… while evaluating the attribute 'value'
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:592:44:
591| defnsByName' = byName "config" (module: value:
592| [{ inherit (module) file; inherit value; }]
| ^
593| ) configs;
… while evaluating call site
at «none»:0: (source not available)
… while calling anonymous lambda
at /nix/store/w92n9zhbizs1l3vy1x9aj2j9wc6xscld-source/lib/modules.nix:505:44:
504| context = name: ''while evaluating the module argument `${name}' in "${key}":'';
505| extraArgs = builtins.mapAttrs (name: _:
| ^
506| builtins.addErrorContext (context name)
… while evaluating the module argument `helix-master' in "/nix/store/6hrhd5n8sdlarhz86payr6fk9iizmrig-source/home.nix":
… while evaluating the attribute 'helix-master'
at /nix/store/6hrhd5n8sdlarhz86payr6fk9iizmrig-source/flake.nix:25:22:
24| extraSpecialArgs = {
25| inherit pkgs nci helix-master system;
| ^
26| username = name;
… while evaluating call site
at «none»:0: (source not available)
… while calling anonymous lambda
at «string»:23:25:
22| inputs = builtins.mapAttrs
23| (inputName: inputSpec: allNodes.${resolveInput inputSpec})
| ^
24| (node.inputs or {});
… while evaluating call site
at «none»:0: (source not available)
… while calling anonymous lambda
at «string»:10:13:
9| builtins.mapAttrs
10| (key: node:
| ^
11| let
… while evaluating call site
at «string»:45:21:
44|
45| outputs = flake.outputs (inputs // { self = result; });
| ^
46|
… while calling 'outputs'
at /nix/store/d9b7qfqzjbx61kdavq3yw7vjx6y25m41-source/flake.nix:17:13:
16|
17| outputs = inputs@{ nixCargoIntegration, ... }:
| ^
18| nixCargoIntegration.lib.makeOutputs {
… while evaluating call site
at «none»:0: (source not available)
… while calling anonymous lambda
at «string»:23:25:
22| inputs = builtins.mapAttrs
23| (inputName: inputSpec: allNodes.${resolveInput inputSpec})
| ^
24| (node.inputs or {});
… while evaluating call site
at «none»:0: (source not available)
… while calling anonymous lambda
at «string»:10:13:
9| builtins.mapAttrs
10| (key: node:
| ^
11| let
… while evaluating call site
at «string»:45:21:
44|
45| outputs = flake.outputs (inputs // { self = result; });
| ^
46|
… while calling 'outputs'
at /nix/store/hjnfl11gnd6l34j5ry1z4kw14fwdmrq4-source/flake.nix:40:13:
39|
40| outputs = {parts, ...} @ inp: let
| ^
41| l = inp.nixpkgs.lib // builtins;
… while evaluating call site
at /nix/store/hjnfl11gnd6l34j5ry1z4kw14fwdmrq4-source/flake.nix:58:5:
57| in
58| parts.lib.mkFlake {inputs = inp;} {
| ^
59| imports = [flakeModule];
… while calling 'mkFlake'
at /nix/store/jmf4y5avd2x2cqgy5gn66lngkba78ll0-source/lib.nix:138:21:
137|
138| mkFlake = args: module:
| ^
139| let
… while evaluating call site
at /nix/store/jmf4y5avd2x2cqgy5gn66lngkba78ll0-source/lib.nix:145:16:
144| mod = lib.setDefaultModuleLocation loc module;
145| eval = flake-parts-lib.evalFlakeModule args mod;
| ^
146| in
… while calling 'evalFlakeModule'
at /nix/store/jmf4y5avd2x2cqgy5gn66lngkba78ll0-source/lib.nix:90:7:
89| evalFlakeModule =
90| args@
| ^
91| { inputs ? self.inputs
error: attribute 'throwIf' missing
at /nix/store/jmf4y5avd2x2cqgy5gn66lngkba78ll0-source/lib.nix:2:4:
1| { lib }:
2| let
| ^
3| inherit (lib)