[bug#75502,v2] gnu: Add dsda-doom.

Message ID c75385fd3207dd44c697be3d6e426403f43ef3f3.1740124763.git.wongandj@icloud.com
State New
Headers
Series [bug#75502,v2] gnu: Add dsda-doom. |

Commit Message

Andrew Wong Feb. 21, 2025, 7:59 a.m. UTC
  * gnu/packages/games.scm (dsda-doom): New variable.

Change-Id: I1a999b1b5bf06a7cbe38aa0d4d0ccbb28430b1cf
---
 gnu/packages/games.scm | 47 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)


base-commit: cd20619cfcb32c2631fb602729512740bc510550
  

Comments

Christopher Baines March 1, 2025, 11:06 p.m. UTC | #1
Andrew Wong via Guix-patches via <guix-patches@gnu.org> writes:

> * gnu/packages/games.scm (dsda-doom): New variable.
>
> Change-Id: I1a999b1b5bf06a7cbe38aa0d4d0ccbb28430b1cf
> ---
>  gnu/packages/games.scm | 47 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 47 insertions(+)

Thanks for the patch.

> +    (synopsis "Successor of PrBoom+ with many new features")

Maybe this package is purely defined in it's relationship to something
else, but unless that really is the case it's probably better to write a
standalone synopsis/description. I changed the synopsis to "Doom source
port, successor of PrBoom+", at least then Doom is mentioned.

The synopsis and description could probably be further improved, but
I've gone ahead and pushed this to master as
4dcf2959f5ac5becfedb6b735657635b4d915693.

Chris
  

Patch

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 30aaf0767a..ca3dad8774 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -87,6 +87,7 @@ 
 ;;; Copyright © 2024 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
 ;;; Copyright © 2024 Ashvith Shetty <ashvithshetty10@gmail.com>
 ;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2677,6 +2678,52 @@  (define-public pipewalker
 Every puzzle has a complete solution, although there may be more than one.")
     (license license:gpl3+)))
 
+(define-public dsda-doom
+  (package
+    (name "dsda-doom")
+    (version "0.28.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/kraflab/dsda-doom")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1qgc6ngxlwwmbh4iaikb93253if9s8kkq6abddqarj7gj29kzapb"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:tests? #f ;no tests
+       #:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'chdir
+                    (lambda _
+                      (chdir "prboom2"))))))
+    (inputs (list dumb
+                  fluidsynth
+                  glu
+                  libmad
+                  libvorbis
+                  libzip
+                  portmidi
+                  sdl2-mixer
+                  sdl2))
+    (home-page "https://github.com/kraflab/dsda-doom")
+    (synopsis "Successor of PrBoom+ with many new features")
+    (description
+     "This is a successor of prboom+ with many new features, including:
+@enumerate
+@item Heretic, Hexen, MBF21, Doom-in-Hexen, UDMF, and MAPINFO support
+@item In-game console and scripting
+@item Full controller support
+@item Palette-based opengl renderer
+@item Debugging features for testing
+@item Strict mode for speedrunning
+@item Various quality of life improvements
+@item Advanced tools for TASing
+@item Rewind
+@end enumerate")
+    (license license:gpl2+)))
+
 (define-public prboom-plus
   (package
    (name "prboom-plus")