summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/notebook/Manifest1
-rw-r--r--dev-python/notebook/files/notebook-5.2.1-setupbase.py.patch44
-rw-r--r--dev-python/notebook/notebook-5.2.1.ebuild106
3 files changed, 151 insertions, 0 deletions
diff --git a/dev-python/notebook/Manifest b/dev-python/notebook/Manifest
index 7301c6382572..3444a5d9cbdf 100644
--- a/dev-python/notebook/Manifest
+++ b/dev-python/notebook/Manifest
@@ -1 +1,2 @@
DIST notebook-5.0.0.tar.gz 11481080 BLAKE2B 3cc483d338ca22c6b4d7199100875e9425f90e1a7059c016cec07500f0558c437db5f7e367a5c4441520deb68fa891be31c07cd93e858c872a1f12d893530479 SHA512 fbee29cc554f36e94b1fe9804187a50581e840cfb5884bcdf2fef82ad9ae3ae0e2082ea0056f815bfa2a1c2f203679169155e61e53253aa2e9004a43ff7fbcae
+DIST notebook-5.2.1.tar.gz 12458130 BLAKE2B f10a91fd79064fb09889c4ee30a84a0b34321d3a89f950609df9a90106ed4af75268cc1b087d0229882575d548b7b2b78632aa97452f89fc67910586911fc467 SHA512 defdb08e37dcec9fe799d0b03dc8dc2339f37c9417e4b138ba83b98433dd77f0dea3d83e07368e67f18155af1a67bbabea21ccd061d8a926b6b084fd25960576
diff --git a/dev-python/notebook/files/notebook-5.2.1-setupbase.py.patch b/dev-python/notebook/files/notebook-5.2.1-setupbase.py.patch
new file mode 100644
index 000000000000..97be84cb364a
--- /dev/null
+++ b/dev-python/notebook/files/notebook-5.2.1-setupbase.py.patch
@@ -0,0 +1,44 @@
+Disable bundled mathjax.
+
+Patch by Marius Brehler.
+--- a/setupbase.py
++++ b/setupbase.py
+@@ -168,38 +168,6 @@ def find_package_data():
+ if f.endswith(('.js', '.css')):
+ static_data.append(pjoin(parent, f))
+
+- # Trim mathjax
+- mj = lambda *path: pjoin(components, 'MathJax', *path)
+- static_data.extend([
+- mj('MathJax.js'),
+- mj('config', 'TeX-AMS-MML_HTMLorMML-full.js'),
+- mj('config', 'Safe.js'),
+- ])
+-
+- trees = []
+- mj_out = mj('jax', 'output')
+-
+- if os.path.exists(mj_out):
+- for output in os.listdir(mj_out):
+- path = pjoin(mj_out, output)
+- static_data.append(pjoin(path, '*.js'))
+- autoload = pjoin(path, 'autoload')
+- if os.path.isdir(autoload):
+- trees.append(autoload)
+-
+- for tree in trees + [
+- mj('localization'), # limit to en?
+- mj('fonts', 'HTML-CSS', 'STIX-Web', 'woff'),
+- mj('extensions'),
+- mj('jax', 'input', 'TeX'),
+- mj('jax', 'output', 'HTML-CSS', 'fonts', 'STIX-Web'),
+- mj('jax', 'output', 'SVG', 'fonts', 'STIX-Web'),
+- mj('jax', 'element', 'mml'),
+- ]:
+- for parent, dirs, files in os.walk(tree):
+- for f in files:
+- static_data.append(pjoin(parent, f))
+-
+ os.chdir(os.path.join('tests',))
+ js_tests = glob('*.js') + glob('*/*.js')
+
diff --git a/dev-python/notebook/notebook-5.2.1.ebuild b/dev-python/notebook/notebook-5.2.1.ebuild
new file mode 100644
index 000000000000..cea2f1f52b85
--- /dev/null
+++ b/dev-python/notebook/notebook-5.2.1.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Jupyter Interactive Notebook"
+HOMEPAGE="http://jupyter.org"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="doc test"
+RDEPEND="
+ >=dev-libs/mathjax-2.4
+ dev-python/jinja[${PYTHON_USEDEP}]
+ >=dev-python/terminado-0.3.3[${PYTHON_USEDEP}]
+ >=www-servers/tornado-4.0[${PYTHON_USEDEP}]
+ dev-python/ipython_genutils[${PYTHON_USEDEP}]
+ >=dev-python/traitlets-4.2.1[${PYTHON_USEDEP}]
+ >=dev-python/jupyter_core-4.4.0[${PYTHON_USEDEP}]
+ dev-python/jupyter_client[${PYTHON_USEDEP}]
+ dev-python/nbformat[${PYTHON_USEDEP}]
+ >=dev-python/nbconvert-4.2.0[${PYTHON_USEDEP}]
+ dev-python/ipykernel[${PYTHON_USEDEP}]
+ "
+DEPEND="${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ $(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]' 'python2*')
+ >=dev-python/nose-0.10.1[${PYTHON_USEDEP}]
+ dev-python/nose_warnings_filters[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/coverage[${PYTHON_USEDEP}]
+ )
+ doc? (
+ app-text/pandoc
+ >=dev-python/ipython-4.0.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-1.3.6[${PYTHON_USEDEP}]
+ dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+ =dev-python/nbsphinx-0.2.14[${PYTHON_USEDEP}]
+ test? (
+ $(python_gen_cond_dep 'dev-python/nbval[${PYTHON_USEDEP}]' 'python3*')
+ $(python_gen_cond_dep 'dev-python/pytest[${PYTHON_USEDEP}]' 'python3*')
+ )
+ )
+ "
+
+PATCHES=( "${FILESDIR}/${P}"-setupbase.py.patch )
+
+# Opens a qtconsole
+restrict="doc"
+
+python_prepare_all() {
+ sed \
+ -e "/import setup/s:$:\nimport setuptools:g" \
+ -i setup.py || die
+
+ # disable bundled mathjax
+ sed -i 's/^.*MathJax.*$//' bower.json || die
+
+ # Prevent un-needed download during build
+ if use doc; then
+ sed \
+ -e "/^ 'sphinx.ext.intersphinx',/d" \
+ -i docs/source/conf.py || die
+ fi
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ if use doc; then
+ addwrite /dev/dri/card0
+ emake -C docs html
+ HTML_DOCS=( docs/build/html/. )
+ fi
+}
+
+python_test() {
+ nosetests \
+ --verbosity=3 \
+ notebook || die
+
+ if use doc && python_is_python3; then
+ py.test --nbval --current-env docs || die
+ fi
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ ln -sf \
+ "${EPREFIX}/usr/share/mathjax" \
+ "${D}$(python_get_sitedir)/notebook/static/components/MathJax" || die
+}
+
+pkg_preinst() {
+ # remove old mathjax folder if present
+ rm -rf "${EROOT%/}"/usr/lib*/python*/site-packages/notebook/static/components/MathJax || die
+}