[PATCH 0/2] Add ringracers.

  • Open
  • quality assurance status badge
Details
One participant
  • Andrew Wong
Owner
unassigned
Submitted by
Andrew Wong
Severity
normal
A
A
Andrew Wong wrote on 26 Dec 2024 02:24
(address . guix-patches@gnu.org)(name . Andrew Wong)(address . wongandj@icloud.com)
20241226012942.10865-2-wongandj@icloud.com
This patch series adds the freely-licensed kart racer fangame "Dr. Robotnik's
Ring Racers" and a new dependency libyuv. Is it possible for me to include the
"non-functional" nonfreely-licensed game assets with the install? If so, how
can I fit it into the build process, seeing as it's a seperate download from
the engine itself? Also, how can I unbundle some of the libraries included
with the source?

Andrew Wong (2):
gnu: Add libyuv.
gnu: Add ringracers.

gnu/packages/games.scm | 56 ++++++++++++++++++++++++++++++++++++++++++
gnu/packages/image.scm | 27 ++++++++++++++++++++
2 files changed, 83 insertions(+)

--
2.46.0
A
A
Andrew Wong wrote on 26 Dec 2024 02:31
[PATCH 1/2] gnu: Add libyuv.
(address . 75106@debbugs.gnu.org)(name . Andrew Wong)(address . wongandj@icloud.com)
20241226013149.11294-1-wongandj@icloud.com
Change-Id: I631ea22fcb033013e377c17a12fb8a24248abd70
---
gnu/packages/image.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 7337a27b88..db022a4e81 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -120,6 +120,33 @@ (define-module (gnu packages image)
#:use-module (guix deprecation)
#:use-module (srfi srfi-1))
+(define-public libyuv
+ (package
+ (name "libyuv")
+ (version "2021.4") ;last stable rel. April 2024
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://chromium.googlesource.com/libyuv/libyuv")
+ (commit "4620f1705822fd6ab99939f43ce63099bd3d9ae0")))
+ (sha256
+ (base32 "17vdm2g5qvrby7xa3agiqwh7ips33dxg6sw18s3q2xkfil4xw3mm"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:tests? #f))
+ (home-page "https://chromium.googlesource.com/libyuv/libyuv/")
+ (synopsis "YUV scaling and conversion functionality")
+ (description
+ "libyuv is an open source project that includes YUV scaling and
+conversion functionality. Scale YUV to prepare content for
+compression, with point, bilinear or box filter. Convert to YUV from
+webcam formats for compression, and to RGB formats for
+rendering/effects. Rotate by 90/180/270 degrees to adjust for mobile
+devices in portrait mode.")
+ (license license:expat)))
+
(define-public converseen
(package
(name "converseen")
--
2.46.0
A
A
Andrew Wong wrote on 26 Dec 2024 02:31
[PATCH 2/2] gnu: Add ringracers.
(address . 75106@debbugs.gnu.org)(name . Andrew Wong)(address . wongandj@icloud.com)
20241226013149.11294-2-wongandj@icloud.com
Change-Id: Iaa92026e4d9a62fa3549b39aff7da0dd6f078013
---
gnu/packages/games.scm | 56 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)

Toggle diff (69 lines)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c2bb9aa1c4..cccfd91e1c 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -249,6 +249,62 @@ (define-module (gnu packages games)
#:use-module ((srfi srfi-1) #:hide (zip))
#:use-module (srfi srfi-26))
+(define-public ring-racers
+ (package
+ (name "ring-racers")
+ (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"))
+ ;; (snippet
+ ;; '(begin
+ ;; (with-directory-excursion "thirdparty"
+ ;; (for-each delete-file-recursively '("fmt")))
+ ;; #t))
+ ))
+ (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 'unpack 'unbundle-font
+ ;; (lambda* (#:key inputs #:allow-other-keys)
+ ;; (with-directory-excursion "thirdparty"
+ ;; (for-each delete-file-recursively '("fmt")))
+ ;; #t))
+ ;; ^^ This is how to remove the bundles, but how to replace them???
+ (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 Racer, drawing
+inspiration from \"antigrav\" racers, fighting games, and traditional-style kart
+racing. Designed to minimize randomness and emphasize player expression, Ring
+Racers isn’t just about precise handling—you’ll need to master tense combat,
+resource management, and taking risks under pressure.")
+ (license license:gpl2)))
+
(define-public hexahop
(package
(name "hexahop")
--
2.46.0
A
A
Andrew Wong wrote on 26 Dec 2024 02:43
[PATCH v2 1/2] gnu: Add libyuv.
(address . 75106@debbugs.gnu.org)(name . Andrew Wong)(address . wongandj@icloud.com)
20241226014342.13129-1-wongandj@icloud.com
Change-Id: I631ea22fcb033013e377c17a12fb8a24248abd70
---
gnu/packages/image.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 7337a27b88..db022a4e81 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -120,6 +120,33 @@ (define-module (gnu packages image)
#:use-module (guix deprecation)
#:use-module (srfi srfi-1))
+(define-public libyuv
+ (package
+ (name "libyuv")
+ (version "2021.4") ;last stable rel. April 2024
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://chromium.googlesource.com/libyuv/libyuv")
+ (commit "4620f1705822fd6ab99939f43ce63099bd3d9ae0")))
+ (sha256
+ (base32 "17vdm2g5qvrby7xa3agiqwh7ips33dxg6sw18s3q2xkfil4xw3mm"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:tests? #f))
+ (home-page "https://chromium.googlesource.com/libyuv/libyuv/")
+ (synopsis "YUV scaling and conversion functionality")
+ (description
+ "libyuv is an open source project that includes YUV scaling and
+conversion functionality. Scale YUV to prepare content for
+compression, with point, bilinear or box filter. Convert to YUV from
+webcam formats for compression, and to RGB formats for
+rendering/effects. Rotate by 90/180/270 degrees to adjust for mobile
+devices in portrait mode.")
+ (license license:expat)))
+
(define-public converseen
(package
(name "converseen")
--
2.46.0
A
A
Andrew Wong wrote on 26 Dec 2024 02:43
[PATCH v2 2/2] gnu: Add ringracers.
(address . 75106@debbugs.gnu.org)(name . Andrew Wong)(address . wongandj@icloud.com)
20241226014342.13129-2-wongandj@icloud.com
Change-Id: Iaa92026e4d9a62fa3549b39aff7da0dd6f078013
---
gnu/packages/games.scm | 56 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)

Toggle diff (69 lines)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c2bb9aa1c4..cccfd91e1c 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -249,6 +249,62 @@ (define-module (gnu packages games)
#:use-module ((srfi srfi-1) #:hide (zip))
#:use-module (srfi srfi-26))
+(define-public ring-racers
+ (package
+ (name "ring-racers")
+ (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"))
+ ;; (snippet
+ ;; '(begin
+ ;; (with-directory-excursion "thirdparty"
+ ;; (for-each delete-file-recursively '("fmt")))
+ ;; #t))
+ ))
+ (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 'unpack 'unbundle-font
+ ;; (lambda* (#:key inputs #:allow-other-keys)
+ ;; (with-directory-excursion "thirdparty"
+ ;; (for-each delete-file-recursively '("fmt")))
+ ;; #t))
+ ;; ^^ This is how to remove the bundles, but how to replace them???
+ (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 Racer, drawing
+inspiration from \"antigrav\" racers, fighting games, and traditional-style kart
+racing. Designed to minimize randomness and emphasize player expression, Ring
+Racers isn’t just about precise handling—you’ll need to master tense combat,
+resource management, and taking risks under pressure.")
+ (license license:gpl2)))
+
(define-public hexahop
(package
(name "hexahop")
--
2.46.0
A
A
Andrew Wong wrote on 26 Dec 2024 02:47
[PATCH v3 1/2] gnu: Add libyuv.
(address . 75106@debbugs.gnu.org)(name . Andrew Wong)(address . wongandj@icloud.com)
20241226014731.13573-1-wongandj@icloud.com
Change-Id: I631ea22fcb033013e377c17a12fb8a24248abd70
---
gnu/packages/image.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (40 lines)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 7337a27b88..db022a4e81 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -120,6 +120,33 @@ (define-module (gnu packages image)
#:use-module (guix deprecation)
#:use-module (srfi srfi-1))
+(define-public libyuv
+ (package
+ (name "libyuv")
+ (version "2021.4") ;last stable rel. April 2024
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://chromium.googlesource.com/libyuv/libyuv")
+ (commit "4620f1705822fd6ab99939f43ce63099bd3d9ae0")))
+ (sha256
+ (base32 "17vdm2g5qvrby7xa3agiqwh7ips33dxg6sw18s3q2xkfil4xw3mm"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:tests? #f))
+ (home-page "https://chromium.googlesource.com/libyuv/libyuv/")
+ (synopsis "YUV scaling and conversion functionality")
+ (description
+ "libyuv is an open source project that includes YUV scaling and
+conversion functionality. Scale YUV to prepare content for
+compression, with point, bilinear or box filter. Convert to YUV from
+webcam formats for compression, and to RGB formats for
+rendering/effects. Rotate by 90/180/270 degrees to adjust for mobile
+devices in portrait mode.")
+ (license license:expat)))
+
(define-public converseen
(package
(name "converseen")
--
2.46.0
A
A
Andrew Wong wrote on 26 Dec 2024 02:47
[PATCH v3 2/2] gnu: Add ringracers.
(address . 75106@debbugs.gnu.org)(name . Andrew Wong)(address . wongandj@icloud.com)
20241226014731.13573-2-wongandj@icloud.com
Change-Id: Iaa92026e4d9a62fa3549b39aff7da0dd6f078013
---
gnu/packages/games.scm | 59 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)

Toggle diff (72 lines)
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
?
Your comment

Commenting via the web interface is currently disabled.

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

To respond to this issue using the mumi CLI, first switch to it
mumi current 75106
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch