Subject: [bug#75106] [PATCH v3 2/2] gnu: Add ringracers.

From: Andrew Wong <[email-masked]>
Date: Wed, 25 Dec 2024 20:47:11 -0500

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

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c2bb9aa1c4..caee1d5729 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -249,6 +249,65 @@ (define-module (gnu packages games)
   #:use-module ((srfi srfi-1) #:hide (zip))
   #:use-module (srfi srfi-26))
 
+(define-public ringracers
+  (package
+    (name "ringracers")
+    (version "2.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://git.do.srb2.org/KartKrew/RingRacers")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "05lf799imbk0x3i2adaj0r84ck5yyrvzjvhs4k9dj7l4jg0x4sjz"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f
+       #:configure-flags (list
+                          "-DCMAKE_C_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'"
+                          "-DCMAKE_CXX_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'"
+                          "-DSRB2_CONFIG_DEV_BUILD=OFF"
+                          "-DCMAKE_BUILD_TYPE=RelWithDebInfo")
+       #:phases (modify-phases %standard-phases
+                  (add-after 'install 'move-binary
+                    ;; Symlink executable to $out/bin.
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let* ((out (assoc-ref outputs "out"))
+                             (bin (string-append out "/bin")))
+                        (mkdir-p bin)
+                        (with-directory-excursion bin
+                          (symlink "../ringracers" "ringracers")) #t))))))
+    (inputs (list curl
+                  zlib
+                  libpng
+                  libogg
+                  libvorbis
+                  libvpx
+                  libyuv
+                  sdl2))
+    (home-page "https://kartkrew.org")
+    (synopsis "Technical kart racing game")
+    (description
+     "\"Dr. Robotnik’s Ring Racers\" is a technical kart racing game drawing
+inspiration from \"antigrav\" racers, fighting games, and traditional-style kart
+racing.  Designed to minimize randomness and emphasize player expression, Ring
+Racers about more than precise handling—you’ll need to master tense combat,
+resource management, and taking risks under pressure.")
+    (license (list license:gpl2
+                   license:bsd-3
+                   license:gpl3
+                   license:lgpl2.1
+                   license:zlib
+                   license:public-domain
+                   license:bsd-2
+                   license:expat
+                   license:boost1.0
+                   (license:non-copyleft ;curl license
+                    "file://LICENSE-3RD-PARTY.txt"
+                    "See LICENSE-3RD-PARTY.txt in the distribution.")))))
+
 (define-public hexahop
   (package
     (name "hexahop")
-- 
2.46.0