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