1{
2 # eval time deps
3 lib
4, buildPythonPackage
5, fetchFromGitHub
6, pythonOlder
7 # runtime deps
8, click
9, ghp-import
10, importlib-metadata
11, jinja2
12, markdown
13, mergedeep
14, packaging
15, pyyaml
16, pyyaml-env-tag
17, watchdog
18 # testing deps
19, babel
20, mock
21, unittestCheckHook
22}:
23
24buildPythonPackage rec {
25 pname = "mkdocs";
26 version = "1.3.0";
27 disabled = pythonOlder "3.6";
28
29 src = fetchFromGitHub {
30 owner = pname;
31 repo = pname;
32 rev = version;
33 sha256 = "sha256-S4xkr3jS5GvkMu8JnEGfqhmkxy3FtZZb7Rbuniltudg=";
34 };
35
36 propagatedBuildInputs = [
37 click
38 jinja2
39 markdown
40 mergedeep
41 pyyaml
42 pyyaml-env-tag
43 ghp-import
44 importlib-metadata
45 watchdog
46 packaging
47 ];
48
49 checkInputs = [
50 unittestCheckHook
51 babel
52 mock
53 ];
54
55 unittestFlagsArray = [ "-v" "-p" "'*tests.py'" "mkdocs" ];
56
57 pythonImportsCheck = [ "mkdocs" ];
58
59 meta = with lib; {
60 description = "Project documentation with Markdown / static website generator";
61 longDescription = ''
62 MkDocs is a fast, simple and downright gorgeous static site generator that's
63 geared towards building project documentation. Documentation source files
64 are written in Markdown, and configured with a single YAML configuration file.
65
66 MkDocs can also be used to generate general-purpose websites.
67 '';
68 homepage = "http://mkdocs.org/";
69 license = licenses.bsd2;
70 platforms = platforms.unix;
71 maintainers = with maintainers; [ rkoe ];
72 };
73}