【发布时间】:2016-09-07 14:08:06
【问题描述】:
根据我的阅读(特别是 the wiki 和 this blog post),我想出了以下 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
加载时间很长(启动后我第一次调用 nix-shell 大约需要 45 秒,后续调用大约需要 2 秒)。
这条消息的含义是什么?当我在 Google 上查找时,我发现了一些 GitHub 问题,但没有以外行人易于理解的方式表达。
我可以加快加载速度并删除此消息吗?在我看来,我做错了什么。
对于编写这种我可能不知道的开发环境,是否有一般性建议?
【问题讨论】: