summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-04-14 23:35:28 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-05-12 12:45:47 -0400
commit28b602d0f664e92b6edf1f36656242a747c67d58 (patch)
treee0d681d897fc500aad68bd4ab67718301ec55ee8 /gnu
parent6c7834f46aade4771d53434b6fd04c93e8746b7c (diff)
downloadguix-28b602d0f664e92b6edf1f36656242a747c67d58.tar.gz
gnu: Add python-sphinx-theme-builder.
* gnu/packages/sphinx.scm (python-sphinx-theme-builder): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/sphinx.scm50
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index a377729397..406fc8536b 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -1002,6 +1002,56 @@ automated way to document command-line programs.  It scans
 @code{.. program::} and @code{.. option::} directives.")
     (license license:bsd-2)))
 
+(define-public python-sphinx-theme-builder
+  (package
+    (name "python-sphinx-theme-builder")
+    (version "0.2.0a14")
+    (source
+     (origin
+       (method git-fetch)               ;no tests in pypi archive
+       (uri (git-reference
+             (url "https://github.com/pradyunsg/sphinx-theme-builder")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1brqp34q716gglliallbgq4m63hl3nk8j6w8wcl8f2vvnkch6v98"))))
+    (build-system python-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          ;; XXX: PEP 517 manual build copied from python-isort.
+          (replace 'build
+            (lambda _
+              ;; ZIP does not support timestamps before 1980.
+              (setenv "SOURCE_DATE_EPOCH" "315532800")
+              (invoke "python" "-m" "build" "--wheel" "--no-isolation" ".")))
+          (replace 'check
+            (lambda* (#:key tests? #:allow-other-keys)
+              (when tests?
+                (invoke "pytest" "-vv"))))
+          (replace 'install
+            (lambda _
+              (let ((whl (car (find-files "dist" "\\.whl$"))))
+                (invoke "pip" "--no-cache-dir" "--no-input"
+                        "install" "--no-deps" "--prefix" #$output whl)))))))
+    (native-inputs (list python-flit-core python-pytest))
+    (propagated-inputs
+     (list python-pypa-build
+           python-click
+           python-nodeenv
+           python-packaging
+           python-pep621
+           python-rich
+           python-sphinx-autobuild
+           python-tomli))
+    (home-page "https://github.com/pradyunsg/sphinx-theme-builder")
+    (synopsis "Tool for authoring Sphinx themes")
+    (description "This package provides a tool for authoring Sphinx themes
+with a simple (opinionated) workflow.")
+    (license license:expat)))
+
 (define-public python-pydata-sphinx-theme
   (package
     (name "python-pydata-sphinx-theme")