-
Notifications
You must be signed in to change notification settings - Fork 1
/
default.nix
77 lines (72 loc) · 1.85 KB
/
default.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
{
current ? import (builtins.fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/ae1c8ede09b53007ba9b3c32f926c9c03547ae8b.tar.gz";
sha256 = "1lpphn9dcf8vh8ia38f472i7cqggp3knpfa2jwlc6z5ldbvrw7ki";
}) {}
}:
with current;
stdenv.mkDerivation rec {
name = "env" ;
builder = builtins.toFile "builder.sh" ''
source $stdenv/setup; ln-s $env $out
'';
buildInputs = [ git hdf4 gcc wget libjpeg openjpeg python38 nodejs
(python38.buildEnv.override {
ignoreCollisions = true;
extraLibs = with python38Packages; [
numpy
scipy
jupyterlab
traittypes
branca
flake8
matplotlib
boto3
intake
(dask.override { withExtraComplete = true; })
pip
notebook
cython
pandas
wheel
setuptools
pyrsistent
nbconvert
seaborn
gdal
h5py
datashader
netcdf4
shapely
pyproj
lib
numba
flask
joblib
geos
scikitlearn
xarray
six
time
pillow
gzip
setuptools
cycler
rasterio
ipython
nbformat
ipywidgets
];
})
];
shellHook = ''
alias pip="PIP_PREFIX='$(pwd)/_build/pip_packages' \pip"
export PYTHONPATH="$(pwd)/_build/pip_packages/lib/python3.8/site-packages:$PYTHONPATH"
export PREFIX_PATH="$(pwd)/_build/pip_packages"
export JUPYTERLAB_DIR="$(pwd)/jupyterlab"
pip install ipyleaflet --prefix=$PREFIX_PATH
jupyter nbextension install --py --symlink --user ipyleaflet
jupyter nbextension enable --py --user ipyleaflet
jupyter labextension install @jupyter-widgets/jupyterlab-manager jupyter-leaflet --app-dir=$JUPYTERLAB_DIR
'';
}