diff mbox series

[bug#71787,10/12] gnu: Add python-svglib.

Message ID 20240626192717.12818-10-david.elsing@posteo.net
State New
Headers show
Series Update and unbundle ghostscript and mupdf | expand

Commit Message

David Elsing June 26, 2024, 7:27 p.m. UTC
* gnu/packages/python-xyz.scm (python-svglib): New variable.
---
 gnu/packages/python-xyz.scm | 41 +++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)
diff mbox series

Patch

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 111a3dd56c..d1385ffdef 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -29611,6 +29611,47 @@  (define-public python-cairosvg
 qvarious formats: PDF, PostScript, PNG and even SVG.")
     (license license:lgpl3+)))
 
+(define-public python-svglib
+  (package
+    (name "python-svglib")
+    (version "1.5.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "svglib" version))
+       (sha256
+        (base32 "11z5jl38zjbzrmdly197m5x6303axcnlrlml1w6fd7j0m79nbrrs"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs
+     (list python-cssselect2
+           python-lxml
+           python-reportlab
+           python-tinycss2))
+    (native-inputs
+     (list python-pytest))
+    (arguments
+     (list
+      #:phases
+      '(modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+             (if tests?
+                 (setenv "PYTHONPATH" (getcwd))
+                 (invoke
+                  "pytest" "-vv"
+                  ;; These tests download additional data
+                  "--deselect"
+                  "tests/test_samples.py::TestW3CSVG::test_convert_pdf_png"
+                  "--deselect"
+                  (string-append
+                   "tests/test_samples.py::TestWikipediaFlags"
+                   "::test_convert_pdf"))))))))
+    (home-page "https://github.com/deeplook/svglib")
+    (synopsis "Python library for reading and converting SVG files")
+    (description "This package provides a pure-Python library for reading SVG
+files and converting them to other formats.")
+    (license license:lgpl3+)))
+
 (define-public python-pyphen
   (package
     (name "python-pyphen")