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.scm235
1 files changed, 142 insertions, 93 deletions
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 2387ad3fc6..8313c02754 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -1071,10 +1071,10 @@ want what you have.")
(license license:cc-by-sa3.0)))
(define-public cockatrice
- (let ((release-date "2021-01-26"))
+ (let ((release-date "2023-09-14"))
(package
(name "cockatrice")
- (version "2.8.0")
+ (version "2.9.0")
(source
(origin
(method git-fetch)
@@ -1084,7 +1084,7 @@ want what you have.")
(file-name (git-file-name name version))
(sha256
(base32
- "0q8ffcklb2b7hcqhy3d2f9kz9aw22pp04pc9y4sslyqmf17pwnz9"))
+ "1jhn6pprd3j8m312mm8nlb9hwcchg3qkks5rw0x7d22alk922dlv"))
(modules '((guix build utils)))
(snippet
;; Strip image URLs as they point towards non-free web services
@@ -6926,7 +6926,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
(define-public crawl
(package
(name "crawl")
- (version "0.29.1")
+ (version "0.30.1")
(source
(origin
(method git-fetch)
@@ -6935,7 +6935,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "17bl8hdv2z3mpdfmd5gnwg3r1p9dqjbisiql24pxs1d33qcw0h7x"))
+ (base32 "1rlp8z1n7ziv7aaa3fb4h4nnq24pfz1m23a99c1ra582fh0yx1pl"))
(patches (search-patches "crawl-upgrade-saves.patch"))))
(build-system gnu-build-system)
(inputs
@@ -7324,7 +7324,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as
(define-public tome4
(package
(name "tome4")
- (version "1.7.4")
+ (version "1.7.6")
(synopsis "Single-player, RPG roguelike game set in the world of Eyal")
(source
(origin
@@ -7332,104 +7332,104 @@ Crowther & Woods, its original authors, in 1995. It has been known as
(uri (string-append "https://te4.org/dl/t-engine/t-engine4-src-"
version ".tar.bz2"))
(sha256
- (base32 "197jmd99l3w3sig32pvdlq9fcgdjjx7g9csy08kz174cyhrlyly3"))
+ (base32 "0338lirc4jbmq29449bw8c6src8b91yn9x14w2nxr31zh00fm7cq"))
(modules '((guix build utils)))))
(build-system gnu-build-system)
(native-inputs
(list unzip))
(inputs
- `(("sdl-union" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))
- ("glu" ,glu)
- ("premake4" ,premake4)
- ("openal" ,openal)
- ("vorbis" ,libvorbis)
- ("luajit" ,luajit)))
+ (list glu
+ libvorbis
+ luajit
+ openal
+ premake4
+ (sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf))))
(arguments
- `(#:make-flags
- (list (string-append "CC=" ,(cc-for-target))
- "config=release")
- ;; XXX: Building in parallel occasionally causes this build failure:
- ;; ../src/luajit2/src/host/buildvm.c:73:10: fatal error: buildvm_arch.h:
- ;; No such file or directory
- #:parallel-build? #f
- #:phases (modify-phases %standard-phases
- (delete 'bootstrap)
- (replace 'configure
- (lambda _
- (invoke "premake4" "gmake")))
- (add-after 'set-paths 'set-sdl-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (setenv "CPATH"
- (string-append
- (search-input-directory inputs "/include/SDL2")
- ":" (or (getenv "CPATH") "")))))
- (delete 'check)
- ;; premake doesn't provide install target
- (replace 'install
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (usr (string-append out "/usr"))
- (bin (string-append out "/bin"))
- (licenses (string-append out "/share/licenses"))
- (documents (string-append out "/share/doc"))
- (pixmaps (string-append out "/share/pixmaps"))
- (icon "te4-icon.png")
- (data (string-append out "/share/" ,name))
- (applications (string-append
- out "/share/applications"))
- (unzip (string-append
- (assoc-ref inputs "unzip") "/bin/unzip"))
- (wrapper (string-append bin "/" ,name)))
- ;; icon
- (mkdir-p pixmaps)
- (invoke unzip "-j"
- (string-append
- "game/engines/te4-" ,version ".teae")
- (string-append
- "data/gfx/" icon) "-d" pixmaps)
- ;; game executable
- (install-file "t-engine" data)
- (mkdir-p bin)
- (with-output-to-file wrapper
- (lambda ()
- (display
- (string-append
- "#!/bin/sh\n"
- ;; No bootstrap code found,
- ;; defaulting to working directory
- ;; for engine code!
- "cd " data "\n"
- "exec -a tome4 ./t-engine \"$@\"\n"))))
- (chmod wrapper #o555)
- ;; licenses
- (for-each (lambda (file)
- (install-file file licenses))
- '("COPYING" "COPYING-MEDIA"))
- ;; documents
- (for-each (lambda (file)
- (install-file file documents))
- '("CONTRIBUTING" "CREDITS"))
- ;; data
- (copy-recursively "bootstrap" (string-append
- data "/bootstrap"))
- (copy-recursively "game" (string-append data "/game"))
- ;; launcher
- (mkdir-p applications)
- (make-desktop-entry-file
- (string-append applications "/" ,name ".desktop")
- #:name "ToME4"
- #:comment ,synopsis
- #:exec ,name
- #:icon icon
- #:categories '("Game" "RolePlaying"))))))))
+ (list
+ #:tests? #false ;no test
+ #:make-flags
+ #~(list (string-append "CC=" #$(cc-for-target))
+ "config=release")
+ ;; XXX: Building in parallel occasionally causes this build failure:
+ ;; ../src/luajit2/src/host/buildvm.c:73:10: fatal error: buildvm_arch.h:
+ ;; No such file or directory
+ #:parallel-build? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'bootstrap)
+ (replace 'configure
+ (lambda _
+ (invoke "premake4" "gmake")))
+ (add-after 'set-paths 'set-sdl-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "CPATH"
+ (string-append
+ (search-input-directory inputs "/include/SDL2")
+ ":" (or (getenv "CPATH") "")))))
+ ;; premake doesn't provide install target
+ (replace 'install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (usr (string-append out "/usr"))
+ (bin (string-append out "/bin"))
+ (licenses (string-append out "/share/licenses"))
+ (documents (string-append out "/share/doc"))
+ (pixmaps (string-append out "/share/pixmaps"))
+ (icon "te4-icon.png")
+ (data (string-append out "/share/" #$name))
+ (applications (string-append
+ out "/share/applications"))
+ (unzip (string-append
+ (assoc-ref inputs "unzip") "/bin/unzip"))
+ (wrapper (string-append bin "/" #$name)))
+ ;; icon
+ (mkdir-p pixmaps)
+ (invoke unzip "-j"
+ (string-append
+ "game/engines/te4-" #$version ".teae")
+ (string-append
+ "data/gfx/" icon) "-d" pixmaps)
+ ;; game executable
+ (install-file "t-engine" data)
+ (mkdir-p bin)
+ (with-output-to-file wrapper
+ (lambda ()
+ (display
+ (string-append
+ "#!/bin/sh\n"
+ ;; No bootstrap code found,
+ ;; defaulting to working directory
+ ;; for engine code!
+ "cd " data "\n"
+ "exec -a tome4 ./t-engine \"$@\"\n"))))
+ (chmod wrapper #o555)
+ ;; licenses
+ (for-each (lambda (file)
+ (install-file file licenses))
+ '("COPYING" "COPYING-MEDIA"))
+ ;; documents
+ (for-each (lambda (file)
+ (install-file file documents))
+ '("CONTRIBUTING" "CREDITS"))
+ ;; data
+ (copy-recursively "bootstrap" (string-append
+ data "/bootstrap"))
+ (copy-recursively "game" (string-append data "/game"))
+ ;; launcher
+ (mkdir-p applications)
+ (make-desktop-entry-file
+ (string-append applications "/" #$name ".desktop")
+ #:name "ToME4"
+ #:comment #$synopsis
+ #:exec #$name
+ #:icon icon
+ #:categories '("Game" "RolePlaying"))))))))
(home-page "https://te4.org")
(description "Tales of Maj’Eyal (ToME) RPG, featuring tactical turn-based
combat and advanced character building. Play as one of many unique races and
classes in the lore-filled world of Eyal, exploring random dungeons, facing
challenging battles, and developing characters with your own tailored mix of
-abilities and powers. With a modern graphical and customisable interface,
-intuitive mouse control, streamlined mechanics and deep, challenging combat,
-Tales of Maj’Eyal offers engaging roguelike gameplay for the 21st century.")
+abilities and powers.")
(license license:gpl3+)))
(define-public quakespasm
@@ -10366,6 +10366,55 @@ ChessX.")
(home-page "https://stockfishchess.org/")
(license license:gpl3+))))
+(define-public moonfish
+ (let ((commit "4f8829009e8c26e6a878261e0bc4c7e7617ef6b6")
+ (revision "1"))
+ (package
+ (name "moonfish")
+ (version (git-version "0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~zamfofex/moonfish")
+ (commit commit)))
+ (sha256
+ (base32
+ "1ksg42x9cyn3pbfryy9raqb355k47cqcisascpy157c3cgdr2z60"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:make-flags
+ #~(list (string-append "CC=" #$(cc-for-target)))
+ #:tests? #f ;no check target
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure) ;no configure script
+ (replace 'install ;no 'install' target
+ (lambda _
+ (let* ((out-bin (string-append #$output "/bin"))
+ (tools-bin (string-append #$output:tools "/bin"))
+ (tool (string-append tools-bin "/moonfish-")))
+ (mkdir-p out-bin)
+ (mkdir-p tools-bin)
+ (copy-file "moonfish"
+ (string-append out-bin "/moonfish"))
+ (copy-file "play"
+ (string-append tool "play"))
+ (copy-file "lichess"
+ (string-append tool "lichess"))
+ (copy-file "analyse"
+ (string-append tool "analyse"))))))))
+ (inputs (list bearssl cjson))
+ (outputs '("out" "tools"))
+ (home-page "https://git.sr.ht/~zamfofex/moonfish")
+ (synopsis "Simple chess engine written in C")
+ (description
+ "moonfish is a toy UCI chess engine made for fun. It is inspired by
+sunfish, but is written in C rather than Python. It also has TUI tools for
+using any UCI engine and also to connect UCI engines to Lichess.")
+ (license license:agpl3+))))
+
(define-public barrage
(package
(name "barrage")