如何将非 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 ];