我在尝试检查flake时遇到上述错误;为了与home-manager兼容,我试图在非NixOS系统上使用flake-compat。
这是导致以下跟踪的flake:
error: value is a function while a set was expected
at /nix/store/l22dazwy8cgxdvndhq45br310nap92x3-source/etc/nixos/flake.nix:167:136:
166|
167| outputs = inputs@{ self, nix, nixpkgs, flake-utils, flake-compat, ... }: with builtins; with nixpkgs.lib; with flake-utils.lib; let
|
^
168|
… while evaluating 'outputs'
at /nix/store/l22dazwy8cgxdvndhq45br310nap92x3-source/etc/nixos/flake.nix:167:15:
166|
167| outputs = inputs@{ self, nix, nixpkgs, flake-utils, flake-compat, ... }: with builtins; with nixpkgs.lib; with flake-utils.lib; let
| ^
168|
… from call site
at «string»:45:21:
44|
45| outputs = flake.outputs (inputs // { self = result; });
| ^
46|
… while evaluating anonymous lambda
at «string»:10:13:
9| builtins.mapAttrs
10| (key: node:
| ^
11| let
… from call site
… while evaluating the attribute 'root'
… while evaluating anonymous lambda
at «string»:2:23:
1|
2| lockFileStr: rootSrc: rootSubdir:
| ^
3|
… from call site不幸的是,我不能提供一个minimal reproducible example,因为我不知道这个错误是从哪里产生的。
发布于 2021-04-21 11:32:59
事实证明,我的lib值实际上是一个函数;不幸的是,由于nix flakes仍然不稳定,它没有完全显示出发生这种情况的位置。
https://stackoverflow.com/questions/67184063
复制相似问题