在 NixOS 上找不到 curl-config

can't find curl-config on NixOS

我正在尝试在 NixOS 17.09 上安装 vim-now-haskell

安装失败,出现异常

*** Installer requires 'curl-config'. Please install and try again.
*** Aborting...

遗憾的是 Search NixOS packages 没有列出 curl-config 的任何包。它也没有安装 curl-7.56.1.

我简直不敢相信 NixOS 不提供 curl-config。因此,我在这里寻求帮助以找到它。

它在 curl.dev 输出中。

$ ls $(nix-build --no-out-link '<nixpkgs>' -A curl.dev)/bin
curl-config

这样做的原因是要使使用 curl 的任何东西的闭包大小保持较小。通常 Nixpkgs 的 stdenv.mkDerivation 在处理 buildInputs 属性时会处理这些细节,但如果您不使用 Nixpkgs 来构建某些东西,您可能需要做更多的手动工作。

另一种获取 curl-config 命令的方法是 nix-shell -p curl,它会启动一个 shell,在其环境中包含该命令。

[user@feb:~]$ nix-shell -p curl
[nix-shell:~]$ curl-config --version
libcurl 7.65.3
[nix-shell:~]$ exit
[user@feb:~]$ 

NixPkgs 还有一个curlFull 包,它启用了更多的功能,从运行时库输出的关闭包数可以看出:

$ nix-store -q --requisites $(nix-build --no-out-link '<nixpkgs>' -A curl.out) | wc -l
6
$ nix-store -q --requisites $(nix-build --no-out-link '<nixpkgs>' -A curlFull.out) | wc -l
29

因此,要获得更强大的 curl 版本,请使用 curlFull.dev