Skip to content

Instantly share code, notes, and snippets.

@newton-migosi
Created November 11, 2023 22:49
Show Gist options
  • Save newton-migosi/88d58482577a1d790d1b06754b4688ad to your computer and use it in GitHub Desktop.
Save newton-migosi/88d58482577a1d790d1b06754b4688ad to your computer and use it in GitHub Desktop.
`attribute 'extend' missing` error when running nix develop
warning: Git tree '/home/user/hs/web/mdn-local-library-tutorial' is dirty
error: attribute 'extend' missing
at /nix/store/k066hn412qjzs933n8dk8xqsnpqhj1sb-source/nix/modules/project/outputs.nix:91:23:
90|
91| finalPackages = config.basePackages.extend finalOverlay;
| ^
92|
… while evaluating the attribute 'value'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:605:52:
604| (n: value:
605| [{ inherit (module) file; inherit value; }]
| ^
606| )
… while evaluating 'dischargeProperties'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:894:25:
893| */
894| dischargeProperties = def:
| ^
895| if def._type or "" == "merge" then
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:823:137:
822| defs' = concatMap (m:
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
| ^
824| ) defs;
… while evaluating definitions from `/nix/store/k066hn412qjzs933n8dk8xqsnpqhj1sb-source/nix/modules/project/outputs.nix':
… while evaluating anonymous lambda
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:822:28:
821| # Process mkMerge and mkIf properties.
822| defs' = concatMap (m:
| ^
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:822:17:
821| # Process mkMerge and mkIf properties.
822| defs' = concatMap (m:
| ^
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while evaluating the attribute 'values'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:935:7:
934| in {
935| values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
| ^
936| inherit highestPrio;
… while evaluating the attribute 'values'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:836:9:
835| in {
836| values = defs''';
| ^
837| inherit (defs'') highestPrio;
… while evaluating the attribute 'mergedValue'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:842:5:
841| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
842| mergedValue =
| ^
843| if isDefined then
… while evaluating the option `perSystem.x86_64-linux.haskellProjects.ghc865.outputs.finalPackages':
… while evaluating the attribute 'value'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:807:9:
806| in warnDeprecation opt //
807| { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
| ^
808| inherit (res.defsFinal') highestPrio;
… while evaluating anonymous lambda
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:242:72:
241| # For definitions that have an associated option
242| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
| ^
243|
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/attrsets.nix:632:20:
631| then recurse (path ++ [name]) value
632| else f (path ++ [name]) value;
| ^
633| in mapAttrs g;
… while evaluating 'g'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/attrsets.nix:629:19:
628| g =
629| name: value:
| ^
630| if isAttrs value && cond value
… from call site
… while evaluating the attribute 'value'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:605:52:
604| (n: value:
605| [{ inherit (module) file; inherit value; }]
| ^
606| )
… while evaluating 'dischargeProperties'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:894:25:
893| */
894| dischargeProperties = def:
| ^
895| if def._type or "" == "merge" then
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:823:137:
822| defs' = concatMap (m:
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
| ^
824| ) defs;
… while evaluating definitions from `/nix/store/19jfhx6d82dvn5fyr0sbh2l87wf4f1cp-source/flake.nix, via option perSystem':
… while evaluating anonymous lambda
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:822:28:
821| # Process mkMerge and mkIf properties.
822| defs' = concatMap (m:
| ^
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:822:17:
821| # Process mkMerge and mkIf properties.
822| defs' = concatMap (m:
| ^
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while evaluating the attribute 'values'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:935:7:
934| in {
935| values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
| ^
936| inherit highestPrio;
… while evaluating the attribute 'values'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:836:9:
835| in {
836| values = defs''';
| ^
837| inherit (defs'') highestPrio;
… while evaluating the attribute 'mergedValue'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:842:5:
841| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
842| mergedValue =
| ^
843| if isDefined then
… while evaluating the option `perSystem.x86_64-linux.haskellProjects.default.basePackages':
… while evaluating the attribute 'value'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:807:9:
806| in warnDeprecation opt //
807| { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
| ^
808| inherit (res.defsFinal') highestPrio;
… while evaluating anonymous lambda
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:242:72:
241| # For definitions that have an associated option
242| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
| ^
243|
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/attrsets.nix:632:20:
631| then recurse (path ++ [name]) value
632| else f (path ++ [name]) value;
| ^
633| in mapAttrs g;
… while evaluating 'g'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/attrsets.nix:629:19:
628| g =
629| name: value:
| ^
630| if isAttrs value && cond value
… from call site
… while evaluating the attribute 'value'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:605:52:
604| (n: value:
605| [{ inherit (module) file; inherit value; }]
| ^
606| )
… while evaluating 'dischargeProperties'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:894:25:
893| */
894| dischargeProperties = def:
| ^
895| if def._type or "" == "merge" then
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:823:137:
822| defs' = concatMap (m:
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
| ^
824| ) defs;
… while evaluating definitions from `/nix/store/k066hn412qjzs933n8dk8xqsnpqhj1sb-source/nix/modules/project/outputs.nix':
… while evaluating anonymous lambda
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:822:28:
821| # Process mkMerge and mkIf properties.
822| defs' = concatMap (m:
| ^
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:822:17:
821| # Process mkMerge and mkIf properties.
822| defs' = concatMap (m:
| ^
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while evaluating the attribute 'values'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:935:7:
934| in {
935| values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
| ^
936| inherit highestPrio;
… while evaluating the attribute 'values'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:836:9:
835| in {
836| values = defs''';
| ^
837| inherit (defs'') highestPrio;
… while evaluating the attribute 'mergedValue'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:842:5:
841| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
842| mergedValue =
| ^
843| if isDefined then
… while evaluating the option `perSystem.x86_64-linux.haskellProjects.default.outputs.finalPackages':
… while evaluating the attribute 'value'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:807:9:
806| in warnDeprecation opt //
807| { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
| ^
808| inherit (res.defsFinal') highestPrio;
… while evaluating anonymous lambda
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:242:72:
241| # For definitions that have an associated option
242| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
| ^
243|
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/attrsets.nix:632:20:
631| then recurse (path ++ [name]) value
632| else f (path ++ [name]) value;
| ^
633| in mapAttrs g;
… while evaluating 'g'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/attrsets.nix:629:19:
628| g =
629| name: value:
| ^
630| if isAttrs value && cond value
… from call site
… while evaluating the attribute 'value'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:605:52:
604| (n: value:
605| [{ inherit (module) file; inherit value; }]
| ^
606| )
… while evaluating 'dischargeProperties'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:894:25:
893| */
894| dischargeProperties = def:
| ^
895| if def._type or "" == "merge" then
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:823:137:
822| defs' = concatMap (m:
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
| ^
824| ) defs;
… while evaluating definitions from `/nix/store/k066hn412qjzs933n8dk8xqsnpqhj1sb-source/nix/modules/project/devshell.nix':
… while evaluating anonymous lambda
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:822:28:
821| # Process mkMerge and mkIf properties.
822| defs' = concatMap (m:
| ^
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:822:17:
821| # Process mkMerge and mkIf properties.
822| defs' = concatMap (m:
| ^
823| map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
… while evaluating the attribute 'values'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:935:7:
934| in {
935| values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
| ^
936| inherit highestPrio;
… while evaluating the attribute 'values'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:836:9:
835| in {
836| values = defs''';
| ^
837| inherit (defs'') highestPrio;
… while evaluating the attribute 'mergedValue'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:842:5:
841| # Type-check the remaining definitions, and merge them. Or throw if no definitions.
842| mergedValue =
| ^
843| if isDefined then
… while evaluating the option `perSystem.x86_64-linux.haskellProjects.default.outputs.devShell':
… while evaluating the attribute 'value'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:807:9:
806| in warnDeprecation opt //
807| { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
| ^
808| inherit (res.defsFinal') highestPrio;
… while evaluating anonymous lambda
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/modules.nix:242:72:
241| # For definitions that have an associated option
242| declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
| ^
243|
… from call site
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/attrsets.nix:632:20:
631| then recurse (path ++ [name]) value
632| else f (path ++ [name]) value;
| ^
633| in mapAttrs g;
… while evaluating 'g'
at /nix/store/z6w242l49pbrdawkz5vdhfxh2mvsj36c-source/lib/attrsets.nix:629:19:
628| g =
629| name: value:
| ^
630| if isAttrs value && cond value
… from call site
… while evaluating 'flatten'
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/lib/lists.nix:186:13:
185| */
186| flatten = x:
| ^
187| if isList x
… from call site
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/pkgs/build-support/mkshell/default.nix:19:36:
18| (attrs.${name} or [ ]) ++
19| (lib.subtractLists inputsFrom (lib.flatten (lib.catAttrs name inputsFrom)));
| ^
20|
… while evaluating 'mergeInputs'
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/pkgs/build-support/mkshell/default.nix:17:17:
16| let
17| mergeInputs = name:
| ^
18| (attrs.${name} or [ ]) ++
… from call site
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/pkgs/build-support/mkshell/default.nix:36:17:
35|
36| buildInputs = mergeInputs "buildInputs";
| ^
37| nativeBuildInputs = packages ++ (mergeInputs "nativeBuildInputs");
… while evaluating 'imap1'
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/lib/lists.nix:165:14:
164| */
165| imap1 = f: list: genList (n: f (n + 1) (elemAt list n)) (length list);
| ^
166|
… from call site
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/lib/trivial.nix:138:19:
137| */
138| flip = f: a: b: f b a;
| ^
139|
… while evaluating 'flip'
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/lib/trivial.nix:138:16:
137| */
138| flip = f: a: b: f b a;
| ^
139|
… from call site
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/pkgs/stdenv/generic/make-derivation.nix:224:49:
223| checkDependencyList = checkDependencyList' [];
224| checkDependencyList' = positions: name: deps: lib.flip lib.imap1 deps (index: dep:
| ^
225| if lib.isDerivation dep || dep == null || builtins.isString dep || builtins.isPath dep then dep
… while evaluating 'checkDependencyList''
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/pkgs/stdenv/generic/make-derivation.nix:224:43:
223| checkDependencyList = checkDependencyList' [];
224| checkDependencyList' = positions: name: deps: lib.flip lib.imap1 deps (index: dep:
| ^
225| if lib.isDerivation dep || dep == null || builtins.isString dep || builtins.isPath dep then dep
… from call site
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/pkgs/stdenv/generic/make-derivation.nix:257:52:
256| (map (drv: drv.__spliced.hostHost or drv) (checkDependencyList "depsHostHost" depsHostHost))
257| (map (drv: drv.__spliced.hostTarget or drv) (checkDependencyList "buildInputs" buildInputs'))
| ^
258| ]
… while evaluating 'chooseDevOutputs'
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/lib/attrsets.nix:1025:5:
1024| # List of packages to pick `dev` outputs from
1025| drvs:
| ^
1026| builtins.map getDev drvs;
… from call site
… while evaluating the attribute 'buildInputs' of the derivation 'nix-shell'
at /nix/store/mj0hy52z22q5gpsf33akndxiclxd8ray-source/pkgs/stdenv/generic/make-derivation.nix:311:7:
310| // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) {
311| name =
| ^
312| let
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment