nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 python3Packages,
4 fetchFromGitHub,
5 gitUpdater,
6}:
7
8let
9 version = "0.11.12";
10in
11python3Packages.buildPythonApplication {
12 pname = "ablog";
13 inherit version;
14 pyproject = true;
15
16 src = fetchFromGitHub {
17 owner = "sunpy";
18 repo = "ablog";
19 tag = "v${version}";
20 hash = "sha256-bPTaxkuIKeypfnZItG9cl51flHBIx/yg0qENuiqQgY4=";
21 };
22
23 build-system = with python3Packages; [
24 setuptools
25 setuptools-scm
26 wheel
27 ];
28
29 dependencies = with python3Packages; [
30 docutils
31 feedgen
32 invoke
33 packaging
34 python-dateutil
35 sphinx
36 watchdog
37 ];
38
39 nativeCheckInputs = with python3Packages; [
40 pytestCheckHook
41 defusedxml
42 ];
43
44 pytestFlags = [
45 "--rootdir=src/ablog"
46 "-Wignore::sphinx.deprecation.RemovedInSphinx90Warning" # Ignore ImportError
47 ];
48
49 disabledTests = [
50 # upstream investigation is still ongoing
51 # https://github.com/sunpy/ablog/issues/302
52 "test_not_safe_for_parallel_read"
53 # need sphinx old version
54 "test_feed"
55 ];
56
57 passthru.updateScript = gitUpdater { rev-prefix = "v"; };
58
59 meta = {
60 description = "Sphinx extension that converts any documentation or personal website project into a full-fledged blog";
61 mainProgram = "ablog";
62 homepage = "https://ablog.readthedocs.io/en/latest/";
63 license = lib.licenses.mit;
64 maintainers = with lib.maintainers; [ rgrinberg ];
65 };
66}