根据我的阅读资料(特别是 wiki和这篇博文),我想出了以下default.nix
我加载的内容nix-shell
:
with import <nixpkgs> {};
let emacs =
emacsWithPackages (p : [ p.tuareg ]);
in
stdenv.mkDerivation rec {
name = "env";
src = ./.;
# Customizable development requirements
buildInputs = [
pkgconfig
ocaml
ocamlPackages.merlin
ocamlPackages.findlib
ocamlPackages.lablgtk
ocamlPackages.camlp5_transitional
ncurses
emacs
];
# Customizable development shell setup
shellHook = ''
export PATH=`pwd`/bin:$PATH
'';
}
但它总是打印一个警告:
warning: dumping very large path (> 256 MiB); this may run out of memory
并且需要很长时间才能加载(启动后第一次调用大约 45 秒nix-shell
,后续调用大约 2 秒)。
这条消息的含义是什么?当我在 Google 上查找它时,我发现了一些 GitHub 问题,但没有以外行人易于理解的方式表达。
我可以加快加载速度并删除此消息吗?在我看来,我做错了什么。
是否有关于编写这种我可能不知道的开发环境的一般建议?