Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / python-modules / staticjinja / default.nix
blob54a93398e1ff24041308eb11367dd2767338d6eb
1 { lib
2 , fetchFromGitHub
3 , buildPythonPackage
4 , poetry-core
5 , docopt-ng
6 , easywatch
7 , jinja2
8 , pytestCheckHook
9 , pytest-check
10 , pythonOlder
11 , markdown
12 , testers
13 , tomlkit
14 , typing-extensions
15 , staticjinja
16 , callPackage
19 buildPythonPackage rec {
20   pname = "staticjinja";
21   version = "5.0.0";
22   format = "pyproject";
24   disabled = pythonOlder "3.6";
26   # No tests in pypi
27   src = fetchFromGitHub {
28     owner = "staticjinja";
29     repo = pname;
30     rev = version;
31     hash = "sha256-LfJTQhZtnTOm39EWF1m2MP5rxz/5reE0G1Uk9L7yx0w=";
32   };
34   nativeBuildInputs = [
35     poetry-core
36   ];
38   propagatedBuildInputs = [
39     jinja2
40     docopt-ng
41     easywatch
42   ];
44   nativeCheckInputs = [
45     pytestCheckHook
46     pytest-check
47     markdown
48     tomlkit
49     typing-extensions
50   ];
52   # The tests need to find and call the installed staticjinja executable
53   preCheck = ''
54     export PATH="$PATH:$out/bin";
55   '';
57   passthru.tests = {
58     version = testers.testVersion { package = staticjinja; };
59     minimal-template = callPackage ./test-minimal-template {};
60   };
62   meta = with lib; {
63     description = "A library and cli tool that makes it easy to build static sites using Jinja2";
64     homepage = "https://staticjinja.readthedocs.io/en/latest/";
65     license = licenses.mit;
66     maintainers = with maintainers; [ fgaz ];
67   };