私の読書 (特に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
読み込みにかなり時間がかかります (nix-shell
起動後の最初の呼び出しで約 45 秒、その後の呼び出しで約 2 秒)。
このメッセージの意味は何ですか? Google で検索すると、GitHub の問題がいくつか見つかりますが、素人が理解しやすい方法で表現されていません。
読み込みを高速化し、このメッセージを削除できますか? 私には何か間違ったことをしているように思えます。
この種の開発環境を作成する際に、私が気付いていない可能性のある一般的な推奨事項はありますか?