nixos-hardware
nixos-hardware copied to clipboard
Infinite Symlink recursion in path - laptop/ssd
During my rebuild of my configuration today I was faced with an error during the first seconds of the build. The error is unrelated to changes in my configuration (I reverse the small changes I made with git (stashed)).
The issue seems to be in the nixos-hardware/lenovo/thinkpad/x1-extreme/gen2 / gen4 module.
Error:
error:
… while evaluating the attribute 'config.system.build.toplevel'
at /nix/store/6prdjjpfwpyvc53mlkc0y5rgxwngv6qp-nixos/nixos/lib/modules.nix:326:9:
325| options = checked options;
326| config = checked (removeAttrs config [ "_module" ]);
| ^
327| _module = checked (config._module);
… while calling the 'seq' builtin
at /nix/store/6prdjjpfwpyvc53mlkc0y5rgxwngv6qp-nixos/nixos/lib/modules.nix:326:18:
325| options = checked options;
326| config = checked (removeAttrs config [ "_module" ]);
| ^
327| _module = checked (config._module);
(stack trace truncated; use '--show-trace' to show the full trace)
error: infinite symlink recursion in path '/nix/store/3010gfrj70flddwrd621ndd7p0lg0np1-source/common/pc/laptop/ssd
Removing the import of nixos-hardware fixes the problem. -> I thus conclude that the issue has to lie somewhere in the ThinkPad module of nixos-hardware.
The trace for the import is as follows:
lenovo/thinkpad/x1-extreme/gen2/default.nix: Imports the parent folder. https://github.com/NixOS/nixos-hardware/blob/4cc688ee711159b9bcb5a367be44007934e1a49d/lenovo/thinkpad/x1-extreme/gen2/default.nix#LL6C3-L8C5
lenovo/thinkpad/x1-extreme/default.nix: Imports ../../../common/pc/laptop/ssd. https://github.com/NixOS/nixos-hardware/blob/4cc688ee711159b9bcb5a367be44007934e1a49d/lenovo/thinkpad/x1-extreme/default.nix#LL5C5-L5C34
The last change in the history of the file seems to be a cosmetic/syntax change: https://github.com/NixOS/nixos-hardware/commit/03c6d1515228ff524d63f532a2a6709dfd561a70. But it was applied 6 months ago and thus seems unlikely to cause the issue.
The ssd module has no recent changes that would explain such an issue.
I thank you for your time :D