[PATCH 0/5] Update Ren'py to 7.4.11

DoneSubmitted by Liliana Marie Prikler.
Details
One participant
  • Liliana Marie Prikler
Owner
unassigned
Severity
normal
L
L
Liliana Marie Prikler wrote on 17 Dec 2021 20:52
(address . guix-patches@gnu.org)
9af1bb4930763c511306573bbf032d6ed700ff25.camel@gmail.com
This patch set fixes build failures in Ren'py and updates it to 7.4.11.
It also moves our renpy command template to an auxiliary file, that ought
to be easier to edit.

Cheers

Liliana Marie Prikler (5):
gnu: python-future: Fix sanity check.
gnu: python2-renpy: Do not delete non-existing file.
gnu: renpy: Move renpy command to aux-files.
gnu: python2-pygame-sdl2: Update to renpy version 7.4.11.
gnu: python2-renpy: Update to 7.4.11.

Makefile.am | 1 +
gnu/packages/aux-files/renpy/renpy.in | 48 ++++++++++++++++
gnu/packages/game-development.scm | 81 +++++----------------------
gnu/packages/python-xyz.scm | 19 ++++++-
4 files changed, 81 insertions(+), 68 deletions(-)
create mode 100644 gnu/packages/aux-files/renpy/renpy.in

--
2.34.0
L
L
Liliana Marie Prikler wrote on 17 Dec 2021 19:22
[PATCH 2/5] gnu: python2-renpy: Do not delete non-existing file.
(address . 52595@debbugs.gnu.org)
8b5e080f294063890294937ca0eb96f41e4c9fdc.camel@gmail.com
* gnu/packages/game-development.scm (python2-renpy)[build]: Don't delete
renpy/__init__.pyc, it is no longer being built. Adjust comment accordingly.
---
gnu/packages/game-development.scm | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

Toggle diff (18 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 19d5e71506..fb8744382c 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1317,9 +1317,8 @@ (define-public python2-renpy
              ;; named "setup.py".
              (with-directory-excursion "module"
                (apply (assoc-ref %standard-phases 'build) args))
-             ;; the above causes renpy.__init__ to be compiled but does not
-             ;; compile anything else, hence we do that here
-             (delete-file "renpy/__init__.pyc")
+             ;; The above only builds the cython modules, but nothing else,
+             ;; so we do that here.
              (invoke "python" "-m" "compileall" "renpy")
              #t))
          (replace 'install
-- 
2.34.0
L
L
Liliana Marie Prikler wrote on 17 Dec 2021 18:56
[PATCH 1/5] gnu: python-future: Fix sanity check.
(address . 52595@debbugs.gnu.org)
6f948e621fa47df5e1e138923b334096e29d4fdf.camel@gmail.com
* gnu/packages/python-xyz.scm (python-future): Exclude winreg and tkinter from
sanity check.
---
gnu/packages/python-xyz.scm | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 13d883c26d..3970153894 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -14780,7 +14780,24 @@ (define-public python-future
     ;; Many tests connect to the network or are otherwise flawed.
     ;; https://github.com/PythonCharmers/python-future/issues/210
     (arguments
-     `(#:tests? #f))
+     `(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'sanity-check
+           (let ((sanity-check (assoc-ref %standard-phases 'sanity-check)))
+             (lambda* (#:key inputs outputs #:allow-other-keys #:rest args)
+               (let* ((files (find-files (site-packages inputs outputs)
+                                         "top_level\\.txt"))
+                      (backups (map (lambda (f) (string-append f ".bak"))
+                                    files)))
+                 (for-each copy-file files backups)
+                 (substitute* files
+                   ;; Nobody be usin' winreg on Guix
+                   ;; Also, don't force users to have tkinter when they don't
+                   ;; need it
+                   (("(winreg|tkinter)") ""))
+                 (apply sanity-check args)
+                 (for-each rename-file backups files))))))))
     (home-page "https://python-future.org")
     (synopsis "Single-source support for Python 3 and 2")
     (description
-- 
2.34.0
L
L
Liliana Marie Prikler wrote on 17 Dec 2021 19:59
[PATCH 3/5] gnu: renpy: Move renpy command to aux-files.
(address . 52595@debbugs.gnu.org)
4a4bfdf0cc27a32ed72abaf80e17032925d2b9a6.camel@gmail.com
* gnu/packages/aux-files/renpy/renpy.in: New file.
* gnu/packages/game-development.scm (renpy)[install]: Use renpy.in with
substitute*.
* Makefile.am (AUX_FILES): Add it here.
---
Makefile.am | 1 +
gnu/packages/aux-files/renpy/renpy.in | 48 +++++++++++++++++++
gnu/packages/game-development.scm | 68 ++++-----------------------
3 files changed, 57 insertions(+), 60 deletions(-)
create mode 100644 gnu/packages/aux-files/renpy/renpy.in

Toggle diff (159 lines)
diff --git a/Makefile.am b/Makefile.am
index c4ccee65f1..627cf3ca64 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -403,6 +403,7 @@ AUX_FILES =						\
   gnu/packages/aux-files/pack-audit.c			\
   gnu/packages/aux-files/python/sanity-check.py		\
   gnu/packages/aux-files/python/sitecustomize.py	\
+  gnu/packages/aux-files/renpy/renpy.in	\
   gnu/packages/aux-files/run-in-namespace.c
 
 # Templates, examples.
diff --git a/gnu/packages/aux-files/renpy/renpy.in b/gnu/packages/aux-files/renpy/renpy.in
new file mode 100644
index 0000000000..914a735fa4
--- /dev/null
+++ b/gnu/packages/aux-files/renpy/renpy.in
@@ -0,0 +1,48 @@
+#! @PYTHON@
+# -*- mode: python -*-
+
+from __future__ import print_function
+
+import os
+import sys
+import warnings
+
+def path_to_common(renpy_base):
+    return renpy_base + "/common"
+
+def path_to_saves(gamedir, save_directory=None):
+    import renpy
+
+    if save_directory is None:
+        save_directory = renpy.config.save_directory
+        save_directory = renpy.exports.fsencode(save_directory)
+
+    if not save_directory:
+        return gamedir + "/saves"
+
+    return os.path.join(os.path.expanduser("~/.renpy"), save_directory)
+
+def main():
+    try:
+        import renpy.bootstrap
+        import renpy.arguments
+    except ImportError:
+        print("""Could not import renpy.bootstrap.
+Please ensure you decompressed Ren'py correctly, preserving the directory
+structure.""", file=sys.stderr)
+        raise
+
+    args = renpy.arguments.bootstrap()
+    if not args.basedir:
+        print("""This Ren'py requires a basedir to launch.
+The basedir is the directory, in which .rpy source files or compiled .rpyc files
+live -- usually the 'game' subdirectory of a game packaged by Ren'py.
+
+If you want the Ren'py launcher, use \"renpy-launcher\" instead.""",
+              file=sys.stderr)
+        sys.exit()
+
+    renpy.bootstrap.bootstrap("@RENPY_BASE@")
+
+if __name__ == "__main__":
+    main()
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index fb8744382c..955d630704 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1444,70 +1444,17 @@ (define-public renpy
              ;;     `-- Super Awesome Game.sh
              (let* ((out (assoc-ref outputs "out"))
                     (bin/renpy (string-append out "/bin/renpy")))
-               (mkdir-p (string-append out "/bin"))
                (copy-recursively "renpy/common"
                                  (string-append out "/share/renpy/common"))
                (copy-recursively "gui"
                                  (string-append out "/share/renpy/gui"))
 
-               (call-with-output-file bin/renpy
-                 (lambda (port)
-                   (format port "#!~a/bin/python2~%"
-                           (assoc-ref inputs "python2"))
-                   (format port "
-from __future__ import print_function
-
-import os
-import sys
-import warnings
-
-def path_to_common(renpy_base):
-    return renpy_base + \"/common\"
-
-def path_to_saves(gamedir, save_directory=None):
-    import renpy  # @UnresolvedImport
-
-    if save_directory is None:
-        save_directory = renpy.config.save_directory
-        save_directory = renpy.exports.fsencode(save_directory)
-
-    if not save_directory:
-        return gamedir + \"/saves\"
-
-    return os.path.expanduser(\"~~/.renpy/\" + save_directory)
-
-def path_to_renpy_base():
-    return \"~a\"
-
-def main():
-    renpy_base = path_to_renpy_base()
-    try:
-        import renpy.bootstrap
-        import renpy.arguments
-    except ImportError:
-        print(\"\"\"Could not import renpy.bootstrap.
-Please ensure you decompressed Ren'Py correctly, preserving the directory
-structure.\"\"\", file=sys.stderr)
-        raise
-
-    args = renpy.arguments.bootstrap()
-    if not args.basedir:
-        print(\"\"\"This Ren'py requires a basedir to launch.
-The basedir is the directory, in which .rpy files live -- usually the 'game'
-subdirectory of a game packaged by Ren'py.
-
-If you want the Ren'py launcher, use renpy-launcher instead.\"\"\",
-              file=sys.stderr)
-        sys.exit()
-
-    renpy.bootstrap.bootstrap(renpy_base)
-
-if __name__ == \"__main__\":
-    main()
-"
-                           (string-append out "/share/renpy"))))
-               (chmod bin/renpy #o755)
-               #t)))
+               (mkdir-p (string-append out "/bin"))
+               (copy-file (assoc-ref inputs "renpy.in") bin/renpy)
+               (substitute* bin/renpy
+                 (("@PYTHON@") (search-input-file inputs "bin/python2"))
+                 (("@RENPY_BASE@") (string-append out "/share/renpy")))
+               (chmod bin/renpy #o755))))
 
          (add-after 'install 'install-games
            (lambda* (#:key outputs #:allow-other-keys)
@@ -1561,7 +1508,8 @@ (define* (install-renpy-game #:key output game name (renpy renpy)
                                     inputs))))))))
                #t))))))
     (inputs
-     `(("python2-renpy" ,python2-renpy)
+     `(("renpy.in" ,(search-auxiliary-file "renpy/renpy.in"))
+       ("python2-renpy" ,python2-renpy)
        ("python2-tkinter" ,python-2 "tk")
        ("python2" ,python-2) ; for ‘fix-commands’ and ‘wrap’
        ("xdg-utils" ,xdg-utils)))
-- 
2.34.0
L
L
Liliana Marie Prikler wrote on 17 Dec 2021 20:31
[PATCH 4/5] gnu: python2-pygame-sdl2: Update to renpy version 7.4.11.
(address . 52595@debbugs.gnu.org)
f994cdcfc1b72783f81ad1f48d66b6314e2f6d7b.camel@gmail.com
* gnu/packages/game-development.scm (python2-pygame-sdl2): Update to renpy
version 7.4.11.
---
gnu/packages/game-development.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 955d630704..a8a4f13311 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1214,7 +1214,7 @@ (define-public python2-pygame
 
 (define-public python-pygame-sdl2
   (let ((real-version "2.1.0")
-        (renpy-version "7.4.10"))
+        (renpy-version "7.4.11"))
     (package
       (inherit python-pygame)
       (name "python-pygame-sdl2")
@@ -1224,7 +1224,7 @@ (define-public python-pygame-sdl2
          (method url-fetch)
          (uri (string-append "https://www.renpy.org/dl/" renpy-version
                              "/pygame_sdl2-" version ".tar.gz"))
-         (sha256 (base32 "0m0asrr722a4v24fm8199b0c53igagylay8bn9bz9rmc0r4v8si4"))
+         (sha256 (base32 "0nxvca16299jx6sp0ys29rqixcs21ymhqwjfkbchhss0yar7qjgz"))
          (modules '((guix build utils)))
          (snippet
           '(begin
-- 
2.34.0
L
L
Liliana Marie Prikler wrote on 17 Dec 2021 20:32
[PATCH 5/5] gnu: python2-renpy: Update to 7.4.11.
(address . 52595@debbugs.gnu.org)
13ee84c4b3954dd7b84eb01e6ef0235a6db0b020.camel@gmail.com
* gnu/packages/game-development.scm (python2-renpy): Update to 7.4.11.
---
gnu/packages/game-development.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index a8a4f13311..9752bb93f2 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1269,13 +1269,13 @@ (define-public python2-pygame-sdl2
 (define-public python2-renpy
   (package
     (name "python2-renpy")
-    (version "7.4.10")
+    (version "7.4.11")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://www.renpy.org/dl/" version
                            "/renpy-" version "-source.tar.bz2"))
-       (sha256 (base32 "1yngs2kh1l8micg28mcp9580qsvgq3aa8bkhv2xqfkg9qqrbr8y4"))
+       (sha256 (base32 "0zkhg2sd2hglm9dkansf4h8sq7lm7iqslzl763ambp4kyfdvd07q"))
        (modules '((guix build utils)))
        (patches
         (search-patches
-- 
2.34.0
L
L
Liliana Marie Prikler wrote on 15 Jan 10:02 +0100
(address . 52595-done@debbugs.gnu.org)
951bd210ae1a0dbf834d63b07ebad3f70be6d21c.camel@gmail.com
Am Freitag, dem 17.12.2021 um 20:32 +0100 schrieb Liliana Marie
Prikler:
Toggle quote (2 lines)
> * gnu/packages/game-development.scm (python2-renpy): Update to
> 7.4.11.
Pushed along with the previous ones.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 52595@debbugs.gnu.org