Unable to build cppzmq, xeusCling kernel
Describe the bug
When adding the xeusCling kernel to the jupyter environment, the nix derivation fails to build. Specifically, it seems that cmake is unable to fetch https://raw.githubusercontent.com/catchorg/Catch2/Catch1.x/single_include/catch.hpp when in the config phase for cppzmq.
To Reproduce
- Add the following to a shell.nix
let
jupyter = import (builtins.fetchGit {
url = https://github.com/tweag/jupyterWith;
rev = "";
}) {};
xeusCling = jupyter.kernels.xeusCling {
name = "nixpkgs";
};
jupyterEnvironment = jupyter.jupyterlabWith {
kernels = [ xeusCling ];
};
in jupyterEnvironment.env
- run
nix-shell --command "jupyter lab" - fail with the following
CMake Error at catch-stamp/download-catch.cmake:159 (message):
Each download failed!
error: downloading 'https://raw.githubusercontent.com/catchorg/Catch2/Catch1.x/single_include/catch.hpp' failed
status_code: 6
status_string: "Couldn't resolve host name"
log:
--- LOG BEGIN ---
Could not resolve host: raw.githubusercontent.com
Closing connection 0
--- LOG END ---
error: downloading 'https://raw.githubusercontent.com/catchorg/Catch2/Catch1.x/single_include/catch.hpp' failed
status_code: 6
status_string: "Couldn't resolve host name"
log:
--- LOG BEGIN ---
Could not resolve host: raw.githubusercontent.com
Closing connection 0
--- LOG END ---
error: downloading 'https://raw.githubusercontent.com/catchorg/Catch2/Catch1.x/single_include/catch.hpp' failed
status_code: 6
status_string: "Couldn't resolve host name"
log:
--- LOG BEGIN ---
Could not resolve host: raw.githubusercontent.com
Closing connection 0
--- LOG END ---
error: downloading 'https://raw.githubusercontent.com/catchorg/Catch2/Catch1.x/single_include/catch.hpp' failed
status_code: 6
status_string: "Couldn't resolve host name"
log:
--- LOG BEGIN ---
Could not resolve host: raw.githubusercontent.com
Closing connection 0
--- LOG END ---
error: downloading 'https://raw.githubusercontent.com/catchorg/Catch2/Catch1.x/single_include/catch.hpp' failed
status_code: 6
status_string: "Couldn't resolve host name"
log:
--- LOG BEGIN ---
Could not resolve host: raw.githubusercontent.com
Closing connection 0
--- LOG END ---
error: downloading 'https://raw.githubusercontent.com/catchorg/Catch2/Catch1.x/single_include/catch.hpp' failed
status_code: 6
status_string: "Couldn't resolve host name"
log:
--- LOG BEGIN ---
Could not resolve host: raw.githubusercontent.com
Closing connection 0
--- LOG END ---
make[2]: *** [tests/CMakeFiles/catch.dir/build.make:112: catch/src/catch-stamp/catch-download] Error 1
make[1]: *** [CMakeFiles/Makefile2:116: tests/CMakeFiles/catch.dir/all] Error 2
make: *** [Makefile:161: all] Error 2
builder for '/nix/store/qysxvnsywj6lxhxjhdsk26z4f6dr1h19-cppzmq.drv' failed with exit code 2
cannot build derivation '/nix/store/gwsgibm3mxzpz168gmccnf2frahkfqxm-xeusCling.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/kvd9xk692srnyrqkkfba4c7k86w1dwln-xeus-cling.drv': 1 dependencies couldn't be built
error: build of '/nix/store/1cp8p8izfxngpvapl524n014fjkm8h4c-python3.7-jupyterlab-2.1.0.drv', '/nix/store/kvd9xk692srnyrqkkfba4c7k86w1dwln-xeus-cling.drv' failed
Expected behavior The xeusCling kernel successfully builds and I am able to use it within Jupyter.
Environment
- OS: NixOS 21.05
- Version of the code: master (hash: 0940c0d8ff3dbbae8395c138a89a57fd2cdb509c)
Additional context
I have tried extracting the nix expression for cppzmg from xeusCling.nix and building it by itself. It seems to fail in the same way.
Xeus is very hard to build, and has been broken here for some time. Maybe it is now working at Nixpkgs, but it's been a long time I didn't check. I will put it on the list to check for the next update.
check this PR https://github.com/tweag/jupyterWith/pull/137