나는 nix-build
내 패키지를 구축하고 얻을이 default.nix
를 사용 env
생성 nix-shell
cabal2nix에 패키지를 추가하는 방법`env`를 생성 했습니까?
{ pkgs ? import <nixpkgs> {} }:
with pkgs;
with haskellPackages;
let
myPackage = callPackage ./myPackage.nix {};
in
if lib.inNixShell then myPackage.env else myPackage
myPackage.nix
이것은 구축하기위한 제대로 작동 cabal2nix . > myPackage.nix
{ mkDerivation, base, split, stdenv }:
mkDerivation {
pname = "myPackage";
version = "0.1.0.0";
src = ./.;
isLibrary = false;
isExecutable = true;
executableHaskellDepends = [ base split ];
license = stdenv.lib.licenses.bsd3;
}
을 사용으로하지만 난 동안 개발 도우미 도구를 추가 할 나는 그것에 종사하고있다. myPackage.nix
을 수정하고 싶지 않습니다. myPackage.cabal
을 편집 할 때 cabal2nix
을 다시 실행하고 싶습니다.
나는 buildInputs
의 mkDerivation
을 사용하려고 시도했지만 작동하지 않았습니다.
let
myPackage = callPackage ./myPackage.nix {};
in
stdenv.mkDerivation {
name = myPackage.name;
buildInputs = [ myPackage hlint hasktags ];
}
nix-build
정지 작업의 옆에, 그것은 또한 myPackage
의 실행 파일 만 myPackage
의 ENV없이 쉘에서 저를 놓습니다.
위의 default.nix
을 사용하는 경우 의 env에있는 동안 ghc
은 사용할 수 없기 때문에이 사실을 알고 있습니다.
에서 생성 된 env
에 어떻게 도구를 추가 할 수 있습니까?