diff mbox series

[bug#52233] gnu: godot: Update to 3.4

Message ID CAJsg1E8QxNifrJYESo2nxQsCHjUnrA5RucKN5_p=tExMphWuXQ@mail.gmail.com
State Accepted
Headers show
Series [bug#52233] gnu: godot: Update to 3.4 | expand

Checks

Context Check Description
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Andy Tai Dec. 6, 2021, 7:27 a.m. UTC
updated patch:

godot built from this can run the master tip of the superstarfighter
git (checked out by itself) successfully

However  the superstarfighter in guix still aborts.

So that still needs more investigation as to what is going on there.

I am using Fedora as the host OS, with guix on it.


On Thu, Dec 2, 2021 at 11:25 AM Leo Famulari <leo@famulari.name> wrote:
>
> On Thu, Dec 02, 2021 at 12:07:34AM -0800, Andy Tai wrote:
> > I just built  superstarfighter with godot 3.4 and I was able to start
> > the game on my PC.  So I guess it may run successfully or fail due to
> > difference in hardware configurations.  Just a data point.
>
> I'm curious, was that on Guix System? Or Guix on another distro? I
> tested with Guix on Debian.
diff mbox series

Patch

From 619328a56e451b218733dd8d454dccbae2d89dcf Mon Sep 17 00:00:00 2001
From: Andy Tai <atai@atai.org>
Date: Sun, 5 Dec 2021 23:19:31 -0800
Subject: [PATCH] gnu: godot: Update to 3.4.
To: guix-patches@gnu.org

* gnu/packages/game-development.scm (godot): Update to 3.4.
---
 gnu/packages/game-development.scm | 22 ++++++++++++++++++++--
 1 file changed, 20 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index a060dc94dc..ed733e317f 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1846,7 +1846,7 @@  (define-public openmw
 (define-public godot
   (package
     (name "godot")
-    (version "3.2.3")
+    (version "3.4")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -1855,7 +1855,7 @@  (define-public godot
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "19vrp5lhyvxbm6wjxzn28sn3i0s8j08ca7nani8l1nrhvlc8wi0v"))
+                "0y542zla6msgxf31rd0349d9j3ya7f3njnwmmrh8lmzfgxx86qbx"))
               (modules '((guix build utils)
                          (ice-9 ftw)
                          (srfi srfi-1)))
@@ -1870,19 +1870,23 @@  (define-public godot
                               "assimp"
                               "certs"
                               "cvtt"
+                              "embree"
                               "enet"
                               "etc2comp"
                               "fonts"
                               "glad"
                               "jpeg-compressor"
                               "libsimplewebm"
+                              "minimp3"
                               "miniupnpc"
                               "minizip"
                               "misc"
                               "nanosvg"
+                              "oidn"
                               "pvrtccompressor"
                               "recastnavigation"
                               "squish"
+                              "stb_rect_pack"
                               "tinyexr"
                               "vhacd"
                               "xatlas")))
@@ -1950,6 +1954,19 @@  (define-public godot
                (wrap-program (string-append out "/bin/godot")
                  `("PATH" ":" prefix (,(string-append zenity "/bin")))))
              #t))
+         (add-after 'install 'wrap
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             ;; FIXME: Mesa tries to dlopen libudev.so.0 and fails.  Pending a
+             ;; fix of the mesa package we wrap the pcb executable such that
+             ;; Mesa can find libudev.so.0 through LD_LIBRARY_PATH.
+             ;; also append ld path for pulseaudio and alsa-lib
+             (let* ((out (assoc-ref outputs "out"))
+                    (udev_path (string-append (assoc-ref inputs "udev") "/lib"))
+                    (pulseaudio_path (string-append (assoc-ref inputs "pulseaudio") "/lib"))
+                    (alas_lib_path (string-append (assoc-ref inputs "alsa-lib") "/lib")))
+               (wrap-program (string-append out "/bin/godot")
+                 `("LD_LIBRARY_PATH" ":" prefix (,udev_path ,pulseaudio_path ,alas_lib_path))))
+             #t))
          (add-after 'install 'install-godot-desktop
            (lambda* (#:key outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
@@ -1986,6 +2003,7 @@  (define-public godot
               ("opusfile" ,opusfile)
               ("pcre2" ,pcre2)
               ("pulseaudio" ,pulseaudio)
+              ("udev" ,eudev) ;FIXME: required by mesa
               ("wslay" ,wslay)
               ("zenity" ,zenity)
               ("zstd" ,zstd "lib")))

base-commit: 764be13ee62eff202ee2dd711167d0bfa4d2ec3f
-- 
2.34.0