![NixOS 重建失败,因为 NIX_PATH 中的某些目录不存在](https://linux22.com/image/228670/NixOS%20%E9%87%8D%E5%BB%BA%E5%A4%B1%E8%B4%A5%EF%BC%8C%E5%9B%A0%E4%B8%BA%20NIX_PATH%20%E4%B8%AD%E7%9A%84%E6%9F%90%E4%BA%9B%E7%9B%AE%E5%BD%95%E4%B8%8D%E5%AD%98%E5%9C%A8.png)
当我尝试重建 NixOS 时,它失败了,因为它无法根据NIX_PATH
.发生这种情况是因为我尝试切换nixos-unstable
到频道23.11
并意外添加然后nixpkgs-unstable
将其删除。重新添加通道并没有改变错误。
这里有什么问题吗?
该目录/nix/var/nix/profiles/per-user/root/channels
仅包含一个文件 ,manifest.nix
并且存在同级目录channel-2-link
并channels-1-link
包含更多文件,包括目录nixos
。
NIX_PATH
,我的频道和整个错误报告都在这里:
~> $env.NIX_PATH
nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos:nixos-config=/etc/nixos/configuration.nix:/nix/var/nix/profiles/per-user/root/channels
~> sudo nix-channel --list
nixos https://nixos.org/channels/nixos-unstable
~> sudo nixos-rebuild switch --upgrade
warning: Nix search path entry '/nix/var/nix/profiles/per-user/root/channels/nixos' does not exist, ignoring
error:
… <borked>
at «none»:0: (source not available)
… while calling the 'import' builtin
at «string»:1:6:
1| with import <nixpkgs/nixos> {}; config.system.build.nixos-rebuild
| ^
(stack trace truncated; use '--show-trace' to show the full trace)
error: file 'nixpkgs/nixos' was not found in the Nix search path (add it using $NIX_PATH or -I)
at «none»:0: (source not available)
building Nix...
warning: Nix search path entry '/nix/var/nix/profiles/per-user/root/channels/nixos' does not exist, ignoring
error: file 'nixpkgs/nixos' was not found in the Nix search path (add it using $NIX_PATH or -I)
at «none»:0: (source not available)
warning: Nix search path entry '/nix/var/nix/profiles/per-user/root/channels/nixos' does not exist, ignoring
error: file 'nixpkgs' was not found in the Nix search path (add it using $NIX_PATH or -I)
at «none»:0: (source not available)
warning: Nix search path entry '/nix/var/nix/profiles/per-user/root/channels/nixos' does not exist, ignoring
error: file 'nixpkgs/nixos/modules/installer/tools/nix-fallback-paths.nix' was not found in the Nix search path (add it using $NIX_PATH or -I)
at «none»:0: (source not available)
/tmp/nixos-rebuild.TFvl5H/nix
warning: Nix search path entry '/nix/var/nix/profiles/per-user/root/channels/nixos' does not exist, ignoring
error: file 'nixpkgs' was not found in the Nix search path (add it using $NIX_PATH or -I)
at «none»:0: (source not available)
building the system configuration...
warning: Nix search path entry '/nix/var/nix/profiles/per-user/root/channels/nixos' does not exist, ignoring
error: file 'nixpkgs/nixos' was not found in the Nix search path (add it using $NIX_PATH or -I)
at «none»:0: (source not available)
答案1
我仍然不知道这里到底出了什么问题,但我读了的手册nix-channel
我可以运行sudo nix-channel --rollback
以返回 Nix 通道之前的正确状态。这解决了我的问题。