[buildout]
extends =
  ../numpy/openblas.cfg
  ../matplotlib/buildout.cfg
  ../ipython/buildout.cfg
  ../python-cffi/buildout.cfg
  ../python-pyzmq/buildout.cfg
  ../scipy/buildout.cfg
  ../scikit-learn/buildout.cfg
  ../pandas/buildout.cfg
  ../seaborn/buildout.cfg
  ../h5py/buildout.cfg

parts =
  jupyter
  jupyter-notebook-scripts

[argon2-cffi]
recipe = zc.recipe.egg:custom
egg = ${:_buildout_section_name_}
setup-eggs = ${python-cffi:egg}

[jupyter-env]
<= numpy-env

[jupyter]
recipe = zc.recipe.egg:scripts
eggs =
# jupter base egg
  jupyter
# explicit eggs to generate scripts from them
  jupyter_client
  jupyter_console
  jupyter_core
  nbconvert
  nbformat
  notebook
# additional eggs
  requests
  astor
  ${matplotlib:egg}
  ${scipy:egg}
  ${pandas:egg}
  ${scikit-learn:egg}
  ${seaborn:egg}
  ${statsmodels:egg}
  patsy
  ${h5py:egg}
  openpyxl
  sympy
  xlrd
  lxml-html-clean
# additional eggs for jupyterlab
  jupyterlab
  jupyterlab-launcher
  ${:extra-eggs}
extra-eggs =
  ${argon2-cffi:egg}

interpreter = pythonjupyter

environment = jupyter-env
setup-eggs =
  ${numpy:egg}
  ${python-pyzmq:egg}
  ${ipython:egg}

scripts =
  jupyter-kernelspec
  pythonjupyter
  jupyter
  jupyter-trust
  jupyter-console
  jupyter-migrate
  jupyter-troubleshoot
  jupyter-run

[jupyter-notebook-initialized-scripts]
recipe = zc.recipe.egg:scripts
eggs = ${jupyter:eggs}
environment = jupyter-env

scripts =
  jupyter-nbconvert
  jupyter-nbextension
  jupyter-notebook
  jupyter-serverextension
  jupyter-lab
  jupyter-labextension
  jupyter-labhub

initialization =
  # https://github.com/ipython/ipython/issues/5420
  import os
  os.environ['PYTHONPATH'] = ':'.join(sys.path)