如何将非 Haskell 依赖项添加到生成的 cabal2nix shell.nix
How to add non-Haskell dependencies to a cabal2nix generated shell.nix
我使用 cabal2nix 生成 shell.nix 文件。但是我不知道如何将非 Haskell 包依赖项添加到 shell.nix 文件。
下面是由 cabal2nix --shell
生成的一个简单的 shell.nix 文件示例。我将如何编辑它来做我想做的事?
with (import <nixpkgs> {}).pkgs;
let pkg = haskellngPackages.callPackage
({ mkDerivation, base,
, cabal-install}:
mkDerivation {
pname = "testing";
version = "0.1.0.0";
src = ./.;
buildDepends = [ base cabal-install];
license = stdenv.lib.licenses.publicDomain;
}) {};
in
pkg.env
buildDepends
属性并非特定于 cabal,它存在于所有 nix 派生中。因此,您只需要将依赖项添加到该数组即可。例如,如果出于某种原因需要 ffmpeg
,只需写:
buildDepends = [ base cabal-install ffmpeg ];
我使用 cabal2nix 生成 shell.nix 文件。但是我不知道如何将非 Haskell 包依赖项添加到 shell.nix 文件。
下面是由 cabal2nix --shell
生成的一个简单的 shell.nix 文件示例。我将如何编辑它来做我想做的事?
with (import <nixpkgs> {}).pkgs;
let pkg = haskellngPackages.callPackage
({ mkDerivation, base,
, cabal-install}:
mkDerivation {
pname = "testing";
version = "0.1.0.0";
src = ./.;
buildDepends = [ base cabal-install];
license = stdenv.lib.licenses.publicDomain;
}) {};
in
pkg.env
buildDepends
属性并非特定于 cabal,它存在于所有 nix 派生中。因此,您只需要将依赖项添加到该数组即可。例如,如果出于某种原因需要 ffmpeg
,只需写:
buildDepends = [ base cabal-install ffmpeg ];