lol

scipoptsuite: init at 9.2.1 (#374527)

authored by

Arne Keller and committed by
GitHub
5b4ac0fa b09232d0

+359
+6
maintainers/maintainer-list.nix
··· 7851 7851 githubId = 11705326; 7852 7852 name = "Max Kochurov"; 7853 7853 }; 7854 + fettgoenner = { 7855 + email = "paulmatti@protonmail.com"; 7856 + github = "fettgoenner"; 7857 + githubId = 92429150; 7858 + name = "Paul Meinhold"; 7859 + }; 7854 7860 ffinkdevs = { 7855 7861 email = "fink@h0st.space"; 7856 7862 github = "ffinkdevs";
+65
pkgs/by-name/sc/scipopt-gcg/package.nix
··· 1 + { 2 + lib, 3 + pkgs, 4 + stdenv, 5 + fetchFromGitHub, 6 + cmake, 7 + scipopt-scip, 8 + cliquer, 9 + gsl, 10 + gmp, 11 + bliss, 12 + nauty, 13 + }: 14 + 15 + stdenv.mkDerivation rec { 16 + pname = "scipopt-gcg"; 17 + version = "371"; 18 + 19 + # To correlate scipVersion and version, check: https://scipopt.org/#news 20 + scipVersion = "9.2.1"; 21 + 22 + src = fetchFromGitHub { 23 + owner = "scipopt"; 24 + repo = "gcg"; 25 + tag = "v${version}"; 26 + hash = "sha256-+rD8tGE49Irg9xZTD3Ay87ISSeRI4kbBpCj5ppyENbo="; 27 + }; 28 + 29 + nativeBuildInputs = [ 30 + cmake 31 + ]; 32 + 33 + buildInputs = [ 34 + scipopt-scip 35 + cliquer 36 + gsl 37 + gmp 38 + bliss 39 + nauty 40 + ]; 41 + 42 + # Fixing the error 43 + # > CMake Error at CMakeLists.txt:236 (find_package): 44 + # > By not providing "FindNAUTY.cmake" in CMAKE_MODULE_PATH this project has 45 + # > asked CMake to find a package configuration file provided by "NAUTY", but 46 + # > CMake did not find one. 47 + # with this weird workaround of setting SCIPOptSuite_SOURCE_DIR to include the scipopt-scip source 48 + # files via symlinks, so the specific nauty files are found: 49 + preConfigure = '' 50 + mkdir -pv $out/scip 51 + ln -sv ${scipopt-scip.src}/src/ $out/scip/src 52 + cmakeFlagsArray+=( 53 + "-DSCIPOptSuite_SOURCE_DIR=$out" 54 + ) 55 + ''; 56 + doCheck = true; 57 + meta = { 58 + maintainers = with lib.maintainers; [ fettgoenner ]; 59 + changelog = "https://scipopt.org/doc-${scipVersion}/html/RN${lib.versions.major scipVersion}.php"; 60 + description = "Branch-and-Price & Column Generation for Everyone"; 61 + license = lib.licenses.lgpl3Plus; 62 + homepage = "https://gcg.zib.de"; 63 + mainProgram = "gcg"; 64 + }; 65 + }
+59
pkgs/by-name/sc/scipopt-papilo/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + cmake, 5 + fetchFromGitHub, 6 + boost, 7 + blas, 8 + gmp, 9 + tbb_2021_11, 10 + gfortran, 11 + }: 12 + 13 + stdenv.mkDerivation rec { 14 + pname = "scipopt-papilo"; 15 + version = "2.4.1"; 16 + 17 + # To correlate scipVersion and version, check: https://scipopt.org/#news 18 + scipVersion = "9.2.1"; 19 + 20 + src = fetchFromGitHub { 21 + owner = "scipopt"; 22 + repo = "papilo"; 23 + tag = "v${version}"; 24 + hash = "sha256-oQ9iq5UkFK0ghUx6uxdJIOo5niQjniHegSZptqi2fgE="; 25 + }; 26 + 27 + nativeBuildInputs = [ cmake ]; 28 + 29 + buildInputs = [ 30 + blas 31 + gmp 32 + gfortran 33 + boost 34 + tbb_2021_11 35 + ]; 36 + 37 + cmakeFlags = [ 38 + # Disable automatic download of TBB. 39 + (lib.cmakeBool "TBB_DOWNLOAD" false) 40 + 41 + # Explicitly disable SoPlex as a built-in back-end solver to avoid this error: 42 + # > include/boost/multiprecision/mpfr.hpp:22: fatal error: mpfr.h: No such file or directory 43 + # > compilation terminated. 44 + (lib.cmakeBool "SOPLEX" false) 45 + 46 + # (lib.cmakeBool "GMP" true) 47 + # (lib.cmakeBool "QUADMATH" true) 48 + # (lib.cmakeBool "TBB" true) 49 + ]; 50 + doCheck = true; 51 + meta = { 52 + maintainers = with lib.maintainers; [ fettgoenner ]; 53 + changelog = "https://scipopt.org/doc-${scipVersion}/html/RN${lib.versions.major scipVersion}.php"; 54 + description = "Parallel Presolve for Integer and Linear Optimization"; 55 + license = lib.licenses.lgpl3Plus; 56 + homepage = "https://github.com/scipopt/papilo"; 57 + mainProgram = "papilo"; 58 + }; 59 + }
+61
pkgs/by-name/sc/scipopt-scip/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchzip, 5 + fetchFromGitHub, 6 + cmake, 7 + zlib, 8 + readline, 9 + gmp, 10 + scipopt-soplex, 11 + scipopt-papilo, 12 + scipopt-zimpl, 13 + ipopt, 14 + tbb_2021_11, 15 + boost, 16 + gfortran, 17 + criterion, 18 + mpfr, 19 + }: 20 + 21 + stdenv.mkDerivation rec { 22 + pname = "scipopt-scip"; 23 + version = "9.2.1"; 24 + 25 + src = fetchFromGitHub { 26 + owner = "scipopt"; 27 + repo = "scip"; 28 + tag = "v${lib.replaceStrings [ "." ] [ "" ] version}"; 29 + hash = "sha256-xYxbMZYYqFNInlct8Ju0SrksfJlwV9Q+AHjxq7xhfAs="; 30 + }; 31 + 32 + nativeBuildInputs = [ cmake ]; 33 + 34 + buildInputs = [ 35 + scipopt-soplex 36 + scipopt-papilo 37 + scipopt-zimpl 38 + ipopt 39 + gmp 40 + readline 41 + zlib 42 + tbb_2021_11 43 + boost 44 + gfortran 45 + criterion 46 + mpfr # if not included, throws fatal error: mpfr.h not found 47 + ]; 48 + 49 + cmakeFlags = [ ]; 50 + 51 + doCheck = true; 52 + 53 + meta = { 54 + maintainers = with lib.maintainers; [ fettgoenner ]; 55 + changelog = "https://scipopt.org/doc-${version}/html/RN${lib.versions.major version}.php"; 56 + description = "Solving Constraint Integer Programs"; 57 + license = lib.licenses.asl20; 58 + homepage = "https://github.com/scipopt/scip"; 59 + mainProgram = "scip"; 60 + }; 61 + }
+48
pkgs/by-name/sc/scipopt-soplex/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + cmake, 5 + gmp, 6 + mpfr, 7 + zlib, 8 + boost, 9 + fetchFromGitHub, 10 + }: 11 + 12 + stdenv.mkDerivation (finalAttrs: { 13 + pname = "scipopt-soplex"; 14 + version = "713"; 15 + 16 + # To correlate scipVersion and version, check: https://scipopt.org/#news 17 + scipVersion = "9.2.1"; 18 + 19 + src = fetchFromGitHub { 20 + owner = "scipopt"; 21 + repo = "soplex"; 22 + rev = "release-${builtins.replaceStrings [ "." ] [ "" ] finalAttrs.version}"; 23 + hash = "sha256-qI7VGPAm3ALzeiD/OgvlZ1w2GzHRYdBajTW5XdIN9pU="; 24 + }; 25 + 26 + nativeBuildInputs = [ cmake ]; 27 + 28 + buildInputs = [ 29 + boost 30 + gmp 31 + mpfr 32 + zlib 33 + ]; 34 + 35 + strictDeps = true; 36 + 37 + doCheck = true; 38 + 39 + meta = { 40 + homepage = "https://soplex.zib.de/"; 41 + description = "Sequential object-oriented simPlex"; 42 + license = with lib.licenses; [ asl20 ]; 43 + mainProgram = "soplex"; 44 + maintainers = with lib.maintainers; [ david-r-cox ]; 45 + changelog = "https://scipopt.org/doc-${finalAttrs.scipVersion}/html/RN${lib.versions.major finalAttrs.scipVersion}.php"; 46 + platforms = lib.platforms.unix; 47 + }; 48 + })
+45
pkgs/by-name/sc/scipopt-ug/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchzip, 5 + cmake, 6 + scipopt-scip, 7 + zlib, 8 + mpi, 9 + }: 10 + 11 + stdenv.mkDerivation rec { 12 + pname = "scipopt-ug"; 13 + version = "1.0.0-beta6"; 14 + 15 + # To correlate scipVersion and version, check: https://scipopt.org/#news 16 + scipVersion = "9.2.1"; 17 + 18 + # Take the SCIPOptSuite source since no other source exists publicly. 19 + src = fetchzip { 20 + url = "https://github.com/scipopt/scip/releases/download/v${ 21 + lib.replaceStrings [ "." ] [ "" ] scipVersion 22 + }/scipoptsuite-${scipVersion}.tgz"; 23 + sha256 = "sha256-Hi6oDPtJZODTBIuRYE62sUMTJqfmF0flY3cGoWh2IZE="; 24 + }; 25 + 26 + sourceRoot = "${src.name}/ug"; 27 + 28 + nativeBuildInputs = [ 29 + cmake 30 + ]; 31 + 32 + buildInputs = [ 33 + scipopt-scip 34 + mpi 35 + zlib 36 + ]; 37 + 38 + meta = { 39 + maintainers = with lib.maintainers; [ fettgoenner ]; 40 + changelog = "https://scipopt.org/doc-${scipVersion}/html/RN${lib.versions.major scipVersion}.php"; 41 + description = "Ubiquity Generator framework to parallelize branch-and-bound based solvers"; 42 + license = lib.licenses.lgpl3Plus; 43 + homepage = "https://ug.zib.de"; 44 + }; 45 + }
+75
pkgs/by-name/sc/scipopt-zimpl/package.nix
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + cmake, 6 + bison, 7 + flex, 8 + gmp, 9 + zlib, 10 + }: 11 + 12 + stdenv.mkDerivation rec { 13 + pname = "scipopt-zimpl"; 14 + version = "362"; 15 + 16 + # To correlate scipVersion and version, check: https://scipopt.org/#news 17 + scipVersion = "9.2.1"; 18 + 19 + src = fetchFromGitHub { 20 + owner = "scipopt"; 21 + repo = "zimpl"; 22 + tag = "v${version}"; 23 + sha256 = "juqAwzqBArsFXmz7L7RQaE78EhQdP5P51wQFlCoo7/o="; 24 + }; 25 + 26 + postPatch = '' 27 + chmod +x check/check.sh 28 + ''; 29 + 30 + nativeBuildInputs = [ 31 + cmake 32 + bison 33 + flex 34 + ]; 35 + 36 + buildInputs = [ 37 + gmp 38 + zlib 39 + ]; 40 + doCheck = true; 41 + 42 + checkPhase = '' 43 + runHook preCheck 44 + pushd ../check 45 + ./check.sh ../build/bin/zimpl 46 + popd 47 + runHook postCheck 48 + ''; 49 + meta = { 50 + maintainers = with lib.maintainers; [ fettgoenner ]; 51 + changelog = "https://scipopt.org/doc-${scipVersion}/html/RN${lib.versions.major scipVersion}.php"; 52 + description = "Zuse Institut Mathematical Programming Language"; 53 + longDescription = '' 54 + ZIMPL is a little language to translate the mathematical model of a 55 + problem into a linear or (mixed-)integer mathematical program 56 + expressed in .lp or .mps file format which can be read by a LP or MIP 57 + solver. 58 + 59 + If you use Zimpl for research and publish results, the best way 60 + to refer to Zimpl is to cite my Ph.d. thesis: 61 + 62 + @PHDTHESIS{Koch2004, 63 + author = "Thorsten Koch", 64 + title = "Rapid Mathematical Programming", 65 + year = "2004", 66 + school = "Technische {Universit\"at} Berlin", 67 + url = "http://www.zib.de/Publications/abstracts/ZR-04-58/", 68 + note = "ZIB-Report 04-58", 69 + } 70 + ''; 71 + license = lib.licenses.lgpl3Plus; 72 + homepage = "https://zimpl.zib.de"; 73 + mainProgram = "zimpl"; 74 + }; 75 + }