Merge pull request #88476 from veprbl/pr/rivet3

rivet: 2.7.2 -> 3.1.1
This commit is contained in:
Dmitry Kalinkin 2020-05-26 15:52:08 -04:00 committed by GitHub
commit 5035c65a60
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 34 additions and 68 deletions

View File

@ -1,30 +0,0 @@
{ stdenv, fetchurl, fastnlo, rivet, pkgconfig }:
stdenv.mkDerivation rec {
pname = "mcgrid";
version = "2.0.2";
src = fetchurl {
url = "https://www.hepforge.org/archive/mcgrid/${pname}-${version}.tar.gz";
sha256 = "1mw82x7zqbdchnd6shj3dirsav5i2cndp2hjwb8a8xdh4xh9zvfy";
};
buildInputs = [ fastnlo rivet ];
propagatedNativeBuildInputs = [ pkgconfig ];
preConfigure = ''
substituteInPlace mcgrid.pc.in \
--replace "Cflags:" "Cflags: -std=c++11"
'';
CXXFLAGS = "-std=c++11";
enableParallelBuilding = true;
meta = {
description = "A software package that provides access to the APPLgrid and fastNLO interpolation tools for Monte Carlo event generator codes, allowing for fast and flexible variations of scales, coupling parameters and PDFs in cutting edge leading- and next-to-leading-order QCD calculations";
license = stdenv.lib.licenses.gpl3;
homepage = "http://mcgrid.hepforge.org";
platforms = stdenv.lib.platforms.unix;
maintainers = with stdenv.lib.maintainers; [ veprbl ];
};
}

View File

@ -1,20 +1,16 @@
{ stdenv, fetchurl, fetchpatch, fastjet, ghostscript, gsl, hepmc2, imagemagick, less, python2, texlive, yoda, which, makeWrapper }: { stdenv, fetchurl, fastjet, fastjet-contrib, ghostscript, gsl, hepmc, imagemagick, less, python3, rsync, texlive, yoda, which, makeWrapper }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "rivet"; pname = "rivet";
version = "2.7.2"; version = "3.1.1";
src = fetchurl { src = fetchurl {
url = "https://www.hepforge.org/archive/rivet/Rivet-${version}.tar.bz2"; url = "https://www.hepforge.org/archive/rivet/Rivet-${version}.tar.bz2";
sha256 = "1bxcb99a3l5d2gl93zgfzgw6v95kx1ss5045mkz3ciyw8w5nmb9l"; sha256 = "1cgr9jyfd9r7dwbk8fr3rys5dc74cmbx368441jvqngqymmb563w";
}; };
patches = [ patches = [
./darwin.patch # configure relies on impure sw_vers to -Dunix ./darwin.patch # configure relies on impure sw_vers to -Dunix
(fetchpatch {
url = "https://gitlab.com/hepcedar/rivet/commit/37bd34f52cce66946ebb311a8fe61bfc5f69cc00.diff";
sha256 = "0wj3ilpfq2gpc33bj3800l9vyvc9lrrlj1x9ss5qki0yiqd8i2aa";
})
]; ];
latex = texlive.combine { inherit (texlive) latex = texlive.combine { inherit (texlive)
@ -32,26 +28,27 @@ stdenv.mkDerivation rec {
xkeyval xkeyval
xstring xstring
;}; ;};
buildInputs = [ hepmc2 imagemagick python2 latex makeWrapper ];
propagatedBuildInputs = [ fastjet ghostscript gsl yoda ]; nativeBuildInputs = [ rsync makeWrapper ];
buildInputs = [ hepmc imagemagick python3 latex python3.pkgs.yoda ];
propagatedBuildInputs = [ fastjet fastjet-contrib ];
preConfigure = '' preConfigure = ''
substituteInPlace analyses/Makefile.in \ substituteInPlace bin/rivet-build.in \
--replace "!(tmp)" "" --replace 'num_jobs=$(getconf _NPROCESSORS_ONLN)' 'num_jobs=''${NIX_BUILD_CORES:-$(getconf _NPROCESSORS_ONLN)}' \
substituteInPlace bin/rivet-buildplugin.in \
--replace 'which' '"${which}/bin/which"' \ --replace 'which' '"${which}/bin/which"' \
--replace 'mycxx=' 'mycxx=${stdenv.cc}/bin/${if stdenv.cc.isClang or false then "clang++" else "g++"} #' \ --replace 'mycxx=' 'mycxx=${stdenv.cc}/bin/${if stdenv.cc.isClang or false then "clang++" else "g++"} #' \
--replace 'mycxxflags="' "mycxxflags=\"-std=c++11 $NIX_CFLAGS_COMPILE $NIX_CXXSTDLIB_COMPILE $NIX_CFLAGS_LINK " --replace 'mycxxflags="' "mycxxflags=\"$NIX_CFLAGS_COMPILE $NIX_CXXSTDLIB_COMPILE $NIX_CFLAGS_LINK "
''; '';
preInstall = '' preInstall = ''
substituteInPlace bin/make-plots \ substituteInPlace bin/make-plots \
--replace '"which"' '"${which}/bin/which"' \ --replace '"which"' '"${which}/bin/which"' \
--replace '"latex"' '"${latex}/bin/latex"' \ --replace '"latex"' '"'$latex'/bin/latex"' \
--replace '"dvips"' '"${latex}/bin/dvips"' \ --replace '"dvips"' '"'$latex'/bin/dvips"' \
--replace '"ps2pdf"' '"${ghostscript}/bin/ps2pdf"' \ --replace '"ps2pdf"' '"${ghostscript}/bin/ps2pdf"' \
--replace '"ps2eps"' '"${ghostscript}/bin/ps2eps"' \ --replace '"ps2eps"' '"${ghostscript}/bin/ps2eps"' \
--replace '"kpsewhich"' '"${latex}/bin/kpsewhich"' \ --replace '"kpsewhich"' '"'$latex'/bin/kpsewhich"' \
--replace '"convert"' '"${imagemagick.out}/bin/convert"' --replace '"convert"' '"${imagemagick.out}/bin/convert"'
substituteInPlace bin/rivet \ substituteInPlace bin/rivet \
--replace '"less"' '"${less}/bin/less"' --replace '"less"' '"${less}/bin/less"'
@ -62,9 +59,12 @@ stdenv.mkDerivation rec {
configureFlags = [ configureFlags = [
"--with-fastjet=${fastjet}" "--with-fastjet=${fastjet}"
"--with-hepmc=${hepmc2}"
"--with-yoda=${yoda}" "--with-yoda=${yoda}"
]; ] ++ (if stdenv.lib.versions.major hepmc.version == "3" then [
"--with-hepmc3=${hepmc}"
] else [
"--with-hepmc=${hepmc}"
]);
enableParallelBuilding = true; enableParallelBuilding = true;
@ -74,11 +74,11 @@ stdenv.mkDerivation rec {
done done
''; '';
meta = { meta = with stdenv.lib; {
description = "A framework for comparison of experimental measurements from high-energy particle colliders to theory predictions"; description = "A framework for comparison of experimental measurements from high-energy particle colliders to theory predictions";
license = stdenv.lib.licenses.gpl2; license = licenses.gpl3;
homepage = "https://rivet.hepforge.org"; homepage = "https://rivet.hepforge.org";
platforms = stdenv.lib.platforms.unix; platforms = platforms.unix;
maintainers = with stdenv.lib.maintainers; [ veprbl ]; maintainers = with maintainers; [ veprbl ];
}; };
} }

View File

@ -1,22 +1,14 @@
{ stdenv, fetchurl, fetchpatch, python, root, makeWrapper, zlib, withRootSupport ? false }: { stdenv, fetchurl, python, root, makeWrapper, zlib, withRootSupport ? false }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "yoda"; pname = "yoda";
version = "1.7.7"; version = "1.8.2";
src = fetchurl { src = fetchurl {
url = "https://www.hepforge.org/archive/yoda/YODA-${version}.tar.bz2"; url = "https://www.hepforge.org/archive/yoda/YODA-${version}.tar.bz2";
sha256 = "1ki88rscnym0vjxpfgql8m1lrc7vm1jb9w4jhw9lvv3rk84lpdng"; sha256 = "1nqbv334iwdvbsc5bw8g936cxzc1hyzv9r8kjy4v124vrw8qqmc9";
}; };
patches = [
# fixes "TypeError: expected bytes, str found" in writeYODA()
(fetchpatch {
url = "https://gitlab.com/hepcedar/yoda/commit/d2bbbe92912457f8a29b440cbfa0b39daf28ec34.diff";
sha256 = "1x60piswpxwak61r2sdclsc8pzi1fshpkjnxlyflsa1iap77vkq8";
})
];
nativeBuildInputs = with python.pkgs; [ cython makeWrapper ]; nativeBuildInputs = with python.pkgs; [ cython makeWrapper ];
buildInputs = [ python ] buildInputs = [ python ]
++ (with python.pkgs; [ numpy matplotlib ]) ++ (with python.pkgs; [ numpy matplotlib ])
@ -27,6 +19,7 @@ stdenv.mkDerivation rec {
postPatch = '' postPatch = ''
touch pyext/yoda/*.{pyx,pxd} touch pyext/yoda/*.{pyx,pxd}
patchShebangs .
''; '';
postInstall = '' postInstall = ''
@ -37,6 +30,9 @@ stdenv.mkDerivation rec {
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
doInstallCheck = true;
installCheckTarget = "check";
meta = { meta = {
description = "Provides small set of data analysis (specifically histogramming) classes"; description = "Provides small set of data analysis (specifically histogramming) classes";
license = stdenv.lib.licenses.gpl3; license = stdenv.lib.licenses.gpl3;

View File

@ -283,6 +283,7 @@ mapAliases ({
matrique = spectral; # added 2020-01-27 matrique = spectral; # added 2020-01-27
mbedtls_1_3 = throw "mbedtls_1_3 is end of life, see https://tls.mbed.org/kb/how-to/upgrade-2.0"; # added 2019-12-08 mbedtls_1_3 = throw "mbedtls_1_3 is end of life, see https://tls.mbed.org/kb/how-to/upgrade-2.0"; # added 2019-12-08
mess = mame; # added 2019-10-30 mess = mame; # added 2019-10-30
mcgrid = throw "mcgrid has been removed from nixpkgs, as it's not compatible with rivet 3"; # added 2020-05-23
mcomix = throw "mcomix has been removed from nixpkgs, as it's unmaintained"; # added 2019-12-10 mcomix = throw "mcomix has been removed from nixpkgs, as it's unmaintained"; # added 2019-12-10
mirage = throw "mirage has been femoved from nixpkgs, as it's unmaintained"; # added 2019-12-10 mirage = throw "mirage has been femoved from nixpkgs, as it's unmaintained"; # added 2019-12-10
mysql-client = hiPrio mariadb.client; mysql-client = hiPrio mariadb.client;

View File

@ -25300,8 +25300,6 @@ in
lhapdf = callPackage ../development/libraries/physics/lhapdf { }; lhapdf = callPackage ../development/libraries/physics/lhapdf { };
mcgrid = callPackage ../development/libraries/physics/mcgrid { };
mela = callPackage ../development/libraries/physics/mela { }; mela = callPackage ../development/libraries/physics/mela { };
nlojet = callPackage ../development/libraries/physics/nlojet { }; nlojet = callPackage ../development/libraries/physics/nlojet { };
@ -25309,13 +25307,14 @@ in
pythia = callPackage ../development/libraries/physics/pythia { }; pythia = callPackage ../development/libraries/physics/pythia { };
rivet = callPackage ../development/libraries/physics/rivet { rivet = callPackage ../development/libraries/physics/rivet {
hepmc = hepmc2;
imagemagick = graphicsmagick-imagemagick-compat; imagemagick = graphicsmagick-imagemagick-compat;
}; };
thepeg = callPackage ../development/libraries/physics/thepeg { }; thepeg = callPackage ../development/libraries/physics/thepeg { };
yoda = callPackage ../development/libraries/physics/yoda { yoda = callPackage ../development/libraries/physics/yoda {
python = python2; python = python3;
}; };
yoda-with-root = lowPrio (yoda.override { yoda-with-root = lowPrio (yoda.override {
withRootSupport = true; withRootSupport = true;

View File

@ -5576,8 +5576,8 @@ in {
retworkx = callPackage ../development/python-modules/retworkx { }; retworkx = callPackage ../development/python-modules/retworkx { };
rivet = disabledIf isPy3k (toPythonModule (pkgs.rivet.override { rivet = disabledIf (!isPy3k) (toPythonModule (pkgs.rivet.override {
python2 = python; python3 = python;
})); }));
ripser = callPackage ../development/python-modules/ripser { }; ripser = callPackage ../development/python-modules/ripser { };