summaryrefslogtreecommitdiff
path: root/gnu/packages/games.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2022-04-28 16:24:46 +0200
committerLudovic Courtès <ludo@gnu.org>2022-04-28 16:24:46 +0200
commit284fa7264963acc5d114ef5d54c347126b1654ba (patch)
tree3e5360fcc81b6d0dce76a65aca60cf8528f2931f /gnu/packages/games.scm
parent12c9da35389dfba86ae0d863132a6b2c4374205a (diff)
parent882cacc1bb5be0df334dd7ce55b385a3a1678728 (diff)
downloadguix-patches-284fa7264963acc5d114ef5d54c347126b1654ba.tar
guix-patches-284fa7264963acc5d114ef5d54c347126b1654ba.tar.gz
Merge branch 'master' into staging
Diffstat (limited to 'gnu/packages/games.scm')
-rw-r--r--gnu/packages/games.scm258
1 files changed, 158 insertions, 100 deletions
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 8cc29b3487..83c75e8dcf 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -59,7 +59,7 @@
;;; Copyright © 2020 Tomás Ortín Fernández <tomasortin@mailbox.org>
;;; Copyright © 2021 Olivier Rojon <o.rojon@posteo.net>
;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
-;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
+;;; Copyright © 2021, 2022 Greg Hogan <code@greghogan.com>
;;; Copyright © 2021 David Pflug <david@pflug.io>
;;; Copyright © 2021, 2022 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Solene Rapenne <solene@perso.pw>
@@ -69,6 +69,7 @@
;;; Copyright © 2021 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 Yovan Naumovski <yovan@gorski.stream>
+;;; Copyright © 2022 Roman Riabenko <roman@riabenko.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2250,6 +2251,38 @@ utilizing the art assets from the @code{SuperTux} project.")
license:gpl2+
license:gpl3+)))))
+(define-public robotfindskitten
+ (package
+ (name "robotfindskitten")
+ (version "2.8284271.702") ; 1600003_201b is older, see ChangeLog
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/" name "/" name
+ "/releases/download/" version "/"
+ name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1bwrkxm83r9ajpkd6x03nqvmdfpf5vz6yfy0c97pq3v3ykj74082"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:tests? #f ; there are no tests
+ #:make-flags
+ #~(list
+ ;; Required for colorized output, see <http://bugs.gnu.org/54607>.
+ "CFLAGS=-D_XOPEN_SOURCE=600"
+ (string-append "execgamesdir=" #$output "/bin"))))
+ (inputs (list ncurses))
+ (outputs (list "out" "debug"))
+ (synopsis "Thematic meditative game")
+ (description
+ "You are a robot moving around in a realm filled with ASCII characters.
+Examine humourously described though useless items as you search for a kitten
+among them. The theme of this Zen simulation is continued in its
+documentation.")
+ (home-page "http://robotfindskitten.org/")
+ (license license:gpl2+)))
+
(define-public roguebox-adventures
(package
(name "roguebox-adventures")
@@ -4229,15 +4262,15 @@ world}, @uref{http://evolonline.org, Evol Online} and
"1qz7ld55m9cvgr4mkv6c11y0zf2aph3ba605l45qj41hk2wzb2r5"))))
(build-system cmake-build-system)
(inputs
- `(("allegro" ,allegro)
- ("fontconfig" ,fontconfig)
- ("freetype" ,freetype)
- ("icu4c" ,icu4c)
- ("libpng" ,libpng)
- ("lzo" ,lzo)
- ("sdl" ,sdl)
- ("xz" ,xz)
- ("zlib" ,zlib)))
+ (list allegro
+ fontconfig
+ freetype
+ icu4c
+ libpng
+ lzo
+ sdl
+ xz
+ zlib))
(synopsis "Transportation economics simulator game")
(description "OpenTTD is a game in which you transport goods and
passengers by land, water and air. It is a re-implementation of Transport
@@ -4267,22 +4300,24 @@ engine. When you start it you will be prompted to download a graphics set.")
"0nhzlk6s73qvznm5fdwcs1b42g2plf26s5ag39fvck45zm7m48jk"))))
(build-system gnu-build-system)
(arguments
- `(#:make-flags (list (string-append "CC=" ,(cc-for-target))
- (string-append "INSTALL_DIR="
- (assoc-ref %outputs "out")
- "/share/games/openttd/baseset/opengfx"))
- #:phases
- (modify-phases %standard-phases
- (replace 'configure
- (lambda _
- ;; Make sure HOME is writable for GIMP.
- (setenv "HOME" (getcwd))
+ (list
+ #:make-flags
+ #~(list (string-append "CC=" #$(cc-for-target))
+ (string-append "INSTALL_DIR="
+ #$output
+ "/share/games/openttd/baseset/opengfx"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ ;; Make sure HOME is writable for GIMP.
+ (setenv "HOME" (getcwd))
- ;; Redirect stdout, not stderr, to /dev/null. This prevents
- ;; dos2unix from receiving its version information as a flag.
- (substitute* "Makefile"
- (("\\$\\(UNIX2DOS\\) -q --version 2>/dev/null")
- "$(UNIX2DOS) -q --version 1>/dev/null")))))
+ ;; Redirect stdout, not stderr, to /dev/null. This prevents
+ ;; dos2unix from receiving its version information as a flag.
+ (substitute* "Makefile"
+ (("\\$\\(UNIX2DOS\\) -q --version 2>/dev/null")
+ "$(UNIX2DOS) -q --version 1>/dev/null")))))
;; The check phase for this package only checks the md5sums of the built
;; GRF files against the md5sums of the release versions. Because we use
;; different software versions than upstream does, some of the md5sums
@@ -4290,12 +4325,13 @@ engine. When you start it you will be prompted to download a graphics set.")
;; to disable this test.
#:tests? #f
#:parallel-build? #f))
- (native-inputs `(("dos2unix" ,dos2unix)
- ("gimp" ,gimp)
- ("grfcodec" ,grfcodec)
- ("nml" ,nml)
- ("which" ,which)
- ("python" ,python)))
+ (native-inputs
+ (list dos2unix
+ gimp
+ grfcodec
+ nml
+ which
+ python))
(home-page "http://dev.openttdcoop.org/projects/opengfx")
(synopsis "Base graphics set for OpenTTD")
(description
@@ -4327,34 +4363,34 @@ OpenGFX provides you with...
"0aym026lg0r7dp3jxxs9c0rj8lwy1fz3v9hmk3mml6sycsg3fv42"))))
(build-system gnu-build-system)
(native-inputs
- `(("catcodec" ,catcodec)
- ("python" ,python)
- ("tar" ,tar)))
+ (list catcodec
+ python
+ tar))
(arguments
- `(#:make-flags
- (list (string-append "DIR_NAME=opensfx")
- (string-append "TAR="
- (search-input-file %build-inputs "/bin/tar")))
- ;; The check phase only verifies md5sums, see openttd-opengfx.
- #:tests? #f
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'make-reproducible
- (lambda _
- ;; Remove the time dependency of the installed tarball by setting
- ;; the modification times if its members to 0.
- (substitute* "scripts/Makefile.def"
- (("-cf") " --mtime=@0 -cf"))
- #t))
- (delete 'configure)
- (add-before 'build 'prebuild
- (lambda _ (invoke "make" "opensfx.cat")))
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (copy-recursively "opensfx"
- (string-append (assoc-ref outputs "out")
- "/share/games/openttd/baseset"
- "/opensfx")))))))
+ (list
+ #:make-flags
+ #~(list (string-append "DIR_NAME=opensfx")
+ (string-append "TAR="
+ (search-input-file %build-inputs "/bin/tar")))
+ ;; The check phase only verifies md5sums, see openttd-opengfx.
+ #:tests? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'make-reproducible
+ (lambda _
+ ;; Remove the time dependency of the installed tarball by setting
+ ;; the modification times if its members to 0.
+ (substitute* "scripts/Makefile.def"
+ (("-cf") " --mtime=@0 -cf"))))
+ (delete 'configure)
+ (add-before 'build 'prebuild
+ (lambda _ (invoke "make" "opensfx.cat")))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (copy-recursively "opensfx"
+ (string-append (assoc-ref outputs "out")
+ "/share/games/openttd/baseset"
+ "/opensfx")))))))
(home-page "http://dev.openttdcoop.org/projects/opensfx")
(synopsis "Base sounds for OpenTTD")
(description "OpenSFX is a set of free base sounds for OpenTTD which make
@@ -4377,27 +4413,28 @@ the original Transport Tycoon Deluxe.")
"0h583d8fxy78kc3jvpp78r76a48qhxrhm4q7jbnj74aw0kwrcl8g"))))
(build-system gnu-build-system)
(native-inputs
- `(("grfcodec" ,grfcodec)
- ; Scripts are Python3 compatible, but call the interpreter as
- ; python instead of python3.
- ("python" ,python-wrapper)
- ("tar" ,tar)))
+ (list grfcodec
+ ;; Scripts are Python3 compatible, but call the interpreter as
+ ;; python instead of python3.
+ python-wrapper
+ tar))
(arguments
- `(#:make-flags
- (list (string-append "DIR_NAME=openmsx")
- (string-append "TAR="
- (search-input-file %build-inputs "/bin/tar")))
- ;; The check phase only verifies md5sums, see openttd-opengfx.
- #:tests? #f
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (copy-recursively "openmsx"
- (string-append (assoc-ref outputs "out")
- "/share/games/openttd/baseset"
- "/openmsx")))))))
+ (list
+ #:make-flags
+ #~(list (string-append "DIR_NAME=openmsx")
+ (string-append "TAR="
+ (search-input-file %build-inputs "/bin/tar")))
+ ;; The check phase only verifies md5sums, see openttd-opengfx.
+ #:tests? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (copy-recursively "openmsx"
+ (string-append (assoc-ref outputs "out")
+ "/share/games/openttd/baseset"
+ "/openmsx")))))))
(home-page "http://dev.openttdcoop.org/projects/openmsx")
(synopsis "Music set for OpenTTD")
(description "OpenMSX is a music set for OpenTTD which makes it possible
@@ -4410,26 +4447,36 @@ Transport Tycoon Deluxe.")
(inherit openttd-engine)
(name "openttd")
(arguments
- `(#:configure-flags
- (let* ((out (assoc-ref %outputs "out")))
- (list (string-append "-DCMAKE_INSTALL_BINDIR=" out "/bin")))
- #:phases
- (modify-phases %standard-phases
- (add-before 'check 'install-data
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (for-each
- (lambda (input)
- (copy-recursively (assoc-ref inputs input)
- (assoc-ref outputs "out")))
- (list "opengfx" "openmsx" "opensfx")))))))
+ (list
+ #:configure-flags
+ #~(list (string-append "-DCMAKE_INSTALL_BINDIR=" #$output "/bin"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-sources
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/music/fluidsynth.cpp"
+ (("default_sf\\[\\] = \\{" all)
+ (string-append all "
+\t/* Guix hardcoded :P */
+\t\"" (search-input-file inputs "/share/soundfonts/FreePatsGM.sf2") "\",
+")))))
+ (add-before 'check 'install-data
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((base "/share/games/openttd"))
+ (for-each
+ (lambda (dir)
+ ;; Copy the entire input, so as to not omit documentation
+ ;; etc.
+ (copy-recursively
+ (string-drop-right dir (string-length base))
+ (assoc-ref outputs "out")))
+ (search-path-as-list (list base) (map cdr inputs)))))))))
(inputs
(modify-inputs (package-inputs openttd-engine)
- (prepend timidity++)))
+ (prepend fluidsynth freepats-gm)))
(native-inputs
- `(("opengfx" ,openttd-opengfx)
- ("openmsx" ,openttd-openmsx)
- ("opensfx" ,openttd-opensfx)
- ,@(package-native-inputs openttd-engine)))))
+ (modify-inputs (package-native-inputs openttd-engine)
+ (prepend openttd-opengfx openttd-openmsx openttd-opensfx)))))
(define openrct2-title-sequences
(package
@@ -11910,10 +11957,10 @@ etc. You can also play games on FICS or against an engine.")
(license license:gpl2+)))
(define-public stockfish
- (let ((neural-network-revision "13406b1dcbe0")) ; also update hash below
+ (let ((neural-network-revision "6877cd24400e")) ; also update hash below
(package
(name "stockfish")
- (version "14.1")
+ (version "15")
(source
(origin
(method git-fetch)
@@ -11922,7 +11969,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 "0apqqcgpcflm3c6mcl13ln2y04f6zksnljmk4ys7naf7xk4vdgkd"))))
+ (base32 "1v19v6qhwbf31wpc3qcih4dvqxwqkh0p426skgjin6ags31hkbmh"))))
(build-system gnu-build-system)
(inputs
`(("neural-network"
@@ -11932,19 +11979,25 @@ etc. You can also play games on FICS or against an engine.")
neural-network-revision ".nnue"))
(sha256
(base32
- "0vr3hcmlqqm74pn7hc54gmfs9drqvgc53nh7bvy6v8z0rcfnnh0k"))))))
+ "1qyna598c0v7gdpycc6kpl12h5a2wa50dqray6gv208f80jcsxv8"))))))
(arguments
`(#:tests? #f
#:make-flags (list "-C" "src"
"build"
(string-append "PREFIX="
(assoc-ref %outputs "out"))
+ ,@(if (target-ppc32?)
+ `("EXTRALDFLAGS=-latomic")
+ `())
(string-append "ARCH="
,(match (%current-system)
("x86_64-linux" "x86-64")
("i686-linux" "x86-32")
("aarch64-linux" "armv8")
("armhf-linux" "armv7")
+ ("powerpc-linux" "ppc-32")
+ ("powerpc64le-linux" "ppc-64")
+ ("riscv64-linux" "general-64")
("mips64el-linux" "general-64")
(_ "general-32"))))
#:phases (modify-phases %standard-phases
@@ -11955,7 +12008,12 @@ etc. You can also play games on FICS or against an engine.")
(lambda* (#:key inputs #:allow-other-keys)
(copy-file (assoc-ref inputs "neural-network")
(format #f "src/nn-~a.nnue"
- ,neural-network-revision)))))))
+ ,neural-network-revision))))
+ ;; Guix doesn't use a multiarch gcc.
+ (add-after 'unpack 'remove-m-flag
+ (lambda _
+ (substitute* "src/Makefile"
+ (("-m\\$\\(bits\\)") "")))))))
(synopsis "Strong chess engine")
(description
"Stockfish is a very strong chess engine. It is much stronger than the