nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 cachecontrol,
5 feedparser,
6 fetchFromGitHub,
7 gitpython,
8 jsonfeed,
9 mkdocs,
10 pytest-cov-stub,
11 pytestCheckHook,
12 setuptools,
13 setuptools-scm,
14 validator-collection,
15}:
16
17buildPythonPackage (finalAttrs: {
18 pname = "mkdocs-rss-plugin";
19 version = "1.17.9";
20 pyproject = true;
21
22 src = fetchFromGitHub {
23 owner = "Guts";
24 repo = "mkdocs-rss-plugin";
25 tag = finalAttrs.version;
26 hash = "sha256-rUMjS0+895SsU7qNckLL3BprUQa/3lJDjpwhMkF0jYg=";
27 };
28
29 build-system = [
30 setuptools
31 setuptools-scm
32 ];
33
34 dependencies = [
35 cachecontrol
36 gitpython
37 mkdocs
38 ]
39 ++ cachecontrol.optional-dependencies.filecache;
40
41 nativeCheckInputs = [
42 feedparser
43 jsonfeed
44 pytest-cov-stub
45 pytestCheckHook
46 validator-collection
47 ];
48
49 pythonImportsCheck = [ "mkdocs_rss_plugin" ];
50
51 disabledTests = [
52 # Tests require network access
53 "test_plugin_config_through_mkdocs"
54 "test_remote_image"
55 # Configuration error
56 "test_plugin_config_blog_enabled"
57 "test_plugin_config_social_cards_enabled_but_integration_disabled"
58 "test_plugin_config_theme_material"
59 "test_simple_build"
60 ];
61
62 disabledTestPaths = [
63 # Tests require network access
64 "tests/test_integrations_material_social_cards.py"
65 "tests/test_build_no_git.py"
66 "tests/test_build.py"
67 ];
68
69 meta = {
70 description = "MkDocs plugin to generate a RSS feeds for created and updated pages, using git log and YAML frontmatter";
71 homepage = "https://github.com/Guts/mkdocs-rss-plugin";
72 changelog = "https://github.com/Guts/mkdocs-rss-plugin/blob/${finalAttrs.version}/CHANGELOG.md";
73 license = lib.licenses.mit;
74 maintainers = with lib.maintainers; [ fab ];
75 };
76})