1{ lib
2, buildPythonPackage
3, pythonOlder
4, fetchPypi
5, flit-core
6, importlib-metadata
7, ipython
8, jupyter-cache
9, nbclient
10, myst-parser
11, nbformat
12, pyyaml
13, sphinx
14, sphinx-togglebutton
15, typing-extensions
16, ipykernel
17, pythonRelaxDepsHook
18}:
19
20buildPythonPackage rec {
21 pname = "myst-nb";
22 version = "0.17.2";
23
24 format = "flit";
25
26 disabled = pythonOlder "3.7";
27
28 src = fetchPypi {
29 inherit pname version;
30 hash = "sha256-D2E4ZRX6sHxzZGrcqX//L2n0HpDTE6JgIXxbvkGdhYs=";
31 };
32
33 nativeBuildInputs = [
34 flit-core
35 pythonRelaxDepsHook
36 ];
37
38 propagatedBuildInputs = [
39 importlib-metadata
40 ipython
41 jupyter-cache
42 nbclient
43 myst-parser
44 nbformat
45 pyyaml
46 sphinx
47 sphinx-togglebutton
48 typing-extensions
49 ipykernel
50 ];
51
52 pythonRelaxDeps = [
53 "myst-parser"
54 ];
55
56 pythonImportsCheck = [ "myst_nb" ];
57
58 meta = with lib; {
59 description = "A Jupyter Notebook Sphinx reader built on top of the MyST markdown parser";
60 homepage = "https://github.com/executablebooks/MyST-NB";
61 changelog = "https://github.com/executablebooks/MyST-NB/raw/v${version}/CHANGELOG.md";
62 license = licenses.mit;
63 maintainers = with maintainers; [ marsam ];
64 };
65}