diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix deleted file mode 100644 index 91450bcab748..000000000000 --- a/pkgs/applications/science/misc/root/default.nix +++ /dev/null @@ -1,253 +0,0 @@ -{ stdenv -, lib -, callPackage -, fetchgit -, fetchurl -, makeWrapper -, writeText -, cmake -, coreutils -, git -, davix -, ftgl -, gl2ps -, glew -, gnugrep -, gnused -, gsl -, gtest -, lapack -, libX11 -, libXpm -, libXft -, libXext -, libGLU -, libGL -, libxcrypt -, libxml2 -, llvm_16 -, lsof -, lz4 -, xz -, man -, openblas -, openssl -, pcre -, nlohmann_json -, pkg-config -, procps -, python -, which -, xxHash -, zlib -, zstd -, giflib -, libjpeg -, libtiff -, libpng -, patchRcPathCsh -, patchRcPathFish -, patchRcPathPosix -, tbb -, xrootd -, Cocoa -, CoreSymbolication -, OpenGL -}: - -stdenv.mkDerivation rec { - pname = "root"; - version = "6.32.06"; - - passthru = { - tests = import ./tests { inherit callPackage; }; - }; - - src = fetchurl { - url = "https://root.cern.ch/download/root_v${version}.source.tar.gz"; - hash = "sha256-P8Ay2T/oSN6lrbG0fY8KhieVIyk/7gqis81Sof+rckc="; - }; - - clad_src = fetchgit { - url = "https://github.com/vgvassilev/clad"; - # Make sure that this is the same tag as in the ROOT build files! - # https://github.com/root-project/root/blob/master/interpreter/cling/tools/plugins/clad/CMakeLists.txt#L76 - rev = "refs/tags/v1.7"; - hash = "sha256-iKrZsuUerrlrjXBrxcTsFu/t0Pb0sa4UlfSwd1yhg3g="; - }; - - nativeBuildInputs = [ makeWrapper cmake pkg-config git ]; - propagatedBuildInputs = [ - nlohmann_json - ]; - buildInputs = [ - davix - ftgl - gl2ps - glew - pcre - zlib - zstd - lapack - libxcrypt - libxml2 - llvm_16 - lz4 - xz - gsl - gtest - openblas - openssl - xxHash - giflib - libjpeg - libtiff - libpng - patchRcPathCsh - patchRcPathFish - patchRcPathPosix - python.pkgs.numpy - tbb - xrootd - ] - ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ libX11 libXpm libXft libXext libGLU libGL ] - ++ lib.optionals (stdenv.hostPlatform.isDarwin) [ Cocoa CoreSymbolication OpenGL ] - ; - - patches = [ - ./sw_vers.patch - ]; - - preConfigure = '' - for path in builtins/*; do - if [[ "$path" != "builtins/openui5" ]] && [[ "$path" != "builtins/rendercore" ]]; then - rm -rf "$path" - fi - done - substituteInPlace cmake/modules/SearchInstalledSoftware.cmake \ - --replace-fail 'set(lcgpackages ' '#set(lcgpackages ' - - # We have to bypass the connection check, because it would disable clad. - # This should probably be fixed upstream with a flag to disable the - # connectivity check! - substituteInPlace CMakeLists.txt \ - --replace-fail 'if(clad AND NO_CONNECTION)' 'if(FALSE)' - # Make sure that clad is not downloaded when building - substituteInPlace interpreter/cling/tools/plugins/clad/CMakeLists.txt \ - --replace-fail 'UPDATE_COMMAND ""' 'SOURCE_DIR ${clad_src} DOWNLOAD_COMMAND "" UPDATE_COMMAND ""' - # Make sure that clad is finding the right llvm version - substituteInPlace interpreter/cling/tools/plugins/clad/CMakeLists.txt \ - --replace-fail '-DLLVM_DIR=''${LLVM_BINARY_DIR}' '-DLLVM_DIR=${llvm_16.dev}/lib/cmake/llvm' - - substituteInPlace interpreter/llvm-project/clang/tools/driver/CMakeLists.txt \ - --replace-fail 'add_clang_symlink(''${link} clang)' "" - - # Don't require textutil on macOS - : > cmake/modules/RootCPack.cmake - - # Hardcode path to fix use with cmake - sed -i cmake/scripts/ROOTConfig.cmake.in \ - -e '1iset(nlohmann_json_DIR "${nlohmann_json}/lib/cmake/nlohmann_json/")' - - patchShebangs build/unix/ - '' + lib.optionalString stdenv.hostPlatform.isDarwin '' - # Eliminate impure reference to /System/Library/PrivateFrameworks - substituteInPlace core/macosx/CMakeLists.txt \ - --replace-fail "-F/System/Library/PrivateFrameworks " "" - '' + lib.optionalString (stdenv.hostPlatform.isDarwin && lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") '' - MACOSX_DEPLOYMENT_TARGET=10.16 - ''; - - cmakeFlags = [ - "-DCMAKE_INSTALL_BINDIR=bin" - "-DCMAKE_INSTALL_LIBDIR=lib" - "-DCMAKE_INSTALL_INCLUDEDIR=include" - "-Dbuiltin_llvm=OFF" - "-Dfail-on-missing=ON" - "-Dfitsio=OFF" - "-Dgnuinstall=ON" - "-Dmathmore=ON" - "-Dmysql=OFF" - "-Dpgsql=OFF" - "-Dsqlite=OFF" - "-Dvdt=OFF" - ] - ++ lib.optional (stdenv.cc.libc != null) "-DC_INCLUDE_DIRS=${lib.getDev stdenv.cc.libc}/include" - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks" - - # fatal error: module map file '/nix/store/-Libsystem-osx-10.12.6/include/module.modulemap' not found - # fatal error: could not build module '_Builtin_intrinsics' - "-Druntime_cxxmodules=OFF" - ]; - - postInstall = '' - for prog in rootbrowse rootcp rooteventselector rootls rootmkdir rootmv rootprint rootrm rootslimtree; do - wrapProgram "$out/bin/$prog" \ - --set PYTHONPATH "$out/lib" - done - - # 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 - ]}" - - # Patch thisroot.{sh,csh,fish} - - # The main target of `thisroot.sh` is "bash-like shells", - # but it also need to support Bash-less POSIX shell like dash, - # as they are mentioned in `thisroot.sh`. - - patchRcPathPosix "$out/bin/thisroot.sh" "${lib.makeBinPath [ - coreutils # dirname tail - gnugrep # grep - gnused # sed - lsof # lsof - man # manpath - procps # ps - which # which - ]}" - patchRcPathCsh "$out/bin/thisroot.csh" "${lib.makeBinPath [ - coreutils - gnugrep - gnused - lsof # lsof - man - which - ]}" - patchRcPathFish "$out/bin/thisroot.fish" "${lib.makeBinPath [ - coreutils - man - which - ]}" - ''; - - # error: aligned allocation function of type 'void *(std::size_t, std::align_val_t)' is only available on macOS 10.13 or newer - env.CXXFLAGS = lib.optionalString (stdenv.hostPlatform.system == "x86_64-darwin") "-faligned-allocation"; - - # workaround for - # https://github.com/root-project/root/issues/14778 - env.NIX_LDFLAGS = lib.optionalString (!stdenv.hostPlatform.isDarwin) "--version-script,${writeText "version.map" "ROOT { global: *; };"}"; - - # To use the debug information on the fly (without installation) - # add the outPath of root.debug into NIX_DEBUG_INFO_DIRS (in PATH-like format) - # and make sure that gdb from Nixpkgs can be found in PATH. - # - # Darwin currently fails to support it (#203380) - # we set it to true hoping to benefit from the future fix. - # Before that, please make sure if root.debug exists before using it. - separateDebugInfo = true; - - setupHook = ./setup-hook.sh; - - meta = with lib; { - homepage = "https://root.cern/"; - description = "Data analysis framework"; - platforms = platforms.unix; - maintainers = [ maintainers.guitargeek maintainers.veprbl ]; - license = licenses.lgpl21; - }; -} diff --git a/pkgs/by-name/ro/root/package.nix b/pkgs/by-name/ro/root/package.nix new file mode 100644 index 000000000000..6c0c9b9b5dd8 --- /dev/null +++ b/pkgs/by-name/ro/root/package.nix @@ -0,0 +1,282 @@ +{ + stdenv, + lib, + callPackage, + fetchgit, + fetchurl, + makeWrapper, + writeText, + apple-sdk, + cmake, + coreutils, + git, + davix, + ftgl, + gl2ps, + glew, + gnugrep, + gnused, + gsl, + gtest, + lapack, + libX11, + libXpm, + libXft, + libXext, + libGLU, + libGL, + libxcrypt, + libxml2, + llvm_16, + lsof, + lz4, + xz, + man, + openblas, + openssl, + pcre, + nlohmann_json, + pkg-config, + procps, + python3, + which, + xxHash, + zlib, + zstd, + giflib, + libjpeg, + libtiff, + libpng, + patchRcPathCsh, + patchRcPathFish, + patchRcPathPosix, + tbb, + xrootd, +}: + +stdenv.mkDerivation rec { + pname = "root"; + version = "6.32.08"; + + passthru = { + tests = import ./tests { inherit callPackage; }; + }; + + src = fetchurl { + url = "https://root.cern.ch/download/root_v${version}.source.tar.gz"; + hash = "sha256-Ka1JRact/xoAnDJqZbb6XuJHhJiCMlHTzvhqLL63eyc="; + }; + + clad_src = fetchgit { + url = "https://github.com/vgvassilev/clad"; + # Make sure that this is the same tag as in the ROOT build files! + # https://github.com/root-project/root/blob/master/interpreter/cling/tools/plugins/clad/CMakeLists.txt#L76 + rev = "refs/tags/v1.7"; + hash = "sha256-iKrZsuUerrlrjXBrxcTsFu/t0Pb0sa4UlfSwd1yhg3g="; + }; + + nativeBuildInputs = [ + makeWrapper + cmake + pkg-config + git + ]; + propagatedBuildInputs = [ nlohmann_json ]; + buildInputs = + [ + davix + ftgl + gl2ps + glew + pcre + zlib + zstd + lapack + libxcrypt + libxml2 + llvm_16 + lz4 + xz + gsl + gtest + openblas + openssl + xxHash + giflib + libjpeg + libtiff + libpng + patchRcPathCsh + patchRcPathFish + patchRcPathPosix + python3.pkgs.numpy + tbb + xrootd + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ apple-sdk.privateFrameworksHook ] + ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ + libX11 + libXpm + libXft + libXext + libGLU + libGL + ]; + + patches = [ ./sw_vers.patch ]; + + preConfigure = + '' + for path in builtins/*; do + if [[ "$path" != "builtins/openui5" ]] && [[ "$path" != "builtins/rendercore" ]]; then + rm -rf "$path" + fi + done + substituteInPlace cmake/modules/SearchInstalledSoftware.cmake \ + --replace-fail 'set(lcgpackages ' '#set(lcgpackages ' + + # We have to bypass the connection check, because it would disable clad. + # This should probably be fixed upstream with a flag to disable the + # connectivity check! + substituteInPlace CMakeLists.txt \ + --replace-fail 'if(clad AND NO_CONNECTION)' 'if(FALSE)' + # Make sure that clad is not downloaded when building + substituteInPlace interpreter/cling/tools/plugins/clad/CMakeLists.txt \ + --replace-fail 'UPDATE_COMMAND ""' 'SOURCE_DIR ${clad_src} DOWNLOAD_COMMAND "" UPDATE_COMMAND ""' + # Make sure that clad is finding the right llvm version + substituteInPlace interpreter/cling/tools/plugins/clad/CMakeLists.txt \ + --replace-fail '-DLLVM_DIR=''${LLVM_BINARY_DIR}' '-DLLVM_DIR=${llvm_16.dev}/lib/cmake/llvm' + + substituteInPlace interpreter/llvm-project/clang/tools/driver/CMakeLists.txt \ + --replace-fail 'add_clang_symlink(''${link} clang)' "" + + # Don't require textutil on macOS + : > cmake/modules/RootCPack.cmake + + # Hardcode path to fix use with cmake + sed -i cmake/scripts/ROOTConfig.cmake.in \ + -e '1iset(nlohmann_json_DIR "${nlohmann_json}/lib/cmake/nlohmann_json/")' + + patchShebangs build/unix/ + '' + + lib.optionalString stdenv.hostPlatform.isDarwin '' + # Eliminate impure reference to /System/Library/PrivateFrameworks + substituteInPlace core/macosx/CMakeLists.txt \ + --replace-fail "-F/System/Library/PrivateFrameworks " "" + '' + + + lib.optionalString + (stdenv.hostPlatform.isDarwin && lib.versionAtLeast stdenv.hostPlatform.darwinMinVersion "11") + '' + MACOSX_DEPLOYMENT_TARGET=10.16 + ''; + + cmakeFlags = + [ + "-DCMAKE_INSTALL_BINDIR=bin" + "-DCMAKE_INSTALL_LIBDIR=lib" + "-DCMAKE_INSTALL_INCLUDEDIR=include" + "-Dbuiltin_llvm=OFF" + "-Dfail-on-missing=ON" + "-Dfitsio=OFF" + "-Dgnuinstall=ON" + "-Dmathmore=ON" + "-Dmysql=OFF" + "-Dpgsql=OFF" + "-Dsqlite=OFF" + "-Dvdt=OFF" + ] + ++ lib.optional ( + (!stdenv.hostPlatform.isDarwin) && (stdenv.cc.libc != null) + ) "-DC_INCLUDE_DIRS=${lib.getDev stdenv.cc.libc}/include" + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + # fatal error: module map file '/nix/store/-Libsystem-osx-10.12.6/include/module.modulemap' not found + # fatal error: could not build module '_Builtin_intrinsics' + "-Druntime_cxxmodules=OFF" + ]; + + postInstall = '' + for prog in rootbrowse rootcp rooteventselector rootls rootmkdir rootmv rootprint rootrm rootslimtree; do + wrapProgram "$out/bin/$prog" \ + --set PYTHONPATH "$out/lib" + done + + # 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 + ] + }" + + # Patch thisroot.{sh,csh,fish} + + # The main target of `thisroot.sh` is "bash-like shells", + # but it also need to support Bash-less POSIX shell like dash, + # as they are mentioned in `thisroot.sh`. + + patchRcPathPosix "$out/bin/thisroot.sh" "${ + lib.makeBinPath [ + coreutils # dirname tail + gnugrep # grep + gnused # sed + lsof # lsof + man # manpath + procps # ps + which # which + ] + }" + patchRcPathCsh "$out/bin/thisroot.csh" "${ + lib.makeBinPath [ + coreutils + gnugrep + gnused + lsof # lsof + man + which + ] + }" + patchRcPathFish "$out/bin/thisroot.fish" "${ + lib.makeBinPath [ + coreutils + man + which + ] + }" + ''; + + # error: aligned allocation function of type 'void *(std::size_t, std::align_val_t)' is only available on macOS 10.13 or newer + env.CXXFLAGS = lib.optionalString ( + stdenv.hostPlatform.system == "x86_64-darwin" + ) "-faligned-allocation"; + + # workaround for + # https://github.com/root-project/root/issues/14778 + env.NIX_LDFLAGS = lib.optionalString ( + !stdenv.hostPlatform.isDarwin + ) "--version-script,${writeText "version.map" "ROOT { global: *; };"}"; + + # To use the debug information on the fly (without installation) + # add the outPath of root.debug into NIX_DEBUG_INFO_DIRS (in PATH-like format) + # and make sure that gdb from Nixpkgs can be found in PATH. + # + # Darwin currently fails to support it (#203380) + # we set it to true hoping to benefit from the future fix. + # Before that, please make sure if root.debug exists before using it. + separateDebugInfo = true; + + setupHook = ./setup-hook.sh; + + meta = with lib; { + homepage = "https://root.cern/"; + description = "Data analysis framework"; + platforms = platforms.unix; + maintainers = [ + maintainers.guitargeek + maintainers.veprbl + ]; + license = licenses.lgpl21; + }; +} diff --git a/pkgs/applications/science/misc/root/setup-hook.sh b/pkgs/by-name/ro/root/setup-hook.sh similarity index 100% rename from pkgs/applications/science/misc/root/setup-hook.sh rename to pkgs/by-name/ro/root/setup-hook.sh diff --git a/pkgs/applications/science/misc/root/sw_vers.patch b/pkgs/by-name/ro/root/sw_vers.patch similarity index 100% rename from pkgs/applications/science/misc/root/sw_vers.patch rename to pkgs/by-name/ro/root/sw_vers.patch diff --git a/pkgs/applications/science/misc/root/tests/default.nix b/pkgs/by-name/ro/root/tests/default.nix similarity index 100% rename from pkgs/applications/science/misc/root/tests/default.nix rename to pkgs/by-name/ro/root/tests/default.nix diff --git a/pkgs/applications/science/misc/root/tests/test-thisroot.nix b/pkgs/by-name/ro/root/tests/test-thisroot.nix similarity index 100% rename from pkgs/applications/science/misc/root/tests/test-thisroot.nix rename to pkgs/by-name/ro/root/tests/test-thisroot.nix diff --git a/pkgs/applications/science/misc/root/disable_libc_dicts_root5.patch b/pkgs/by-name/ro/root5/disable_libc_dicts_root5.patch similarity index 100% rename from pkgs/applications/science/misc/root/disable_libc_dicts_root5.patch rename to pkgs/by-name/ro/root5/disable_libc_dicts_root5.patch diff --git a/pkgs/applications/science/misc/root/5.nix b/pkgs/by-name/ro/root5/package.nix similarity index 50% rename from pkgs/applications/science/misc/root/5.nix rename to pkgs/by-name/ro/root5/package.nix index 62f80ee48096..01fb35ee76d8 100644 --- a/pkgs/applications/science/misc/root/5.nix +++ b/pkgs/by-name/ro/root5/package.nix @@ -1,27 +1,26 @@ -{ lib -, stdenv -, fetchurl -, fetchpatch -, cmake -, pcre -, pkg-config -, python3 -, libX11 -, libXpm -, libXft -, libXext -, libGLU -, libGL -, zlib -, libxml2 -, libxcrypt -, lz4 -, xz -, gsl -, xxHash -, Cocoa -, OpenGL -, noSplash ? false +{ + lib, + stdenv, + fetchurl, + fetchpatch, + cmake, + pcre, + pkg-config, + python3, + libX11, + libXpm, + libXft, + libXext, + libGLU, + libGL, + zlib, + libxml2, + libxcrypt, + lz4, + xz, + gsl, + xxHash, + noSplash ? false, }: stdenv.mkDerivation rec { @@ -33,11 +32,30 @@ stdenv.mkDerivation rec { sha256 = "1ln448lszw4d6jmbdphkr2plwxxlhmjkla48vmmq750xc1lxlfrc"; }; - nativeBuildInputs = [ cmake pkg-config ]; - buildInputs = [ pcre python3 zlib libxml2 lz4 xz gsl xxHash libxcrypt ] - ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ libX11 libXpm libXft libXext libGLU libGL ] - ++ lib.optionals (stdenv.hostPlatform.isDarwin) [ Cocoa OpenGL ] - ; + nativeBuildInputs = [ + cmake + pkg-config + ]; + buildInputs = + [ + pcre + python3 + zlib + libxml2 + lz4 + xz + gsl + xxHash + libxcrypt + ] + ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ + libX11 + libXpm + libXft + libXext + libGLU + libGL + ]; patches = [ ./sw_vers_root5.patch @@ -72,45 +90,52 @@ stdenv.mkDerivation rec { # https://github.com/root-project/root/issues/13216 hardeningDisable = [ "fortify3" ]; - preConfigure = '' - # binutils 2.37 fixes - fixupList=( - cint/demo/gl/make0 - cint/demo/exception/Makefile - cint/demo/makecint/KRcc/Makefile - cint/demo/makecint/Stub2/Make2 - cint/demo/makecint/Array/Makefile - cint/demo/makecint/DArray/Makefile - cint/demo/makecint/ReadFile/Makefile - cint/demo/makecint/stl/Makefile - cint/demo/makecint/Stub2/Make1 - cint/cint/include/makemat - cint/cint/lib/WildCard/Makefile - cint/cint/include/make.arc - cint/cint/lib/qt/Makefile - cint/cint/lib/pthread/Makefile - graf2d/asimage/src/libAfterImage/Makefile.in - ) - for toFix in "''${fixupList[@]}"; do - substituteInPlace "$toFix" --replace "clq" "cq" - done + preConfigure = + '' + # binutils 2.37 fixes + fixupList=( + cint/demo/gl/make0 + cint/demo/exception/Makefile + cint/demo/makecint/KRcc/Makefile + cint/demo/makecint/Stub2/Make2 + cint/demo/makecint/Array/Makefile + cint/demo/makecint/DArray/Makefile + cint/demo/makecint/ReadFile/Makefile + cint/demo/makecint/stl/Makefile + cint/demo/makecint/Stub2/Make1 + cint/cint/include/makemat + cint/cint/lib/WildCard/Makefile + cint/cint/include/make.arc + cint/cint/lib/qt/Makefile + cint/cint/lib/pthread/Makefile + graf2d/asimage/src/libAfterImage/Makefile.in + ) + for toFix in "''${fixupList[@]}"; do + substituteInPlace "$toFix" --replace "clq" "cq" + done - patchShebangs build/unix/ - ln -s ${lib.getDev stdenv.cc.libc}/include/AvailabilityMacros.h cint/cint/include/ + patchShebangs build/unix/ + ln -s ${lib.getDev stdenv.cc.libc}/include/AvailabilityMacros.h cint/cint/include/ - # __malloc_hook is deprecated - substituteInPlace misc/memstat/src/TMemStatHook.cxx \ - --replace "defined(R__GNU) && (defined(R__LINUX) || defined(__APPLE__))" \ - "defined(R__GNU) && (defined(__APPLE__))" - '' - # Fix CINTSYSDIR for "build" version of rootcint - # This is probably a bug that breaks out-of-source builds - + '' - substituteInPlace cint/cint/src/loadfile.cxx\ - --replace 'env = "cint";' 'env = "'`pwd`'/cint";' - '' + lib.optionalString noSplash '' - substituteInPlace rootx/src/rootx.cxx --replace "gNoLogo = false" "gNoLogo = true" - ''; + # __malloc_hook is deprecated + substituteInPlace misc/memstat/src/TMemStatHook.cxx \ + --replace "defined(R__GNU) && (defined(R__LINUX) || defined(__APPLE__))" \ + "defined(R__GNU) && (defined(__APPLE__))" + + # python 3.12 + substituteInPlace bindings/pyroot/src/PyROOT.h \ + --replace " PyUnicode_GET_SIZE" " PyUnicode_GetLength" \ + --replace " PyUnicode_GetSize" " PyUnicode_GetLength" + '' + # Fix CINTSYSDIR for "build" version of rootcint + # This is probably a bug that breaks out-of-source builds + + '' + substituteInPlace cint/cint/src/loadfile.cxx\ + --replace 'env = "cint";' 'env = "'`pwd`'/cint";' + '' + + lib.optionalString noSplash '' + substituteInPlace rootx/src/rootx.cxx --replace "gNoLogo = false" "gNoLogo = true" + ''; cmakeFlags = [ "-Drpath=ON" @@ -147,7 +172,9 @@ stdenv.mkDerivation rec { "-Dxml=ON" "-Dxrootd=OFF" ] - ++ lib.optional stdenv.hostPlatform.isDarwin "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks"; + ++ lib.optional ((!stdenv.hostPlatform.isDarwin) && (stdenv.cc.libc != null)) "-DC_INCLUDE_DIRS=${lib.getDev stdenv.cc.libc}/include"; + + env.NIX_CFLAGS_COMPILE = "-fpermissive"; setupHook = ./setup-hook.sh; diff --git a/pkgs/applications/science/misc/root/purify_include_paths_root5.patch b/pkgs/by-name/ro/root5/purify_include_paths_root5.patch similarity index 100% rename from pkgs/applications/science/misc/root/purify_include_paths_root5.patch rename to pkgs/by-name/ro/root5/purify_include_paths_root5.patch diff --git a/pkgs/applications/science/misc/root/root5-python311-fix.patch b/pkgs/by-name/ro/root5/root5-python311-fix.patch similarity index 100% rename from pkgs/applications/science/misc/root/root5-python311-fix.patch rename to pkgs/by-name/ro/root5/root5-python311-fix.patch diff --git a/pkgs/by-name/ro/root5/setup-hook.sh b/pkgs/by-name/ro/root5/setup-hook.sh new file mode 100644 index 000000000000..7affd21012eb --- /dev/null +++ b/pkgs/by-name/ro/root5/setup-hook.sh @@ -0,0 +1,19 @@ +thisroot () { + # Workaround thisroot.sh dependency on man + if [ -z "${MANPATH-}" ]; then + MANPATH=: + fi + local oldOpts="-u" + shopt -qo nounset || oldOpts="+u" + set +u + source @out@/bin/thisroot.sh + set "$oldOpts" +} + +postHooks+=(thisroot) + +addRootIncludePath() { + addToSearchPath ROOT_INCLUDE_PATH $1/include +} + +addEnvHooks "$targetOffset" addRootIncludePath diff --git a/pkgs/applications/science/misc/root/sw_vers_root5.patch b/pkgs/by-name/ro/root5/sw_vers_root5.patch similarity index 100% rename from pkgs/applications/science/misc/root/sw_vers_root5.patch rename to pkgs/by-name/ro/root5/sw_vers_root5.patch diff --git a/pkgs/development/libraries/physics/hepmc3/default.nix b/pkgs/development/libraries/physics/hepmc3/default.nix index c622d7562001..f7f281af74f3 100644 --- a/pkgs/development/libraries/physics/hepmc3/default.nix +++ b/pkgs/development/libraries/physics/hepmc3/default.nix @@ -11,7 +11,7 @@ let pythonVersion = with lib.versions; "${major python.version}${minor python.version}"; withPython = python != null; # ensure that root is built with the same python interpreter, as it links against numpy - root_py = if withPython then root.override { inherit python; } else root; + root_py = if withPython then root.override { python3 = python; } else root; in stdenv.mkDerivation rec { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b08d97d5d06c..f6a847b642dd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18234,15 +18234,6 @@ with pkgs; ns-3 = callPackage ../development/libraries/science/networking/ns-3 { python = python3; }; - root = callPackage ../applications/science/misc/root { - python = python3; - inherit (darwin.apple_sdk.frameworks) Cocoa CoreSymbolication OpenGL; - }; - - root5 = lowPrio (callPackage ../applications/science/misc/root/5.nix { - inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL; - }); - rink = callPackage ../applications/science/misc/rink { inherit (darwin.apple_sdk.frameworks) Security; };