Subject: [bug#50505] [PATCH 05/12] gnu: Add python-pyglet.

From: Xinglu Chen <[email-masked]>
Date: Sat, 11 Sep 2021 21:49:24 +0200

On Fri, Sep 10 2021, Daniel Meißner via Guix-patches via wrote:

> * gnu/packages/python-xyz.scm (python-pyglet): New variable.
> ---
>  gnu/packages/python-xyz.scm | 42 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 42 insertions(+)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 394f30226f..e1e676490b 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -18957,6 +18957,48 @@ quality, with less code written.  The majority of the moderngl code base is
>  also written in C++ for high performance.")
>      (license license:expat)))
>  
> +(define-public python-pyglet
> +  (package
> +    (name "python-pyglet")
> +    (version "1.5.18")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (pypi-uri "pyglet" version ".zip"))
> +       (sha256
> +        (base32
> +         "044ib8x6pv5rjwj210hq37ry7vi5bizmqkkv1zj8967prk5ii8sq"))))
> +    (build-system python-build-system)
> +    (arguments
> +     '(;; tests fail with: TypeError: don't know how to make test from:
> +       ;; <pyglet._ModuleProxy object at ...>
> +       #:tests? #f
> +       #:phases (modify-phases %standard-phases

Nit: ‘modify-phase’ is usually on its own line.

> +                  (add-before 'build 'fix-lib-paths
> +                    (lambda* (#:key inputs outputs #:allow-other-keys)
> +                      (substitute* '("pyglet/gl/lib_glx.py")
> +                        (("'GL'")
> +                         (string-append "\"" (assoc-ref inputs "mesa")
> +                                        "/lib/libGL.so\""))
> +                        (("'GLU'")
> +                         (string-append "\"" (assoc-ref inputs "glu")
> +                                        "/lib/libGLU.so\"")))
> +                      #t)))))

No need for trailing #t.

> +    (inputs
> +     `(("mesa" ,mesa)
> +       ("glu" ,glu)))
> +    (native-inputs `(("unzip" ,unzip)))
> +    (home-page
> +     "https://pyglet.readthedocs.io")

No need for a newline.

> +    (synopsis
> +     "Cross-platform windowing and multimedia Python library")
> +    (description
> +     "Pyglet is a Python library for developing games and other visually-rich
> +applications.  It supports windowing, user interface event handling,
> +Joysticks, OpenGL graphics, loading images and videos, and playing sounds and
> +music.  All of this with a friendly Pythonic API that's simple to learn.")
> +    (license license:bsd-3)))
> +
>  (define-public python-rencode
>    (package
>     (name "python-rencode")
> -- 
> 2.33.0