nixpkgs/pkgs/applications/science/math/sage/sagelib.nix

145 lines
2.1 KiB
Nix
Raw Normal View History

{ sage-src
2018-04-24 23:53:36 +02:00
, perl
, buildPythonPackage
, arb
, openblasCompat
, brial
, cliquer
, cypari2
, cysignals
, cython
, ecl
, eclib
, ecm
, flint
, gd
, givaro
, glpk
, gsl
, iml
, jinja2
, lcalc
, lrcalc
2019-01-17 00:28:37 +01:00
, gap
2018-04-24 23:53:36 +02:00
, linbox
, m4ri
, m4rie
, libmpc
, mpfi
, ntl
, numpy
, pari
, pkgconfig
, pkg-config
2018-04-24 23:53:36 +02:00
, planarity
, ppl
, pynac
, python
, ratpoints
, readline
, rankwidth
, symmetrica
, zn_poly
, fflas-ffpack
, boost
, singular
, pip
, jupyter_core
2018-08-05 16:50:06 +02:00
, libhomfly
, libbraiding
2018-04-24 23:53:36 +02:00
}:
2018-11-12 23:28:29 +01:00
# This is the core sage python package. Everything else is just wrappers gluing
# stuff together. It is not very useful on its own though, since it will not
# find many of its dependencies without `sage-env`, will not be tested without
# `sage-tests` and will not have html docs without `sagedoc`.
2018-04-24 23:53:36 +02:00
buildPythonPackage rec {
format = "other";
2018-11-12 23:28:29 +01:00
version = src.version;
name = "sagelib-${version}";
2018-04-24 23:53:36 +02:00
src = sage-src;
nativeBuildInputs = [
iml
perl
jupyter_core
pkg-config
pip # needed to query installed packages
2018-04-24 23:53:36 +02:00
];
buildInputs = [
gd
readline
iml
2018-04-24 23:53:36 +02:00
];
propagatedBuildInputs = [
cypari2
jinja2
numpy
pkgconfig
boost
arb
brial
cliquer
ecl
eclib
ecm
fflas-ffpack
flint
givaro
glpk
gsl
lcalc
2019-01-17 00:28:37 +01:00
gap
2018-04-24 23:53:36 +02:00
libmpc
linbox
lrcalc
m4ri
m4rie
mpfi
ntl
openblasCompat
pari
planarity
ppl
pynac
rankwidth
ratpoints
singular
symmetrica
zn_poly
pip
cython
cysignals
2018-08-05 16:50:06 +02:00
libhomfly
libbraiding
2018-04-24 23:53:36 +02:00
];
buildPhase = ''
export SAGE_ROOT="$PWD"
export SAGE_LOCAL="$SAGE_ROOT"
export SAGE_SHARE="$SAGE_LOCAL/share"
export JUPYTER_PATH="$SAGE_LOCAL/jupyter"
export PATH="$SAGE_ROOT/build/bin:$SAGE_ROOT/src/bin:$PATH"
export SAGE_NUM_THREADS="$NIX_BUILD_CORES"
mkdir -p "$SAGE_SHARE/sage/ext/notebook-ipython"
mkdir -p "var/lib/sage/installed"
cd src
source bin/sage-dist-helpers
${python.interpreter} -u setup.py --no-user-cfg build
'';
installPhase = ''
${python.interpreter} -u setup.py --no-user-cfg install --prefix=$out
rm -r "$out/${python.sitePackages}/sage/cython_debug"
'';
}