X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/ee32e0f1207d5d600455a1571dbb4316818c924e..51bcc29ca05067c74375edd6bec9ec5322164083:/gnu/packages/games.scm diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index b7bee0a47b..be7a3cc181 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013 John Darrington ;;; Copyright © 2013 Nikita Karetnikov ;;; Copyright © 2014, 2016 David Thompson -;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Eric Bavier +;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Eric Bavier ;;; Copyright © 2014 Cyrill Schenkel ;;; Copyright © 2014 Sylvain Beucler ;;; Copyright © 2014, 2015, 2018, 2019 Ludovic Courtès @@ -24,13 +24,13 @@ ;;; Copyright © 2016 Steve Webber ;;; Copyright © 2017 Adonay "adfeno" Felipe Nogueira ;;; Copyright © 2017, 2018, 2020 Arun Isaac -;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice +;;; Copyright © 2017–2021 Tobias Geerinckx-Rice ;;; Copyright © 2017, 2019 nee ;;; Copyright © 2017 Clément Lassieur ;;; Copyright © 2017, 2019, 2020 Marius Bakke ;;; Copyright © 2017, 2018 Rutger Helling ;;; Copyright © 2017 Roel Janssen -;;; Copyright © 2017, 2018, 2019, 2020 Nicolas Goaziou +;;; Copyright © 2017, 2018, 2019, 2020, 2021 Nicolas Goaziou ;;; Copyright © 2018 okapi ;;; Copyright © 2018 Tim Gesthuizen ;;; Copyright © 2018 Madalin Ionel-Patrascu @@ -98,6 +98,7 @@ #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) + #:use-module (gnu packages cpp) #:use-module (gnu packages curl) #:use-module (gnu packages crypto) #:use-module (gnu packages cyrus-sasl) @@ -133,6 +134,7 @@ #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) + #:use-module (gnu packages javascript) #:use-module (gnu packages kde) #:use-module (gnu packages kde-frameworks) #:use-module (gnu packages less) @@ -1322,7 +1324,7 @@ automata. The following features are available: (define-public julius (package (name "julius") - (version "1.5.1") + (version "1.6.0") (source (origin (method git-fetch) @@ -1331,7 +1333,7 @@ automata. The following features are available: (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "10d6py1cmkq8lnb5h3w8rdpp4fmpd1wgqkgiabdghqxi7b2s0g4b")) + (base32 "0nfdn8n6ywhm69ckz9a1chl5xxiqyaj3l337wadsbppnpscjihrc")) ;; Remove unused bundled libraries. (modules '((guix build utils))) (snippet @@ -1358,7 +1360,7 @@ does not include game data.") (package (inherit julius) (name "augustus") - (version "1.4.1a") + (version "2.0.1") (source (origin (method git-fetch) @@ -1367,7 +1369,7 @@ does not include game data.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1xqv8j8jh3f13fjhyf7hk1anrn799cwwsvsd75kpl9n5yh5s1j5y")) + (base32 "0czazw8mc3fbvdazs2nzvgxd1dpzjc8z5fwiv89vv4nd7laz3jkj")) ;; Remove unused bundled libraries. (modules '((guix build utils))) (snippet @@ -2235,6 +2237,100 @@ and defeat them with your bubbles!") ;; GPL2+ is for code, CC0 is for art. (license (list license:gpl2+ license:cc0)))) +(define-public solarus + (package + (name "solarus") + ;; XXX: When updating this package, please also update hash in + ;; `solarus-quest-editor' below. + (version "1.6.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/solarus-games/solarus") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1n6l91yyqjx0pz4w1lp3yybpq0fs2yjswfcm8c1wjfkxwiznbdxi")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-failing-tests + ;; The following tests fail reporting a missing "/dev/dri" + ;; file. + (lambda _ + (substitute* "tests/cmake/AddTestMaps.cmake" + ((".*1200_create_shader_from_source.*" all) + (string-append "#" all)) + ((".*1210_shader_scaling_factor.*" all) + (string-append "#" all))) + #t)) + (add-before 'check 'set-home + ;; Tests fail without setting the following environment + ;; variables. + (lambda _ + (setenv "HOME" (getcwd)) + (setenv "XDG_RUNTIME_DIR" (getcwd)) + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qttools" ,qttools))) + (inputs + `(("glm" ,glm) + ("libmodplug" ,libmodplug) + ("libogg" ,libogg) + ("libvorbis" ,libvorbis) + ("luajit" ,luajit) + ("openal" ,openal) + ("physfs" ,physfs) + ("qtbase" ,qtbase) + ("sdl2" ,(sdl-union (list sdl2 sdl2-image sdl2-ttf))))) + (home-page "https://www.solarus-games.org/") + (synopsis "Lightweight game engine for Action-RPGs") + (description + "Solarus is a 2D game engine written in C++, that can run games +scripted in Lua. It has been designed with 16-bit classic Action-RPGs +in mind.") + ;; The source code is licensed under the terms of GPL-3.0. + ;; Resources are licensed under the terms of CC-BY-SA-3.0 and + ;; CC-BY-SA 4.0. + (license (list license:gpl3 license:cc-by-sa3.0 license:cc-by-sa4.0)))) + +(define-public solarus-quest-editor + (package + (inherit solarus) + (name "solarus-quest-editor") + (version (package-version solarus)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/solarus-games/solarus-quest-editor") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1qbc2j9kalk7xqk9j27s7wnm5zawiyjs47xqkqphw683idmzmjzn")))) + (arguments + `(#:tests? #false ;no test + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-qt-build + ;; XXX: Fix build with Qt 5.15. It has been applied upstream as + ;; 81d5c7f1 and can be removed at next upgrade. + (lambda _ + (substitute* "src/entities/jumper.cpp" + (("#include " all) + (string-append all "\n" "#include \n"))) + #t))))) + (inputs + `(("solarus" ,solarus) + ,@(package-inputs solarus))) + (synopsis "Create and modify quests for the Solarus engine") + (description + "Solarus Quest Editor is a graphical user interface to create and +modify quests for the Solarus engine."))) + (define-public superstarfighter (package (name "superstarfighter") @@ -2363,6 +2459,93 @@ available, as well as a single-player mode with AI-controlled ships.") "$(call ZIP) -X")) #t)))) +(define-public trigger-rally + (package + (name "trigger-rally") + (version "0.6.6.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/trigger-rally/" + "trigger-" version "/" + "trigger-rally-" version ".tar.gz")) + (sha256 + (base32 + "016bc2hczqscfmngacim870hjcsmwl8r3aq8x03vpf22s49nw23z")))) + (build-system gnu-build-system) + (inputs + `(("freealut" ,freealut) + ("glew" ,glew) + ("glu" ,glu) + ("mesa" ,mesa) + ("openal" ,openal) + ("physfs" ,physfs) + ("sdl" ,(sdl-union (list sdl2 sdl2-image))) + ("tinyxml2" ,tinyxml2))) + (arguments + `(#:make-flags (list (string-append "prefix=" %output) + "bindir=$(prefix)/bin" + "datadir=$(datarootdir)" + "OPTIMS=-Ofast") + #:tests? #f ; No tests present + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'cd-src + (lambda _ (chdir "src"))) + (add-before 'build 'remove-timestamps + (lambda _ + (substitute* (list "Trigger/menu.cpp" + "PEngine/app.cpp") + ((".*__DATE__.*") "")))) + (add-before 'build 'make-verbose + (lambda _ + (substitute* "GNUmakefile" + (("@\\$\\(CXX\\)") "$(CXX)")))) + (add-after 'build 'set-data-path + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "../bin/trigger-rally.config.defs" + (("