【发布时间】:2021-05-14 16:32:11
【问题描述】:
在 NixOS 20.09 上,我在运行 obelisk 项目时遇到了问题。例如。我做ob init 并将regex-tdfa 添加到frontend/frontend.cabal 的依赖项中。
然后
> nix-build -A exe --no-out-link -vvv
我得到类似这样的行的永无止境的输出:
building of '/nix/store/njiphyrb4xcnnckclvv0r2ns65yipnkp-mmorph-1.1.3.tar.gz.drv': woken up
building of '/nix/store/nsncr60fii4fwki70bb5ishf1hzq89b5-coreutils-8.31.drv': created
building of '/nix/store/nsncr60fii4fwki70bb5ishf1hzq89b5-coreutils-8.31.drv': woken up
building of '/nix/store/pvq34lb5r34bypfl53hx8kibakzqw7fc-gnused-4.7.drv': created
building of '/nix/store/pvq34lb5r34bypfl53hx8kibakzqw7fc-gnused-4.7.drv': woken up
building of '/nix/store/xr4aygslk3lqdz9wnsq04vpbm4v68vk5-glibc-locales-2.27.drv': created
building of '/nix/store/xr4aygslk3lqdz9wnsq04vpbm4v68vk5-glibc-locales-2.27.drv': woken up
building of '/nix/store/m3dzp25n0g4fwlygdhvak1kk8xz906n9-bash-4.4-p23.drv': init
building of '/nix/store/m3dzp25n0g4fwlygdhvak1kk8xz906n9-bash-4.4-p23.drv': loading derivation
acquiring write lock on '/nix/var/nix/temproots/21932'
downgrading to read lock on '/nix/var/nix/temproots/21932'
building of '/nix/store/m3dzp25n0g4fwlygdhvak1kk8xz906n9-bash-4.4-p23.drv': have derivation
acquiring write lock on '/nix/var/nix/temproots/21932'
downgrading to read lock on '/nix/var/nix/temproots/21932'
acquiring write lock on '/nix/var/nix/temproots/21932'
downgrading to read lock on '/nix/var/nix/temproots/21932'
acquiring write lock on '/nix/var/nix/temproots/21932'
downgrading to read lock on '/nix/var/nix/temproots/21932'
acquiring write lock on '/nix/var/nix/temproots/21932'
downgrading to read lock on '/nix/var/nix/temproots/21932'
acquiring write lock on '/nix/var/nix/temproots/21932'
downgrading to read lock on '/nix/var/nix/temproots/21932'
进程 nix-daemon 以 100% 的 CPU 时间运行。如果是sudo nix-build ...,nix-build 进程本身以 100% 的 CPU 时间运行,永不终止。
其他人尝试重现并没有遇到问题。这可能与我的硬件有关。 See this reddit post with comments.
更多信息
- 该问题仅出现在前端的包中,即由 ghcjs 编译的包。不过,日志输出并未指出任何与 ghcjs 相关的问题。
-
regex-tdfa包不是问题,因为我现在也遇到了同样的问题,只是在一个更复杂的项目上构建方尖碑静态文件派生,并使用其他几个包。 - 我在 NVME SSD 硬盘上运行 NixOS 20.09
-
ob run命令始终有效,没有任何问题(我可以在开发模式下看到运行结果) - 我在
obelisk项目中发布了the issue,并在那里收集了有关该问题的一些详细信息。 - 我在NixOS forums, here,上询问过这个问题,得到了一些提示
【问题讨论】:
-
Michael Litchard 的编辑:“不是 haskell 问题”:我只在使用 ghcjs 编译时遇到过这个问题。我认为这与 nix 的工作方式有关,但我真的不知道问题出在哪里。