Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

can't find curl-config on NixOS

Tags:

nixos

I'm trying to install vim-now-haskell on NixOS 17.09.

The installation fails with the exception

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

Unfortunately Search NixOS packages doesn't list any package for curl-config. It also isn't in installed curl-7.56.1.

I can hardly believe NixOS doesn't provide curl-config. Therefore I'm looking here for help to find it.

like image 856
palik Avatar asked Jan 11 '18 23:01

palik


1 Answers

It's in the curl.dev output.

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

The reason for this is to keep the closure size of anything the uses curl small. Normally Nixpkgs' stdenv.mkDerivation takes care of those details when processing the buildInputs attribute, but if you're not using Nixpkgs to build something you may have to do a bit more manual work.

Another way to get the curl-config command is nix-shell -p curl, which launches a shell that has the command in its environment.

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

NixPkgs also has a curlFull package which has more features enabled, as can be seen by the number of packages in the closure of the runtime library output:

$ 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

So for a more capable build of curl, use curlFull.dev.

like image 118
Robert Hensing Avatar answered Sep 30 '22 05:09

Robert Hensing