diff options
Diffstat (limited to 'pkgs/applications/science/misc/root/default.nix')
-rw-r--r-- | pkgs/applications/science/misc/root/default.nix | 38 |
1 files changed, 22 insertions, 16 deletions
diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix index 12b181d2edd..f0924d1402a 100644 --- a/pkgs/applications/science/misc/root/default.nix +++ b/pkgs/applications/science/misc/root/default.nix @@ -1,7 +1,7 @@ { stdenv , lib , callPackage -, fetchFromGitHub +, fetchurl , fetchpatch , makeWrapper , cmake @@ -48,6 +48,7 @@ , patchRcPathFish , patchRcPathPosix , tbb +, xrootd , Cocoa , CoreSymbolication , OpenGL @@ -70,20 +71,21 @@ in stdenv.mkDerivation rec { pname = "root"; - version = "6.26.08"; + version = "6.26.10"; passthru = { tests = import ./tests { inherit callPackage; }; }; - src = fetchFromGitHub { - owner = "root-project"; - repo = "root"; - rev = "v${builtins.replaceStrings [ "." ] [ "-" ] version}"; - sha256 = "sha256-cNd1GvEbO/a+WdDe8EHYGmdlw3TrOT2fWaSk+s7fw7U="; + src = fetchurl { + url = "https://root.cern.ch/download/root_v${version}.source.tar.gz"; + hash = "sha256-jla+w5cQQBeqVPnrVU3noaE0R0/gs7sPQ6cPxPq9Yl8="; }; nativeBuildInputs = [ makeWrapper cmake pkg-config git ]; + propagatedBuildInputs = [ + nlohmann_json + ]; buildInputs = [ davix ftgl @@ -107,12 +109,12 @@ stdenv.mkDerivation rec { libjpeg libtiff libpng - nlohmann_json patchRcPathCsh patchRcPathFish patchRcPathPosix python.pkgs.numpy tbb + xrootd ] ++ lib.optionals (!stdenv.isDarwin) [ libX11 libXpm libXft libXext libGLU libGL ] ++ lib.optionals (stdenv.isDarwin) [ Cocoa CoreSymbolication OpenGL ] @@ -195,7 +197,7 @@ stdenv.mkDerivation rec { "-Dvdt=OFF" "-Dwebgui=OFF" "-Dxml=ON" - "-Dxrootd=OFF" + "-Dxrootd=ON" ] ++ lib.optional (stdenv.cc.libc != null) "-DC_INCLUDE_DIRS=${lib.getDev stdenv.cc.libc}/include" ++ lib.optionals stdenv.isDarwin [ @@ -209,19 +211,23 @@ stdenv.mkDerivation rec { NIX_LDFLAGS = lib.optionalString (stdenv.isLinux && stdenv.isAarch64 && stdenv.cc.isGNU) "-lgcc"; + # Workaround the xrootd runpath bug #169677 by prefixing [DY]LD_LIBRARY_PATH with ${lib.makeLibraryPath xrootd}. + # TODO: Remove the [DY]LDLIBRARY_PATH prefix for xrootd when #200830 get merged. postInstall = '' for prog in rootbrowse rootcp rooteventselector rootls rootmkdir rootmv rootprint rootrm rootslimtree; do wrapProgram "$out/bin/$prog" \ --set PYTHONPATH "$out/lib" \ - --set ${lib.optionalString stdenv.isDarwin "DY"}LD_LIBRARY_PATH "$out/lib" + --set ${lib.optionalString stdenv.isDarwin "DY"}LD_LIBRARY_PATH "$out/lib:${lib.makeLibraryPath [ xrootd ]}" done - # Make ldd and sed available to the ROOT executable - wrapProgram "$out/bin/root" --prefix PATH : "${lib.makeBinPath [ - gnused # sed - stdenv.cc # c++ ld etc. - stdenv.cc.libc # ldd - ]}" + # Make ldd and sed available to the ROOT executable by prefixing PATH. + wrapProgram "$out/bin/root" \ + --prefix PATH : "${lib.makeBinPath [ + gnused # sed + stdenv.cc # c++ ld etc. + stdenv.cc.libc # ldd + ]}" \ + --prefix ${lib.optionalString stdenv.hostPlatform.isDarwin "DY"}LD_LIBRARY_PATH : "${lib.makeLibraryPath [ xrootd ]}" # Patch thisroot.{sh,csh,fish} |