summaryrefslogtreecommitdiff
path: root/gnu/packages/games.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/games.scm')
-rw-r--r--gnu/packages/games.scm139
1 files changed, 85 insertions, 54 deletions
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 0b93409c76..da917e2870 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -7,7 +7,7 @@
;;; Copyright © 2014 Sylvain Beucler <beuc@beuc.net>
;;; Copyright © 2014, 2015, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016 Sou Bunnbu <iyzsong@gmail.com>
-;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014, 2015, 2019 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
;;; Copyright © 2015, 2017, 2018 Christopher Lemmer Webber <cwebber@dustycloud.org>
@@ -38,6 +38,7 @@
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Oleg Pykhalov <go.wigust@gmail.com>
+;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -237,6 +238,56 @@ enemy, ally, weapon and mission types. Features include simulated 4D texturing,
mouse and joystick control, and original music.")
(license license:gpl2)))
+(define-public alex4
+ (package
+ (name "alex4")
+ (version "1.2-alpha")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/carstene1ns/alex4/archive/"
+ version ".tar.gz"))
+ (sha256
+ (base32 "0jj1g3v1a6lyfwp5g2ly0n9z65ryqck8jxvzr01kaqjj3lsfkrhg"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no check target
+ #:make-flags
+ (list "-Csrc"
+ "CC=gcc"
+ "CFLAGS=-D_FILE_OFFSET_BITS=64"
+ (string-append "DATADIR=" (assoc-ref %outputs "out")
+ "/share/" ,name)
+ (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (substitute* '("src/main.c"
+ "src/shooter.c")
+ (("fcos") "fixcos")
+ (("fmul") "fixmul")
+ (("fsin") "fixsin"))
+ #t))
+ (add-after 'install 'install-data
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((share (string-append (assoc-ref outputs "out")
+ "/share/" ,name)))
+ (install-file "alex4.ini" share)
+ #t))))))
+ (inputs
+ `(("allegro" ,allegro-4)
+ ("dumb" ,dumb-allegro4)))
+ (home-page "http://allegator.sourceforge.net/")
+ (synopsis "Retro platform game")
+ (description
+ "Guide Alex the Allegator through the jungle in order to save his
+girlfriend Lola from evil humans who want to make a pair of shoes out of her.
+Plenty of classic platforming in four nice colors guaranteed!
+
+The game includes a built-in editor so you can design and share your own maps.")
+ (license license:gpl2+)))
+
(define-public armagetron-advanced
(package
(name "armagetron-advanced")
@@ -1795,7 +1846,7 @@ match, cannon keep, and grave-itation pit.")
(define minetest-data
(package
(name "minetest-data")
- (version "5.0.0")
+ (version "5.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1804,7 +1855,7 @@ match, cannon keep, and grave-itation pit.")
(file-name (git-file-name name version))
(sha256
(base32
- "186i1pna2f3fwa2001y8mw5131h0sndhfdxzfqq2gnr1m83sjm0w"))))
+ "1hw3n7qqpasq6bivxhq01kr0d58w0gp46s0baxixp1fakd79p8a7"))))
(build-system trivial-build-system)
(native-inputs
`(("source" ,source)))
@@ -1822,14 +1873,14 @@ match, cannon keep, and grave-itation pit.")
#t))))
(synopsis "Main game data for the Minetest game engine")
(description
- "Game data for the Minetest infinite-world block sandox game.")
+ "Game data for the Minetest infinite-world block sandbox game.")
(home-page "http://minetest.net")
(license license:lgpl2.1+)))
(define-public minetest
(package
(name "minetest")
- (version "5.0.0")
+ (version "5.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1838,7 +1889,7 @@ match, cannon keep, and grave-itation pit.")
(file-name (git-file-name name version))
(sha256
(base32
- "1b8n8nzlvmld1hl3zgs1xg4jbc1nsf1m2bn7fi794vdr06s6n911"))
+ "11i8fqjpdggqfdlx440k5758zy0nbf9phxan9r63mavc7mph88ay"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -1865,7 +1916,7 @@ match, cannon keep, and grave-itation pit.")
`(("pkg-config" ,pkg-config)))
(inputs
`(("curl" ,curl)
- ("freetype" ,(@ (gnu packages fontutils) freetype))
+ ("freetype" ,freetype)
("gettext" ,gettext-minimal)
("gmp" ,gmp)
("irrlicht" ,irrlicht)
@@ -2066,7 +2117,7 @@ This game is based on the GPL version of the famous game TuxRacer.")
(define-public supertuxkart
(package
(name "supertuxkart")
- (version "0.9.3")
+ (version "1.0")
(source
(origin
(method url-fetch)
@@ -2074,55 +2125,36 @@ This game is based on the GPL version of the famous game TuxRacer.")
version "/supertuxkart-" version "-src.tar.xz"))
(sha256
(base32
- "1c4w47ibj87lgwiqygq8qi7jiz6gklj4dwf5bs5zk15s0rqlw0fq"))
+ "106rlp99hq18b4q1kdri3pl06cc4v7iqfp1hp9k2f8751lzz923d"))
(modules '((guix build utils)))
(snippet
;; Delete bundled library sources
'(begin
- ;; FIXME: try to unbundle enet, and angelscript
+ ;; Supertuxkart uses modified versions of the Irrlicht engine
+ ;; and the bullet library. The developers gave an explanation
+ ;; here: http://forum.freegamedev.net/viewtopic.php?f=17&t=3906
+ ;; FIXME: try to unbundle angelscript
(for-each delete-file-recursively
'("lib/zlib"
"lib/libpng"
"lib/jpeglib"
"lib/glew"
- "lib/wiiuse"))
- (substitute* "CMakeLists.txt"
- ;; Supertuxkart uses modified versions of the Irrlicht engine
- ;; and the bullet library. The developers gave an explanation here:
- ;; http://forum.freegamedev.net/viewtopic.php?f=17&t=3906
- (("add_subdirectory\\(.*/(glew|zlib)\"\\)") ""))
+ "lib/wiiuse"
+ "lib/enet"))
#t))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no check target
#:configure-flags
(list "-DUSE_WIIUSE=0"
- ;; Do not use the bundled zlib
+ ;; Do not use the bundled zlib, glew and enet.
"-DNO_IRR_COMPILE_WITH_ZLIB_=TRUE"
+ "-DUSE_SYSTEM_GLEW=TRUE"
+ "-DUSE_SYSTEM_ENET=TRUE"
;; FIXME: needs libopenglrecorder
"-DBUILD_RECORDER=0"
;; Irrlicht returns an integer instead of a boolean
- "-DCMAKE_C_FLAGS=-fpermissive")
- #:phases
- (modify-phases %standard-phases
- ;; see https://github.com/supertuxkart/stk-code/issues/3557
- (add-after 'unpack 'patch-for-mesa-18.3
- (lambda _
- (substitute* "src/graphics/gl_headers.hpp"
- (("#if !defined\\(USE_GLES2\\)")
- "#if !defined(USE_GLES2)\n# define __gl_glext_h_"))
- #t))
- (add-after 'unpack 'unbundle
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "CMakeLists.txt"
- (("glew")
- (string-append (assoc-ref inputs "glew")
- "/lib/libGLEW.a"))
- (("include_directories\\(\"\\$\\{PROJECT_SOURCE_DIR\\}/lib/glew/include\"\\)")
- (string-append "include_directories(\""
- (assoc-ref inputs "glew")
- "/include\")")))
- #t)))))
+ "-DCMAKE_C_FLAGS=-fpermissive")))
(inputs
`(("glew" ,glew)
("zlib" ,zlib)
@@ -2136,7 +2168,9 @@ This game is based on the GPL version of the famous game TuxRacer.")
("curl" ,curl)
;; The following input is needed to build the bundled and modified
;; version of irrlicht.
- ("libjpeg" ,libjpeg)))
+ ("libjpeg" ,libjpeg)
+ ("openssl" ,openssl)
+ ("enet" ,enet)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://supertuxkart.net/")
@@ -4476,7 +4510,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
(define-public dungeon-crawl-stone-soup
(package
(name "dungeon-crawl-stone-soup")
- (version "0.23.1")
+ (version "0.23.2")
(source
(origin
(method url-fetch)
@@ -4489,8 +4523,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
(string-append "http://crawl.develz.org/release/stone_soup-"
version "-nodeps.tar.xz")))
(sha256
- (base32
- "0c3mx49kpz6i2xvv2dwsaj9s7mm4mif1h2qdkfyi80lv2j1ay51h"))
+ (base32 "1hw10hqhh688mrqs9vxrl17y1dzfjzsmxz6izg1a9dzmjlhrc01a"))
(patches (search-patches "crawl-upgrade-saves.patch"))))
(build-system gnu-build-system)
(inputs
@@ -4512,7 +4545,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
(list (string-append "SQLITE_INCLUDE_DIR=" sqlite "/include")
(string-append "prefix=" out)
"SAVEDIR=~/.crawl"
- ;; Don't compile with SSE on systems which don't use it
+ ;; Don't compile with SSE on systems which don't have it.
,@(match (%current-system)
((or "i686-linux" "x86_64-linux")
'())
@@ -6486,7 +6519,7 @@ the desired spell.")
(define-public the-legend-of-edgar
(package
(name "the-legend-of-edgar")
- (version "1.30")
+ (version "1.31")
(source
(origin
(method url-fetch)
@@ -6494,10 +6527,9 @@ the desired spell.")
(string-append "https://github.com/riksweeney/edgar/releases/download/"
version "/edgar-" version "-1.tar.gz"))
(sha256
- (base32
- "0bhbs33dg0nb8wqlh6px1jj41j05f89ngdqwdkffabmjk7wq5isx"))))
+ (base32 "0i4851ci8a86ql4bhdq3xdfmf4b9z5zrd4xpc6vhi06697zgm13i"))))
(build-system gnu-build-system)
- (arguments '(#:tests? #f ; there are no tests
+ (arguments '(#:tests? #f ; there are no tests
#:make-flags
(list "CC=gcc"
(string-append "PREFIX=" (assoc-ref %outputs "out"))
@@ -6507,14 +6539,13 @@ the desired spell.")
(delete 'configure)
(add-before 'build 'fix-env
(lambda* (#:key inputs #:allow-other-keys)
- (setenv "CPATH" (string-append (assoc-ref inputs "sdl")
- "/include/SDL/"))
+ (setenv "CPATH"
+ (string-append (assoc-ref inputs "sdl2-union")
+ "/include/SDL2"))
#t)))))
- (inputs `(("sdl" ,sdl)
- ("sdl-img" ,sdl-image)
- ("sdl-mixer" ,sdl-mixer)
- ("sdl-ttf" ,sdl-ttf)
- ("zlib" ,zlib)))
+ (inputs
+ `(("sdl2-union" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))
+ ("zlib" ,zlib)))
(native-inputs
`(("pkg-config" ,pkg-config)
("autoconf" ,autoconf)