Subject: [PATCH] gnu: freedoom: Avoid the need to propagate prboom-plus.
From: Kei Kebreau <[email-masked]>
To: [email-masked]
Cc: Kei Kebreau <[email-masked]>
Date: Wed, 22 Mar 2017 22:35:39 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/games.scm (freedoom)[arguments]: Substitute shell
variable assignment in start script for a direct engine launch.
---
 gnu/packages/games.scm | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 67fcb7b49..401ba4444 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -162,14 +162,19 @@
                        (("freedoom2.png")
                         "-define png:exclude-chunks=date freedoom2.png"))
                      ;; Make sure that the install scripts know where to find
-                     ;; the appropriate WAD files.
+                     ;; the appropriate WAD files and Doom engine.
+                     ;; Do this by turning a shell variable assignment into a
+                     ;; direct engine launch and exit.
                      (substitute* "dist/freedoom"
-                       (("IWAD=freedm.wad")
-                        (string-append "IWAD=" wad-dir "/freedm.wad"))
-                       (("IWAD=freedoom1.wad")
-                        (string-append "IWAD=" wad-dir "/freedoom1.wad"))
-                       (("IWAD=freedoom2.wad")
-                        (string-append "IWAD=" wad-dir "/freedoom2.wad")))
+                       (("IWAD=")
+                        (string-append (assoc-ref inputs "prboom-plus")
+                                       "/bin/prboom-plus -iwad "))
+                       (("freedm.wad")
+                        (string-append  wad-dir "/freedm.wad \"$@\"; exit $?"))
+                       (("freedoom1.wad")
+                        (string-append  wad-dir "/freedoom1.wad \"$@\"; exit $?"))
+                       (("freedoom2.wad")
+                        (string-append wad-dir "/freedoom2.wad \"$@\"; exit $?")))
                      #t))))))
    (native-inputs
     `(("asciidoc" ,asciidoc)
-- 
2.12.0