Hi Ludo,
I have noticed that the non-termination problem is not confined to the
opencascage_oce package. If I try
$ nix-instantiate --strict --eval --xml -A guile
/home/paul/.nix-defexpr/channels/nixpkgs
that does not terminate either.
Does it just take long, or does it simply not terminate?
After a few (approximately five) minutes the process is still producing xml. Looking at the output, after killing the process, there is a large amount of blank space plus the occasional line of xml, such as:
<function column="15" line="47" path="/nix/store/k3jqgxqfwg6q9bgkys63c25lbjprl3gq-nixpkgs-17.03pre96825.497e6d2/nixpkgs/lib/types.nix">
$ nix-instantiate --version
nix-instantiate (Nix) 1.11.2
For my nix installation:
$ nix-instantiate --version
nix-instantiate (Nix) 1.11.4
Also, I have cloned the nixpkgs repository so that I can change the version more easily. To set the nixpkgs directory to be the same version as the version you are using:
$ git checkout dde259d
Then I get the same output:
$ export NIX_REMOTE=daemon
$ ./pre-inst-env guix import nix /data/paul/sourceCode/nixpkgs opencascade_oce
;;; SSAX warning: Skipping PI: xml
trace: lib.zip is deprecated, use lib.zipAttrsWith instead
trace: `mkStrict' is obsolete; use `mkOverride 0' instead.
trace: `types.list' is deprecated; use `types.listOf' instead
;; converted from /data/paul/sourceCode/nixpkgs/pkgs/development/libraries/opencascade/oce.nix:5
(package
(name "opencascade-oce")
(version "0.16")
(source
(origin
(method url-fetch)
(uri (string-append
version
".tar.gz"))
(sha256
(base32
"05bmg1cjz827bpq8s0hp96byirm4c3zc9vx26qz76kjsg8ry87w4"))))
(build-system gnu-build-system)
(inputs
`(("cmake" ,cmake)
("freetype" ,freetype)
("ftgl" ,ftgl)
("qt" ,qt)
("libtool" ,libtool)
("libXmu" ,libXmu)
("file" ,file)
("tk" ,tk)
("tcl" ,tcl)
("mesa" ,mesa)))
(synopsis
"Open CASCADE Technology, libraries for 3D modeling and numerical simulation")
(description #f)
(license #f))
paul$ cat /data/paul/sourceCode/nixpkgs/pkgs/development/libraries/opencascade/oce.nix
{stdenv, fetchurl, mesa, tcl, tk, file, libXmu, cmake, libtool, qt4,
ftgl, freetype}:
stdenv.mkDerivation rec {
name = "opencascade-oce-0.16";
src = fetchurl {
sha256 = "05bmg1cjz827bpq8s0hp96byirm4c3zc9vx26qz76kjsg8ry87w4";
};
buildInputs = [ mesa tcl tk file libXmu libtool qt4 ftgl freetype cmake ];
preConfigure = ''
cmakeFlags="$cmakeFlags -DOCE_INSTALL_PREFIX=$out"
'';
NIX_CFLAGS_COMPILE = "-DGLX_GLXEXT_LEGACY";
enableParallelBuilding = true;
meta = {
description = "Open CASCADE Technology, libraries for 3D modeling and numerical simulation";
maintainers = with stdenv.lib.maintainers; [viric];
platforms = with stdenv.lib.platforms; linux;
};
}
This is almost usable, except the version of the file oce.nix has changed since the dde259d commit. Also, it may be nix-instantiate does not terminate for many other packages in recent versions of nixpkgs.
Best,
Paul.