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.scm516
1 files changed, 300 insertions, 216 deletions
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 5623bdde7d..f85e9333f7 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -30,7 +30,7 @@
;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2017-2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2017-2023 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018 okapi <okapi@firemail.cc>
;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;; Copyright © 2018 Madalin Ionel-Patrascu <madalinionel.patrascu@mdc-berlin.de>
@@ -52,7 +52,7 @@
;;; Copyright © 2020 Vitaliy Shatrov <D0dyBo0D0dyBo0@protonmail.com>
;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
-;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020, 2021, 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Trevor Hass <thass@okstate.edu>
;;; Copyright © 2020, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2020 Lu hux <luhux@outlook.com>
@@ -63,9 +63,9 @@
;;; Copyright © 2021 David Pflug <david@pflug.io>
;;; Copyright © 2021, 2022 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Solene Rapenne <solene@perso.pw>
-;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
+;;; Copyright © 2021, 2022 Noisytoot <ron@noisytoot.org>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
-;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
+;;; Copyright © 2021, 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2021 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 Yovan Naumovski <yovan@gorski.stream>
@@ -74,6 +74,7 @@
;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Hendursaga <hendursaga@aol.com>
+;;; Copyright © 2022 Parnikkapore <poomklao@yahoo.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -177,6 +178,7 @@
#:use-module (gnu packages ocaml)
#:use-module (gnu packages opencl)
#:use-module (gnu packages pcre)
+ #:autoload (gnu packages pascal) (fpc)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages perl-compression)
@@ -444,7 +446,7 @@ physics settings to tweak as well.")
(define-public astromenace
(package
(name "astromenace")
- (version "1.4.1")
+ (version "1.4.2")
(source
(origin
(method git-fetch)
@@ -453,33 +455,30 @@ physics settings to tweak as well.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1ad6l887jxqv8xspwc2rvy8ym9sdlmkqdqhsh0pi076kjarxsyws"))))
+ (base32 "0vw94issjzz6rji0ssqv5yrll513dvj7m0d33q8lbih1gdh4alal"))))
(build-system cmake-build-system)
(arguments
- `(#:tests? #f ;no test
- #:configure-flags (list (string-append "-DDATADIR="
- (assoc-ref %outputs "out")
- "/share/astromenace"))
- #:phases
- (modify-phases %standard-phases
- (replace 'install
- ;; Upstream provides no install phase.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin"))
- (share (string-append out "/share"))
- (apps (string-append share "/applications"))
- (data (string-append share "/astromenace"))
- (icons (string-append share "/icons/hicolor/64x64/apps")))
- (install-file "astromenace" bin)
- (install-file "gamedata.vfs" data)
- (let ((source (assoc-ref inputs "source")))
- (with-directory-excursion (string-append source "/share")
- (install-file "astromenace.desktop" apps)
- (mkdir-p icons)
- (copy-file "astromenace_64.png"
- (string-append icons "/astromenace.png")))))
- #t)))))
+ (list
+ #:tests? #f ;no tests
+ #:configure-flags
+ #~(list (string-append "-DDATADIR=" #$output "/share/astromenace"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'install
+ ;; Upstream provides no install phase.
+ (lambda _
+ (let* ((bin (string-append #$output "/bin"))
+ (share (string-append #$output "/share"))
+ (apps (string-append share "/applications"))
+ (data (string-append share "/astromenace"))
+ (icons (string-append share "/icons/hicolor/64x64/apps")))
+ (install-file "astromenace" bin)
+ (install-file "gamedata.vfs" data)
+ (with-directory-excursion (string-append #$source "/share")
+ (install-file "astromenace.desktop" apps)
+ (mkdir-p icons)
+ (copy-file "astromenace_64.png"
+ (string-append icons "/astromenace.png")))))))))
(inputs
(list freealut
freetype
@@ -827,7 +826,7 @@ possible, while battling many vicious aliens.")
(home-page "https://github.com/vattam/BSDGames")
(synopsis "Collection of the old text-based games and amusements")
(description
- "These are the BSD games. See the fortune-mod package for fortunes.
+ "These are the BSD games.
Action: atc (keep the airplanes safe), hack (explore the dangerous Dungeon),
hunt (kill the others for the Pair of Boots, multi-player only), robots (avoid
@@ -879,14 +878,14 @@ Quizzes: arithmetic and quiz.")
(define-public bzflag
(package
(name "bzflag")
- (version "2.4.24")
+ (version "2.4.26")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.bzflag.org/bzflag/source/"
version "/bzflag-" version ".tar.bz2"))
(sha256
- (base32 "1i73ijlnxsz52fhqgkj2qcvibfgav3byq1is68gab2zwnyz330az"))))
+ (base32 "050h933lmcdf4bw9z3c6g3k8c9sch9f6kq57jp2ivb96zw2h90q1"))))
(build-system gnu-build-system)
(arguments
(list
@@ -1426,7 +1425,7 @@ real-time combat.")
(define-public golly
(package
(name "golly")
- (version "3.3")
+ (version "4.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/golly/golly/golly-"
@@ -1434,7 +1433,7 @@ real-time combat.")
"-src.tar.gz"))
(sha256
(base32
- "1j3ksnar4rdam4xiyspgyrs1pifbvxfxkrn65brkwxpx39mpgzc8"))))
+ "0pg9cp83nxc354lizgza5bqdy7z5wh36863203zw6r6s4flji4an"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list "CC=gcc"
@@ -1444,17 +1443,7 @@ real-time combat.")
#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
- (replace 'configure
- (lambda* (#:key inputs #:allow-other-keys)
- ;; For some reason, setting the PYTHON_SHLIB make flag doesn't
- ;; properly set the path to the Python shared library. This
- ;; substitution acheives the same end by different means.
- (substitute* "gui-wx/wxprefs.cpp"
- (("pythonlib = wxT\\(STRINGIFY\\(PYTHON_SHLIB\\)\\)")
- (string-append "pythonlib = \""
- (assoc-ref inputs "python")
- "/lib/libpython-2.7.so\"")))
- #t))
+ (delete 'configure)
(replace 'build
(lambda* (#:key make-flags outputs #:allow-other-keys)
(with-directory-excursion "gui-wx"
@@ -1484,11 +1473,7 @@ real-time combat.")
(native-inputs
(list lua))
(inputs
- `(("glu" ,glu)
- ("mesa" ,mesa)
- ("python" ,python-2)
- ("wxwidgets" ,wxwidgets-gtk2)
- ("zlib" ,zlib)))
+ (list glu mesa python sdl2 wxwidgets zlib))
(home-page "http://golly.sourceforge.net/")
(synopsis "Software for exploring cellular automata")
(description
@@ -1555,7 +1540,7 @@ Joy-Con controllers.")
(define-public julius
(package
(name "julius")
- (version "1.6.0")
+ (version "1.7.0")
(source
(origin
(method git-fetch)
@@ -1564,7 +1549,7 @@ Joy-Con controllers.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0nfdn8n6ywhm69ckz9a1chl5xxiqyaj3l337wadsbppnpscjihrc"))
+ (base32 "0w7kmgz9ya0ck9cxhsyralarg7y6ydx4plmh33r4mkxkamlr7493"))
;; Remove unused bundled libraries.
(modules '((guix build utils)))
(snippet
@@ -1589,7 +1574,7 @@ does not include game data.")
(package
(inherit julius)
(name "augustus")
- (version "2.0.1")
+ (version "3.2.0")
(source
(origin
(method git-fetch)
@@ -1598,17 +1583,19 @@ does not include game data.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0czazw8mc3fbvdazs2nzvgxd1dpzjc8z5fwiv89vv4nd7laz3jkj"))
+ (base32 "0d1k5279imc17mk3lxn8amc4ljgcj4v6x6lj2w3bph1z0a7a4bim"))
;; Remove unused bundled libraries.
(modules '((guix build utils)))
(snippet
'(begin
(with-directory-excursion "ext"
- (for-each delete-file-recursively '("dirent" "png" "SDL2" "zlib")))
- #t))))
+ (for-each delete-file-recursively
+ '("dirent" "expat" "png" "SDL2" "zlib")))))))
(arguments
;; No tests. See https://github.com/Keriew/augustus/issues/82.
`(#:tests? #f))
+ (inputs (modify-inputs (package-inputs julius)
+ (prepend expat)))
(home-page "https://github.com/Keriew/augustus")
(synopsis "Re-implementation of Caesar III game engine with gameplay changes")
(description
@@ -1660,7 +1647,7 @@ shadow mimic them to reach blocks you couldn't reach alone.")
(define-public opensurge
(package
(name "opensurge")
- (version "0.5.2.1")
+ (version "0.6.0.3")
(source
(origin
(method git-fetch)
@@ -1669,40 +1656,37 @@ shadow mimic them to reach blocks you couldn't reach alone.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "13g5izss7dmgigc8iif8hid3z6i066b0z29rbql2b9qjmdj1dp41"))))
+ (base32 "0yia2qcva741a64qpls8a59lvnx5vynqkk2i3arkflw6f1m1vb55"))))
(build-system cmake-build-system)
(arguments
- `(#:tests? #f ;there are no tests
- #:configure-flags
- (let* ((out (assoc-ref %outputs "out"))
- (share (string-append out "/share")))
- (list (string-append "-DCMAKE_INSTALL_PREFIX=" out)
- (string-append "-DGAME_BINDIR=" out "/bin") ; not /bin/games
- (string-append "-DGAME_DATADIR=" share "/" ,name)
- (string-append "-DDESKTOP_ENTRY_PATH=" share "/applications")
- (string-append "-DDESKTOP_ICON_PATH=" share "/pixmaps")
- (string-append "-DDESKTOP_METAINFO_PATH=" share "/metainfo")))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-xdg-open-path
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Look for xdg-open in the store.
- (substitute* "src/core/web.c"
- (("/usr(/bin/xdg-open)" _ bin)
- (search-input-file inputs bin)))))
- (add-after 'unpack 'unbundle-fonts
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Replace bundled Roboto fonts with links to the store.
- (with-directory-excursion "fonts"
- (let ((roboto-dir (string-append
- (assoc-ref inputs "font-google-roboto")
- "/share/fonts/truetype/")))
- (for-each
- (lambda (font)
- (delete-file font)
- (symlink (string-append roboto-dir font) font))
- '("Roboto-Black.ttf" "Roboto-Bold.ttf" "Roboto-Medium.ttf")))
- #t))))))
+ (list #:tests? #f ; there are no tests
+ #:configure-flags
+ #~(list (string-append "-DCMAKE_INSTALL_PREFIX=" #$output)
+ (string-append "-DGAME_BINDIR=" #$output "/bin") ; not games
+ (string-append "-DGAME_DATADIR=" #$output "/share/" #$name)
+ (string-append "-DDESKTOP_ENTRY_PATH=" #$output "/share/applications")
+ (string-append "-DDESKTOP_ICON_PATH=" #$output "/share/pixmaps")
+ (string-append "-DDESKTOP_METAINFO_PATH=" #$output "/share/metainfo"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-xdg-open-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Look for xdg-open in the store.
+ (substitute* "src/core/web.c"
+ (("/usr/(bin/xdg-open)" _ bin)
+ (search-input-file inputs bin)))))
+ (add-after 'unpack 'unbundle-fonts
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Replace bundled fonts with links to the store.
+ (with-directory-excursion "fonts"
+ (for-each (lambda (font)
+ (let ((file (string-append "share/fonts/truetype/"
+ font)))
+ (delete-file font)
+ (symlink (search-input-file inputs file) font)))
+ '("Roboto-Black.ttf"
+ "Roboto-Bold.ttf"
+ "Roboto-Medium.ttf"))))))))
(inputs
(list allegro font-google-roboto surgescript xdg-utils))
(home-page "https://opensurge2d.org")
@@ -2103,7 +2087,7 @@ done
for i in ~a/games/lib/nethackdir/*; do
ln -s $i $(basename $i)
done
-~a/games/nethack"
+~a/games/nethack \"$@\""
(assoc-ref %build-inputs "bash")
(list->search-path-as-string
(list
@@ -3656,20 +3640,24 @@ for common mesh file formats, and collision detection.")
(package
(inherit irrlicht)
(name "irrlicht-for-minetest")
- (version "1.9.0mt5")
+ (version "1.9.0mt8")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/minetest/irrlicht")
(commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1jxk1x0f60n8lrz8a6x62aj2pqg0qnbajsld3lqncvwsfbi0xjx1"))))
+ "1646pj40dqkzbbc2lxzbmq2pjyrkgggbi2lah6pa5mv420p402kg"))))
(build-system cmake-build-system)
(arguments
;; No check target.
- (list #:tests? #f))))
+ (list #:tests? #f))
+ (inputs
+ (modify-inputs (package-inputs irrlicht)
+ (prepend libxi)))))
(define-public mars
;; The latest release on SourceForge relies on an unreleased version of SFML
@@ -3966,7 +3954,7 @@ Protocol).")
(define-public extremetuxracer
(package
(name "extremetuxracer")
- (version "0.8.1")
+ (version "0.8.2")
(source (origin
(method url-fetch)
(uri (string-append
@@ -3974,7 +3962,7 @@ Protocol).")
version "/etr-" version ".tar.xz"))
(sha256
(base32
- "0hc3qd9hv3h9qm53yxgc7iy1v1wyajwxyvil4vqvzf9ascz9dnlj"))))
+ "0knd22lzhzqih1w92y6m7yxha376c6ydl22wy4xm6jg2x5jlk1qw"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
@@ -4291,22 +4279,19 @@ falling, themeable graphics and sounds, and replays.")
(define-public wesnoth
(package
(name "wesnoth")
- (version "1.16.5")
+ (version "1.16.6")
(source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/wesnoth/wesnoth-"
- (version-major+minor version)
- "/wesnoth-" version "/"
- "wesnoth-" version ".tar.bz2"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/wesnoth/wesnoth")
+ (commit version)))
+ (file-name (string-append name "-" version ".tar.bz2"))
(sha256
(base32
- "02pzijbmkgcb8hc4l3f4r3r3mxqda936dp488i9sd9d4m3xdzimh"))))
+ "0hfvxmdnwn86w254blbjacia342j47rhhahm6ca79la9d04rlz3m"))))
(build-system cmake-build-system)
(arguments
- `(#:tests? #f)) ;no check target
- (native-inputs
- `(("gettext" ,gettext-minimal)
- ("pkg-config" ,pkg-config)))
+ (list #:tests? #f)) ;no test target
(inputs
(list boost
dbus
@@ -4315,6 +4300,9 @@ falling, themeable graphics and sounds, and replays.")
openssl
pango
(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf))))
+ (native-inputs
+ (list gettext-minimal
+ pkg-config))
(home-page "https://www.wesnoth.org/")
(synopsis "Turn-based strategy game")
(description
@@ -6133,21 +6121,21 @@ starting a decryption sequence to reveal the original plaintext characters.")
"1ffck3ii1wp5k3nn5p0ga06jgp7pzk4zw0xln3xim2w7qrxzdzh9"))))
(build-system cmake-build-system)
(inputs
- `(("curl" ,curl)
- ("fontconfig" ,fontconfig)
- ("ftgl" ,ftgl)
- ("glew" ,glew)
- ("libjpeg-turbo" ,libjpeg-turbo)
- ("megaglest-data" ,megaglest-data)
- ("mesa" ,mesa)
- ("miniupnpc" ,miniupnpc)
- ("openal" ,openal)
- ("libircclient" ,libircclient)
- ("libpng" ,libpng)
- ("libvorbis" ,libvorbis)
- ("lua" ,lua)
- ("sdl2" ,sdl2)
- ("wxwidgets" ,wxwidgets)))
+ (list curl
+ fontconfig
+ ftgl
+ glew
+ libjpeg-turbo
+ megaglest-data
+ mesa
+ miniupnpc
+ openal
+ libircclient
+ libpng
+ libvorbis
+ lua
+ sdl2
+ wxwidgets-3.0))
(native-inputs
(list cppunit pkg-config))
(arguments
@@ -6155,8 +6143,8 @@ starting a decryption sequence to reveal the original plaintext characters.")
(list "-DCMAKE_CXX_FLAGS=-fcommon"
"-DCMAKE_C_FLAGS=-fcommon"
(string-append "-DCUSTOM_DATA_INSTALL_PATH="
- (assoc-ref %build-inputs "megaglest-data")
- "/share/megaglest")
+ (search-input-directory %build-inputs
+ "share/megaglest"))
"-DBUILD_MEGAGLEST_TESTS=ON")
#:phases
(modify-phases %standard-phases
@@ -6235,7 +6223,7 @@ emerges from a sewer hole and pulls her below ground.")
(define-public cdogs-sdl
(package
(name "cdogs-sdl")
- (version "0.8.0")
+ (version "1.4.0")
(source
(origin
(method git-fetch)
@@ -6244,7 +6232,7 @@ emerges from a sewer hole and pulls her below ground.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0vx37zb2iw7sfw5a2bs97ydlmb301nvy485ybdm8g46c5hn9s13c"))))
+ (base32 "1505z8rli59i1ych4rzwbf4dvhv72icdj22n1xarb8xfyz0wyp3b"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
@@ -6590,7 +6578,7 @@ becoming difficult enough to tax even the brightest of minds.")
(sha256
(base32
"169p0yqh2gxvhdilvjc2ld8aap7lv2nhkhkg4i1hlmgc6pxpkjgh"))))))
- (home-page "http://fillets.sourceforge.net/")
+ (home-page "https://fillets.sourceforge.net")
(synopsis "Puzzle game")
(description "Fish Fillets NG is strictly a puzzle game. The goal in
every of the seventy levels is always the same: find a safe way out. The fish
@@ -6751,7 +6739,7 @@ fight against their plot and save his fellow rabbits from slavery.")
(define-public 0ad-data
(package
(name "0ad-data")
- (version "0.0.25b-alpha")
+ (version "0.0.26-alpha")
(source
(origin
(method url-fetch)
@@ -6759,7 +6747,7 @@ fight against their plot and save his fellow rabbits from slavery.")
version "-unix-data.tar.xz"))
(file-name (string-append name "-" version ".tar.xz"))
(sha256
- (base32 "1c9zrddmjxvvacismld6fbwbw9vrdbq6g6d3424p8w5p6xg5wlwy"))))
+ (base32 "0z9dfw2hn2fyrx70866lv5464fbagdb8dip321wq10pqb22y805j"))))
(build-system trivial-build-system)
(native-inputs (list tar unzip xz))
(arguments
@@ -6798,7 +6786,7 @@ fight against their plot and save his fellow rabbits from slavery.")
(define-public 0ad
(package
(name "0ad")
- (version "0.0.25b-alpha")
+ (version "0.0.26-alpha")
(source
(origin
(method url-fetch)
@@ -6806,7 +6794,7 @@ fight against their plot and save his fellow rabbits from slavery.")
version "-unix-build.tar.xz"))
(file-name (string-append name "-" version ".tar.xz"))
(sha256
- (base32 "1p9fa8f7sjb9c5wl3mawzyfqvgr614kdkhrj2k4db9vkyisws3fp"))))
+ (base32 "0jzfq09ispi7740c01h6yqxqv9y3zx66d217z32pfbiiwgvns71f"))))
;; A snippet here would cause a build failure because of timestamps
;; reset. See https://bugs.gnu.org/26734.
(inputs
@@ -6814,6 +6802,7 @@ fight against their plot and save his fellow rabbits from slavery.")
curl
enet
fmt
+ freetype
gloox
icu4c-68
libidn
@@ -6938,7 +6927,7 @@ at their peak of economic growth and military prowess.
(define-public open-adventure
(package
(name "open-adventure")
- (version "1.9")
+ (version "1.11")
(source
(origin
(method git-fetch)
@@ -6947,40 +6936,39 @@ at their peak of economic growth and military prowess.
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "123svzy7xczdklx6plbafp22yv9bcvwfibjk0jv2c9i22dfsr07f"))))
+ (base32 "1n0fzrdlbc6px88qr574ww2q85xk43bv09jpmsskzv1l2cncwm37"))))
(build-system gnu-build-system)
(arguments
- `(#:make-flags (list "CC=gcc")
- #:phases
- (modify-phases %standard-phases
- (delete 'configure) ;no configure script
- (add-before 'build 'use-echo
- (lambda _
- (substitute* "tests/Makefile"
- (("/bin/echo") (which "echo")))
- #t))
- (add-after 'build 'build-manpage
- (lambda _
- ;; This target is missing a dependency
- (substitute* "Makefile"
- ((".adoc.6:" line)
- (string-append line " advent.adoc")))
- (invoke "make" ".adoc.6")))
- ;; There is no install target.
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin"))
- (man (string-append out "/share/man/man6")))
- (install-file "advent" bin)
- (install-file "advent.6" man))
- #t)))))
+ (list
+ #:make-flags #~(list (string-append "CC=" #$(cc-for-target)))
+ #:parallel-tests? #f ;some tests fail non-deterministically
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure) ;no configure script
+ (add-before 'build 'use-echo
+ (lambda _
+ (substitute* (list "tests/Makefile" "tests/tapview")
+ (("/bin/echo") (which "echo")))))
+ (add-after 'build 'build-manpage
+ (lambda _
+ ;; This target is missing a dependency
+ (substitute* "Makefile"
+ ((".adoc.6:" line)
+ (string-append line " advent.adoc")))
+ (invoke "make" ".adoc.6")))
+ ;; There is no install target.
+ (replace 'install
+ (lambda _
+ (let ((bin (string-append #$output "/bin"))
+ (man (string-append #$output "/share/man/man6")))
+ (install-file "advent" bin)
+ (install-file "advent.6" man)))))))
(native-inputs
- `(("asciidoc" ,asciidoc)
- ("libedit" ,libedit)
- ("pkg-config" ,pkg-config)
- ("python" ,python-wrapper)
- ("python-pyyaml" ,python-pyyaml)))
+ (list asciidoc
+ libedit
+ pkg-config
+ python-pyyaml
+ python-wrapper))
(home-page "https://gitlab.com/esr/open-adventure")
(synopsis "Colossal Cave Adventure")
(description
@@ -7943,7 +7931,7 @@ ncurses for text display.")
(define-public naev
(package
(name "naev")
- (version "0.9.4")
+ (version "0.10.2")
(source
(origin
(method git-fetch)
@@ -7953,7 +7941,7 @@ ncurses for text display.")
(recursive? #t))) ; for game data
(file-name (git-file-name name version))
(sha256
- (base32 "0isswidhxhs2q5c4cxryjr8y8ibfxckpfyccly3b4lg1nxvm5gjv"))))
+ (base32 "1ll5a6ldc2khagwrkb3z84rp7cf1hb83lw0yc1di481xgr6f960q"))))
(build-system meson-build-system)
(arguments
;; XXX: Do not add debugging symbols, which cause the build to fail.
@@ -7962,7 +7950,8 @@ ncurses for text display.")
(native-inputs
(list gettext-minimal pkg-config))
(inputs
- (list freetype
+ (list enet
+ freetype
glpk
libpng
libunibreak
@@ -7972,6 +7961,7 @@ ncurses for text display.")
luajit
openal
openblas
+ pcre2
physfs
python
python-pyyaml
@@ -8273,7 +8263,7 @@ your score gets higher, you level up and the blocks fall faster.")
(define-public endless-sky
(package
(name "endless-sky")
- (version "0.9.14")
+ (version "0.9.16.1")
(source
(origin
(method git-fetch)
@@ -8282,31 +8272,31 @@ your score gets higher, you level up and the blocks fall faster.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "12iganf8dxiyrjznnabsarxjsr0h717j3k4mz15p0k67wxyahhmf"))))
+ (base32 "0cb2g1cb0mk6x9gq2x7n10rxlfhsq8wnssk068j6h80al3hhybly"))))
(build-system scons-build-system)
(arguments
- `(#:scons ,scons-python2
- #:scons-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Look for resources in the store directory.
- (substitute* "source/Files.cpp"
- (("/usr/local") (assoc-ref outputs "out")))
- ;; Install game binary into %out/bin.
- (substitute* "SConstruct"
- (("games\"") "bin\""))))
- (add-before 'build 'use-gcc-ar
- ;; Use gcc-ar to support LTO.
- (lambda _ (setenv "AR" "gcc-ar"))))))
+ (list #:scons-flags #~(list (string-append "PREFIX=" #$output))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-paths
+ (lambda _
+ ;; Look for resources in the store directory.
+ (substitute* "source/Files.cpp"
+ (("/usr/local") #$output))
+ ;; Install game binary into %out/bin.
+ (substitute* "SConstruct"
+ (("games\"") "bin\""))))
+ (add-before 'build 'use-gcc-ar
+ ;; Use gcc-ar to support LTO.
+ (lambda _ (setenv "AR" "gcc-ar"))))))
(inputs
- `(("glew" ,glew)
- ("libjpeg" ,libjpeg-turbo)
- ("libmad" ,libmad)
- ("libpng" ,libpng)
- ("openal" ,openal)
- ("sdl2" ,sdl2)))
+ (list glew
+ libjpeg-turbo
+ libmad
+ libpng
+ openal
+ sdl2
+ `(,util-linux "lib"))) ; for libuuid
(home-page "https://endless-sky.github.io/")
(synopsis "2D space trading and combat game")
(description "Endless Sky is a 2D space trading and combat game. Explore
@@ -8491,7 +8481,7 @@ to download and install them in @file{$HOME/.stepmania-X.Y/Songs} directory.")
(native-inputs
(list pkg-config))
(inputs
- (list cairo ffmpeg pango sdl2 sdl2-image))
+ (list cairo ffmpeg-4 pango sdl2 sdl2-image))
(home-page "https://github.com/fmang/oshu/")
(synopsis "Rhythm game in which you click on circles")
(description "@i{oshu!} is a minimalist variant of the @i{osu!} rhythm game,
@@ -8898,7 +8888,7 @@ fight each other on an arena-like map.")
(define-public flare-engine
(package
(name "flare-engine")
- (version "1.13.04")
+ (version "1.14")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -8907,7 +8897,7 @@ fight each other on an arena-like map.")
(file-name (git-file-name name version))
(sha256
(base32
- "042n2r9whnd3kncf3k89dcl1srn7p2jk6kdc0lb2hbwff55iylnw"))))
+ "1gyaxr6zykwg5kg9xc3vlb5a6fas4z3zbk53y0zlfl35n4vqlh84"))))
(build-system cmake-build-system)
(arguments
(list
@@ -8927,7 +8917,7 @@ action RPGs.")
(define-public flare-game
(package
(name "flare-game")
- (version "1.13.04")
+ (version "1.14")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -8936,7 +8926,7 @@ action RPGs.")
(file-name (git-file-name name version))
(sha256
(base32
- "18rdrwv7p5rvmlah5pl9vbc09xlb8id75a7c73yn2sxkm6cf5c2l"))))
+ "1as9dsg0ddz14jjk4y5nj0ml20cwncrcnbdk10r1jaa2vss9bbn3"))))
(build-system cmake-build-system)
(arguments
(list
@@ -9111,7 +9101,7 @@ levels to unlock.")
(define simgear
(package
(name "simgear")
- (version "2020.3.11")
+ (version "2020.3.17")
(source
(origin
(method url-fetch)
@@ -9119,7 +9109,7 @@ levels to unlock.")
(version-major+minor version) "/"
"simgear-" version ".tar.bz2"))
(sha256
- (base32 "0g2g3n3sb6kdimvcrn9kvlhyyrp5c6lx20fgzz8l609v5aygr3dv"))
+ (base32 "0z1pkxs4fw8xkiainxgcpayhmn0b4c0sc2j6q88x66zzvk89qpjc"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -9164,7 +9154,7 @@ and also provides the base for the FlightGear Flight Simulator.")
(version-major+minor version) "/"
"flightgear-" version ".tar.bz2"))
(sha256
- (base32 "15sar94x13j2y1m6adgmz2q1m1i9bzj3sxqla6y3m9vyf33hc9zy"))
+ (base32 "0m0qbyf9i84avkfmjm1a5bijl1nqs7wnpw7rfz53ls52mkgdww36"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -9227,7 +9217,7 @@ and also provides the base for the FlightGear Flight Simulator.")
(native-inputs
`(("cppunit" ,cppunit)
("pkg-config" ,pkg-config)
- ("qttools-5" ,qttools-5)
+ ("qttools" ,qttools-5)
("flightgear-data"
,(origin
(method url-fetch)
@@ -9236,7 +9226,7 @@ and also provides the base for the FlightGear Flight Simulator.")
"FlightGear-" version "-data.txz"))
(sha256
(base32
- "0n5mw9vw1snab16c1y3i9ylkiv54az57bs2mvpq20hhg5hdiagqj"))))))
+ "1s6qahfia3llghfqgx990brg7gbb7z7accsq528kcyp6k8mvlpia"))))))
(home-page "https://www.flightgear.org/")
(synopsis "Flight simulator")
(description "The goal of the FlightGear project is to create a
@@ -9331,7 +9321,7 @@ play with up to four players simultaneously. It has network support.")
(string-append "../hedgewars-src-" #$version)
(install-file "misc/hedgewars.png" icons))))))))
(inputs
- (list ffmpeg
+ (list ffmpeg-4
freeglut
ghc-entropy
ghc-hslogger
@@ -10349,10 +10339,10 @@ etc. You can also play games on FICS or against an engine.")
(license license:gpl2+)))
(define-public stockfish
- (let ((neural-network-revision "6877cd24400e")) ; also update hash below
+ (let ((neural-network-revision "ad9b42354671")) ; also update hash below
(package
(name "stockfish")
- (version "15")
+ (version "15.1")
(source
(origin
(method git-fetch)
@@ -10361,7 +10351,7 @@ etc. You can also play games on FICS or against an engine.")
(commit (string-append "sf_" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1v19v6qhwbf31wpc3qcih4dvqxwqkh0p426skgjin6ags31hkbmh"))))
+ (base32 "0zmnv8vbhhid73pjyxg56r4ckm887znv4d55br370plm3p5b56xa"))))
(build-system gnu-build-system)
(inputs
`(("neural-network"
@@ -10371,7 +10361,7 @@ etc. You can also play games on FICS or against an engine.")
neural-network-revision ".nnue"))
(sha256
(base32
- "1qyna598c0v7gdpycc6kpl12h5a2wa50dqray6gv208f80jcsxv8"))))))
+ "11mpdhnsfggldgvmzwmya64pp3fndyppi2fkdf8kfhbi8qsl56xd"))))))
(arguments
`(#:tests? #f
#:make-flags (list "-C" "src"
@@ -10401,11 +10391,13 @@ etc. You can also play games on FICS or against an engine.")
(copy-file (assoc-ref inputs "neural-network")
(format #f "src/nn-~a.nnue"
,neural-network-revision))))
- ;; Guix doesn't use a multiarch gcc.
- (add-after 'unpack 'remove-m-flag
+ (add-after 'unpack 'remove-m-flag-and-net-target
(lambda _
(substitute* "src/Makefile"
- (("-m\\$\\(bits\\)") "")))))))
+ ;; Guix doesn't use a multiarch gcc.
+ (("-m\\$\\(bits\\)") "")
+ ;; Dont depend on net target.
+ ((": net") ": ")))))))
(synopsis "Strong chess engine")
(description
"Stockfish is a very strong chess engine. It is much stronger than the
@@ -10417,14 +10409,14 @@ ChessX.")
(define-public barrage
(package
(name "barrage")
- (version "1.0.5")
+ (version "1.0.6")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/lgames/barrage/"
"barrage-" version ".tar.gz"))
(sha256
- (base32 "0139wxyrir10cbkvkjn548xgmp84wax8mfwk80yxbxlcdamrg257"))))
+ (base32 "1bhx708s7viv01m6bmpjsdgr33wk5kqw4wf7bvgw73a07v6j8ncw"))))
(build-system gnu-build-system)
(inputs
(list hicolor-icon-theme sdl sdl-mixer))
@@ -10447,14 +10439,14 @@ get high scores.")
(define-public burgerspace
(package
(name "burgerspace")
- (version "1.9.4")
+ (version "1.9.5")
(source
(origin
(method url-fetch)
(uri (string-append "http://perso.b2b2c.ca/~sarrazip/dev/"
"burgerspace-" version ".tar.gz"))
(sha256
- (base32 "1xb4immzmd419aa08lgkzf7ibxa6ax238zb2l5iw9nkgvzlh1v6l"))))
+ (base32 "1r2albqv2ygs58rwcldsx1mp2vy96j7k4yw5jjmvwgnxjmddq7wr"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
@@ -10812,7 +10804,8 @@ inside the Zenith Colony.")
(description "Provides a large set of Go-related services for X11:
@itemize
@item Local games with precise implementation of the Chinese and Japanese rulesets
-@item Edition and visualization of SGF files-Connection to the NNGS or IGS Go servers
+@item Edition and visualization of SGF files
+@item Connection to the NNGS or IGS Go servers
@item Bridge to Go modem protocol, allowing to play against Go modem-capable AIs
such as GnuGo.
@end itemize")
@@ -11032,7 +11025,7 @@ disassembly of the DOS version, extended with new features.")
(define-public fheroes2
(package
(name "fheroes2")
- (version "0.9.11")
+ (version "1.0.0")
(source
(origin
(method git-fetch)
@@ -11041,7 +11034,7 @@ disassembly of the DOS version, extended with new features.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1m8649srzg3j2b1hs4x2y8fib6hn7v0afv4c7bjnfk4bhpi4cqd7"))))
+ (base32 "0bvp9xhzlh4d6q5jlvz4nciald75g9v0vahzax47q9xgajnbibzk"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no tests
@@ -11118,7 +11111,7 @@ meant to be quick and fun.")
(string-append "CPPFLAGS=" "-I"
#$(this-package-input "sdl-union")
"/include/SDL"))))
- (synopsis "Liquid War 6 is a unique multiplayer wargame.")
+ (synopsis "Liquid War 6 is a unique multiplayer wargame")
(description
"Liquid War 6 is a unique multiplayer war game. Your army is a blob of
liquid and you have to try and eat your opponents. Rules are very simple yet
@@ -11151,13 +11144,104 @@ original, they have been invented by Thomas Colcombet.")
RollerCoaster Tycoon 1 and 2, graphics- and gameplay-wise.
In this game, you play as a manager of a theme park, allowing you to make a
-park of your dreams. The list of responsiblities includes managing staff,
+park of your dreams. The list of responsibilities includes managing staff,
finances, landscaping, and most importantly: rides. Good managers follow the
principle of prioritizing the guests' happiness with a well-maintained park.
Should they go unwise, a theme park plunge into chaos with vandalizing guests
and unsafe rides. Which path will you take?")
(license license:gpl2)))
+(define-public ultrastar-deluxe
+ ;; The last release is quite old and does not support recent ffmpeg versions.
+ (let ((commit "43484b0a10ce6aae339e19d81ae2f7b37caf6baa")
+ (revision "1"))
+ (package
+ (name "ultrastar-deluxe")
+ (version (git-version "2020.4.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/UltraStar-Deluxe/USDX.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "078g1rbm1ympmwq9s64v68sxvcms7rr0qid12d2wgm4r04ana47r"))
+ (patches (search-patches "ultrastar-deluxe-no-freesans.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ ;; Remove Windows binaries.
+ (for-each delete-file (find-files "game" "\\.dll$"))
+ ;; Remove font blobs.
+ (let ((font-directories
+ (list "DejaVu" "FreeSans" "NotoSans"
+ "wqy-microhei")))
+ (for-each
+ (lambda (d) (delete-file-recursively
+ (string-append "game/fonts/" d)))
+ font-directories))))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:tests? #f ; No tests.
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-configure
+ (lambda* (#:key inputs configure-flags outputs #:allow-other-keys)
+ (define (where inputs file)
+ (dirname (search-input-file inputs file)))
+ ;; The configure script looks for lua$version, but we
+ ;; provide lua-$version.
+ (substitute* "configure.ac"
+ (("lua\\$i") "lua-$i"))
+ ;; fpc does not pass -lfoo to the linker, but uses its own
+ ;; linker script, which references libs. Pass the libraries
+ ;; listed in that linker script, so our custom linker adds
+ ;; a correct rpath.
+ (substitute* "src/Makefile.in"
+ (("linkflags\\s+:= ")
+ (string-append
+ "linkflags := -lpthread -lsqlite3 -lSDL2"
+ " -lSDL2_image -ldl "
+ " -lz -lfreetype -lportaudio -lavcodec"
+ " -lavformat -lavutil -lswresample"
+ " -lswscale -llua -ldl -lX11 -lportmidi"
+ " -L" (where inputs "lib/libz.so")
+ " -L" (where inputs "lib/libX11.so")
+ " -L" (where inputs "lib/libportmidi.so"))))))
+ (add-after 'install 'font-paths
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* (string-append
+ (assoc-ref outputs "out")
+ "/share/ultrastardx/fonts/fonts.ini")
+ (("=NotoSans/") (string-append "=" #$font-google-noto
+ "/share/fonts/truetype/"))
+ (("=DejaVu/") (string-append "=" #$font-dejavu
+ "/share/fonts/truetype/"))))))))
+ (inputs (list ffmpeg
+ font-dejavu
+ font-google-noto
+ ; Not needed, since we don’t have freesans.
+ ;font-wqy-microhei
+ freetype
+ libx11
+ lua
+ portaudio
+ portmidi
+ sdl2
+ sdl2-image
+ sqlite
+ zlib))
+ (native-inputs (list pkg-config fpc autoconf automake))
+ (synopsis "Karaoke game")
+ (description
+ "UltraStar Deluxe (USDX) is a karaoke game. It allows up to six players
+to sing along with music using microphones in order to score points, depending
+on the pitch of the voice and the rhythm of singing.")
+ (home-page "https://usdx.eu/")
+ (license license:gpl2+))))
+
(define-public steam-devices-udev-rules
;; Last release from 2019-04-10
(let ((commit "d87ef558408c5e7a1a793d738db4c9dc2cb5f8fa")