[PATCH] gnu: Add python-manimpango.

  • Done
  • quality assurance status badge
Details
4 participants
  • Wamm K. D
  • Ludovic Courtès
  • Sharlatan Hellseher
  • Troy Figiel
Owner
unassigned
Submitted by
Wamm K. D
Severity
normal
W
W
Wamm K. D wrote on 23 Jul 2023 22:57
(address . guix-patches@gnu.org)(name . Wamm K. D)(address . jaft.r@outlook.com)
BY5PR07MB70299A6A356516D5B3E83FB5993DA@BY5PR07MB7029.namprd07.prod.outlook.com
* gnu/packages/python-xyz.scm (python-manimpango): New variable.
---
gnu/packages/python-xyz.scm | 22 +++++++++++++++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)

Toggle diff (49 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index db3e69fb45..14cb375a8a 100644

Right now, the tests are failing with "No module named 'manimpango.cmanimpango'";
it's clearly trying to import the package so it can use it for testing but the
test files are failing to find it (it looks like the "cmanimpango" file is a C
file (along with .pxd and .pyx files) so maybe it's Cython related?).

Is there a way we usually handle this for Python/Cython packages?
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -119,7 +119,7 @@
;;; Copyright © 2022 Evgeny Pisemsky <evgeny@pisemsky.com>
;;; Copyright © 2022 drozdov <drozdov@portalenergy.tech>
;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
-;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
+;;; Copyright © 2022, 2023 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
@@ -9292,6 +9292,26 @@ (define-public python-xcffib
support for Python 3 and PyPy. It is based on cffi.")
(license license:expat)))
+(define-public python-manimpango
+ (package
+ (name "python-manimpango")
+ (version "0.4.3")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "ManimPango" version))
+ (sha256 (base32
+ "00x1l55wy0k6v3b6l2g5603zk5d5dab59fwkxq6jq4ncifwiqbvk"))))
+ (build-system pyproject-build-system)
+ (native-inputs (list pkg-config python-cython python-pytest))
+ (inputs (list pango))
+ (home-page "https://pypi.org/project/ManimPango/")
+ (synopsis "Bindings for Pango for using with Manim.")
+ (description "Python bindings for ManimPango which is a C binding for Pango,
+using Cython.
+
+ManimPango is internally used in Manim to render (non-LaTeX) text.")
+ (license license:expat)))
+
(define-public python-cairocffi
(package
(name "python-cairocffi")
--
2.41.0
L
L
Ludovic Courtès wrote on 16 Aug 2023 22:35
(name . Wamm K. D)(address . jaft.r@outlook.com)(address . 64813@debbugs.gnu.org)
874jky4tfg.fsf@gnu.org
Hi,

"Wamm K. D" <jaft.r@outlook.com> skribis:

Toggle quote (15 lines)
> * gnu/packages/python-xyz.scm (python-manimpango): New variable.
> ---
> gnu/packages/python-xyz.scm | 22 +++++++++++++++++++++-
> 1 file changed, 21 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index db3e69fb45..14cb375a8a 100644
>
> Right now, the tests are failing with "No module named 'manimpango.cmanimpango'";
> it's clearly trying to import the package so it can use it for testing but the
> test files are failing to find it (it looks like the "cmanimpango" file is a C
> file (along with .pxd and .pyx files) so maybe it's Cython related?).
>
> Is there a way we usually handle this for Python/Cython packages?

I don’t know if there are specific tricks here, though maybe you could
grep around or look for other packages that depend on Cython?

HTH,
Ludo’.
T
T
Troy Figiel wrote on 16 Dec 2023 20:26
(no subject)
(address . 64813@debbugs.gnu.org)
87v88ygd9i.fsf@troyfigiel.com
Hi both of you,

I took the liberty to

- fix the build (the extensions still needed to be built)
- upgrade to the latest release
- rebase on master

Hope this helps!

Best wishes,

Troy
T
T
Troy Figiel wrote on 16 Dec 2023 20:24
[PATCH] gnu: Add python-manimpango.
(address . 64813@debbugs.gnu.org)
87ttoigd69.fsf@troyfigiel.com
* gnu/packages/python-xyz.scm (python-manimpango): New variable.

Change-Id: I5ee6faa9cfd51a173f73d03c5c18e3c7d399582a
---
gnu/packages/python-xyz.scm | 35 ++++++++++++++++++++++++++++++++++-
1 file changed, 34 insertions(+), 1 deletion(-)

Toggle diff (57 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 86f8d81689..6bc02393e0 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -119,7 +119,7 @@
;;; Copyright © 2022 Evgeny Pisemsky <evgeny@pisemsky.com>
;;; Copyright © 2022 drozdov <drozdov@portalenergy.tech>
;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
-;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
+;;; Copyright © 2022, 2023 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
@@ -9615,6 +9615,39 @@ (define-public python-pywinrm
any machine that can run Python.")
(license license:expat)))
+(define-public python-manimpango
+ (package
+ (name "python-manimpango")
+ (version "0.5.0")
+ (source
+ (origin
+ ;; Test fixtures are not included in the PyPI tarball. We need the Github
+ ;; release to successfully run the tests.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ManimCommunity/ManimPango")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "00mrvswk8yly0m13jq0f432pr19sy3j6w37lrv78ah1j6jz9n50h"))))
+ (build-system pyproject-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (add-before 'check 'build-extensions
+ (lambda _
+ (invoke "python" "setup.py" "build_ext" "--inplace"))))))
+ (native-inputs (list pkg-config python-cython python-pytest
+ python-pytest-cov))
+ (inputs (list pango))
+ (home-page "https://pypi.org/project/ManimPango/")
+ (synopsis "Bindings for Pango for using with Manim")
+ (description
+ "Python bindings for ManimPango which is a C binding for Pango,
+using Cython.
+
+ManimPango is internally used in Manim to render (non-LaTeX) text.")
+ (license license:expat)))
+
(define-public python-xcffib
(package
(name "python-xcffib")

base-commit: d5298c5e334e56a9aabddcb62d312e63135864f6
--
2.40.1
S
S
Sharlatan Hellseher wrote on 20 Jan 22:42 +0100
(address . 64813-done@debbugs.gnu.org)
87h6j7of6f.fsf@gmail.com
I've added Co-author-by Troy Figiel <troy@troyfigiel.com>, updated home-page to
https://manimpango.manim.community/,applied G-Expressions package style.

Pushed as 782d69fb7f88eeb5ea470f365d8ecbc761dfa1ff

Thanks,
Oleg
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEmEeB3micIcJkGAhndtcnv/Ys0rUFAmWsPigACgkQdtcnv/Ys
0rUnAg/9G1sb20p3E+a3rZn5ppkXj7MdpFXMokC+FBP4Z3xe3mh6pgrCds91hB9Y
hym30dkTKA+NQ/uWIkjEjVdiwdMrVlFNgNwVybMBAqq3liGDypIq80CztHJhIKvK
adsO33O85tiB5bRb+I3yHi3MEcPSNIKhZYcEZrhNwD5qKNCIwvl5SHZUHk+4VzQ8
MytTM5sSqmyd3T0+HLRjUvbh9x/ssxvVZlw53npk92/h1mv7qsZYm4j+31GBvDyD
4q8ULwgnk+o7rep4ytFGhhNfbhLHJcMZnhiHVPUuWYWN0HdbmKnjmnrxOhDILeOH
6AmNqizcuGgBiskVKwWdB+mpuPrc3jjy+hbAvOYGWvSYH3K1sJh6IbmxN1gdPzx2
XCEKN5MxHjJPQceAXlA/KdEB3W0cgKfSNRlCi9N2X2KeWrvZmYxQKv6ADaXN5Kqq
uiPznZz1aCqJksZ5ut0arapHAWKPBIKZ8HTZ+CwP6F1V73PNNnrAYtfJk/k0NkU6
RmIkc7VjrpVTxtQ+lZkCXkLH7Nbn90BVyTGUg2t07xX9eUDUpri65HJ0R9do5Yh/
QTj+JO1Mk+hws+kZxkS8V8Emhh1kaWmWeEDhxtaHQe/3AC7rUkYp8ohO1cUu3vkS
QHoRfxC+MTxqTKjr9KdGgUyFkdmWw2Kxt1xv93mS9IVnZjwqDuo=
=/rjc
-----END PGP SIGNATURE-----

Closed
?