1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 fetchpatch,
6 pandocfilters,
7 psutil,
8 setuptools,
9}:
10
11buildPythonPackage rec {
12 pname = "pandoc-xnos";
13 version = "2.5.0";
14 pyproject = true;
15
16 src = fetchFromGitHub {
17 owner = "tomduck";
18 repo = "pandox-xnos";
19 tag = version;
20 hash = "sha256-beiGvN0DS6s8wFjcDKozDuwAM2OApX3lTRaUDRUqLeU=";
21 };
22
23 patches = [
24 # This patch fix the Pandoc 3 compatibility.
25 # See: https://github.com/tomduck/pandoc-xnos/pull/29
26 (fetchpatch {
27 url = "https://github.com/tomduck/pandoc-xnos/commit/284474574f51888be75603e7d1df667a0890504d.patch";
28 hash = "sha256-j6xaFXo3jtXGPL58aIp8RTqeQZhJ8cVKL/iUbUhXBF0=";
29 })
30 ];
31
32 build-system = [ setuptools ];
33
34 pythonRelaxDeps = [ "psutil" ];
35
36 dependencies = [
37 pandocfilters
38 psutil
39 ];
40
41 pythonImportsCheck = [ "pandocxnos" ];
42
43 # tests need some patching
44 doCheck = false;
45
46 meta = {
47 description = "Pandoc filter suite providing facilities for cross-referencing in markdown documents";
48 mainProgram = "pandoc-xnos";
49 homepage = "https://github.com/tomduck/pandoc-xnos";
50 license = lib.licenses.gpl3Only;
51 maintainers = with lib.maintainers; [ ppenguin ];
52 };
53}