diff options
Diffstat (limited to 'gnu/packages/game-development.scm')
| -rw-r--r-- | gnu/packages/game-development.scm | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 7054685dc6a..8c7a79f0c11 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm | |||
| @@ -28,9 +28,11 @@ | |||
| 28 | ;;; Copyright © 2022 Felix Gruber <felgru@posteo.net> | 28 | ;;; Copyright © 2022 Felix Gruber <felgru@posteo.net> |
| 29 | ;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com> | 29 | ;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com> |
| 30 | ;;; Copyright © 2022 dan <i@dan.games> | 30 | ;;; Copyright © 2022 dan <i@dan.games> |
| 31 | ;;; Copyright © 2022 Cairn <cairn@pm.me> | ||
| 31 | ;;; Copyright © 2023, 2024 John Kehayias <john.kehayias@protonmail.com> | 32 | ;;; Copyright © 2023, 2024 John Kehayias <john.kehayias@protonmail.com> |
| 32 | ;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr> | 33 | ;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr> |
| 33 | ;;; Copyright © 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com> | 34 | ;;; Copyright © 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com> |
| 35 | ;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com> | ||
| 34 | ;;; | 36 | ;;; |
| 35 | ;;; This file is part of GNU Guix. | 37 | ;;; This file is part of GNU Guix. |
| 36 | ;;; | 38 | ;;; |
| @@ -60,6 +62,7 @@ | |||
| 60 | #:use-module (guix build-system cmake) | 62 | #:use-module (guix build-system cmake) |
| 61 | #:use-module (guix build-system copy) | 63 | #:use-module (guix build-system copy) |
| 62 | #:use-module (guix build-system gnu) | 64 | #:use-module (guix build-system gnu) |
| 65 | #:use-module (guix build-system go) | ||
| 63 | #:use-module (guix build-system pyproject) | 66 | #:use-module (guix build-system pyproject) |
| 64 | #:use-module (guix build-system python) | 67 | #:use-module (guix build-system python) |
| 65 | #:use-module (guix build-system scons) | 68 | #:use-module (guix build-system scons) |
| @@ -76,6 +79,7 @@ | |||
| 76 | #:use-module (gnu packages check) | 79 | #:use-module (gnu packages check) |
| 77 | #:use-module (gnu packages curl) | 80 | #:use-module (gnu packages curl) |
| 78 | #:use-module (gnu packages documentation) | 81 | #:use-module (gnu packages documentation) |
| 82 | #:use-module (gnu packages golang-xyz) | ||
| 79 | #:use-module (gnu packages fltk) | 83 | #:use-module (gnu packages fltk) |
| 80 | #:use-module (gnu packages fonts) | 84 | #:use-module (gnu packages fonts) |
| 81 | #:use-module (gnu packages fontutils) | 85 | #:use-module (gnu packages fontutils) |
| @@ -296,6 +300,67 @@ conversions (for example, from PPM to Doom picture format). In addition, | |||
| 296 | DeuTex has functions such as merging wads, etc.") | 300 | DeuTex has functions such as merging wads, etc.") |
| 297 | (license license:gpl2+))) | 301 | (license license:gpl2+))) |
| 298 | 302 | ||
| 303 | (define-public go-github-com-veandco-go-sdl2 | ||
| 304 | (package | ||
| 305 | (name "go-github-com-veandco-go-sdl2") | ||
| 306 | (version "0.4.40") | ||
| 307 | (source | ||
| 308 | (origin | ||
| 309 | (method git-fetch) | ||
| 310 | (uri (git-reference | ||
| 311 | (url "https://github.com/veandco/go-sdl2") | ||
| 312 | (commit (string-append "v" version)))) | ||
| 313 | (file-name (git-file-name name version)) | ||
| 314 | (sha256 | ||
| 315 | (base32 "0wi74j32dj5bzlp85v2qlhxn03p9p3500vxmm3d2wj656nwjw3cg")))) | ||
| 316 | (build-system go-build-system) | ||
| 317 | (arguments | ||
| 318 | (list | ||
| 319 | #:skip-build? #t | ||
| 320 | #:import-path "github.com/veandco/go-sdl2" | ||
| 321 | #:test-flags | ||
| 322 | #~(list "-skip" (string-join | ||
| 323 | (list | ||
| 324 | ;; QuitSubSystem(32): subsystem still initialized. | ||
| 325 | "TestInitQuit" | ||
| 326 | ;; Field not found "lockData" and type size mismatch. | ||
| 327 | "TestStructABI" | ||
| 328 | ;; Parameter 'src' is invalid. | ||
| 329 | "TestSurface" | ||
| 330 | ;; Test examples is provided as git submodule | ||
| 331 | ;; <https://github.com/veandco/go-sdl2-examples>. | ||
| 332 | "TestTTF") | ||
| 333 | "|")) | ||
| 334 | #:phases | ||
| 335 | #~(modify-phases %standard-phases | ||
| 336 | (add-after 'unpack 'patch-sdl-wrapper-headers | ||
| 337 | (lambda* (#:key import-path #:allow-other-keys) | ||
| 338 | (with-directory-excursion (string-append "src/" import-path) | ||
| 339 | (substitute* (find-files "." "\\.h") | ||
| 340 | (("<SDL_image.h>") "<SDL2/SDL_image.h>") | ||
| 341 | (("<SDL_mixer.h>") "<SDL2/SDL_mixer.h>") | ||
| 342 | (("<SDL_ttf.h>") "<SDL2/SDL_ttf.h>"))))) | ||
| 343 | (add-before 'check 'pre-check | ||
| 344 | (lambda _ | ||
| 345 | (setenv "HOME" "/tmp") | ||
| 346 | (setenv "XDG_RUNTIME_DIR" (getcwd))))))) | ||
| 347 | (native-inputs | ||
| 348 | (list pkg-config)) | ||
| 349 | (propagated-inputs | ||
| 350 | (list go-github-com-golang-freetype | ||
| 351 | sdl2 | ||
| 352 | sdl2-gfx | ||
| 353 | sdl2-image | ||
| 354 | sdl2-mixer | ||
| 355 | sdl2-ttf)) | ||
| 356 | (home-page "https://github.com/veandco/go-sdl2") | ||
| 357 | (synopsis "SDL2 binding for Go") | ||
| 358 | (description | ||
| 359 | "@code{go-sdl2} is SDL2 wrapped for Go users. It enables | ||
| 360 | interoperability between Go and the SDL2 library which is written in C. That | ||
| 361 | means the original SDL2 installation is required for this to work.") | ||
| 362 | (license license:bsd-3))) | ||
| 363 | |||
| 299 | (define-public grfcodec | 364 | (define-public grfcodec |
| 300 | ;; Latest release 6.0.6 requires an older boost and does not build with our | 365 | ;; Latest release 6.0.6 requires an older boost and does not build with our |
| 301 | ;; newer GCC. | 366 | ;; newer GCC. |
