From d9a2ceda140fee2b36ec6c781e2f95dfb75f0a4e Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Sat, 13 Sep 2025 15:21:33 +0200 Subject: [PATCH] python313Packages.sphinx-last-updated-by-git: init at 0.3.8-unstable-2025-08-26 --- .../sphinx-last-updated-by-git/default.nix | 64 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 4 ++ 2 files changed, 68 insertions(+) create mode 100644 pkgs/development/python-modules/sphinx-last-updated-by-git/default.nix diff --git a/pkgs/development/python-modules/sphinx-last-updated-by-git/default.nix b/pkgs/development/python-modules/sphinx-last-updated-by-git/default.nix new file mode 100644 index 000000000000..282fb5031ac1 --- /dev/null +++ b/pkgs/development/python-modules/sphinx-last-updated-by-git/default.nix @@ -0,0 +1,64 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + sphinx, + gitpython, + gitMinimal, + pytestCheckHook, + sphinx-pytest, + pytest-cov-stub, +}: +buildPythonPackage rec { + pname = "sphinx-last-updated-by-git"; + version = "0.3.8-unstable-2025-08-26"; + pyproject = true; + + src = fetchFromGitHub { + owner = "mgeier"; + repo = "sphinx-last-updated-by-git"; + rev = "07ac1a98af2a927e773a65c6524ce83067c977b8"; + hash = "sha256-2TGFR11Ejh/9zpVC/TEdmMNaBt38wE5yeJeYixZSVUE="; + fetchSubmodules = true; + leaveDotGit = true; + }; + + build-system = [ setuptools ]; + + dependencies = [ + sphinx + gitpython + ]; + + postPatch = '' + # we cant just substitute by matching `'git'` due to collisons + substituteInPlace src/sphinx_last_updated_by_git.py \ + --replace-fail "'git', 'ls-tree'" " '${lib.getExe gitMinimal}', 'ls-tree'" \ + --replace-fail "'git', 'log'" "'${lib.getExe gitMinimal}', 'log'" \ + --replace-fail "'git', 'rev-parse'" "'${lib.getExe gitMinimal}', 'rev-parse'" \ + ''; + + propagatedBuildInputs = [ gitMinimal ]; + + nativeCheckInputs = [ + pytestCheckHook + sphinx-pytest + pytest-cov-stub + ]; + + disabledTests = [ + "test_no_git" # we hardcoded the git path + + "test_repo_shallow" + "test_repo_shallow_without_warning" + ]; + + meta = { + changelog = "https://github.com/mgeier/sphinx-last-updated-by-git/blob/${version}/NEWS.rst"; + description = "Get the last updated time for each Sphinx page from Git"; + homepage = "https://github.com/mgeier/sphinx-last-updated-by-git"; + license = lib.licenses.bsd2; + maintainers = with lib.maintainers; [ sigmanificient ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0fc880511b5d..0459d71d16ca 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17239,6 +17239,10 @@ self: super: with self; { sphinx-jupyterbook-latex = callPackage ../development/python-modules/sphinx-jupyterbook-latex { }; + sphinx-last-updated-by-git = + callPackage ../development/python-modules/sphinx-last-updated-by-git + { }; + sphinx-lv2-theme = callPackage ../development/python-modules/sphinx-lv2-theme { }; sphinx-markdown-builder = callPackage ../development/python-modules/sphinx-markdown-builder { };