使用default.nix文件运行命令

时间:2017-10-18 20:16:06

标签: shell elixir mix nixos

我收到了以下default.nix文件:

with import <nixpkgs> {}; {
   pullapiEnv = stdenv.mkDerivation {
     name = "pullapi";
     buildInputs = [ elixir ];
   };
 }

哪个很好,并且在我的回购中使用nix-shell,但是如何 在shell设置期间运行I命令?我想跑

mix deps.get
mix test
每次nix-shell执行时

1 个答案:

答案 0 :(得分:2)

根据 wizzup 的评论,这是使用shellHook解决的:

#default.nix
with import <nixpkgs> {}; {
   pullapiEnv = stdenv.mkDerivation {
     name = "pullapi";
     buildInputs = [ elixir ];
     shellHook = ''
     mix deps.get
     mix compile
     mix test
     '';
   };
}