;;; Copyright © 2016 Steve Webber <webber.sl@gmail.com>
;;; Copyright © 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@hyperbola.info>
;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
-;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2019 nee <nee-git@hidamari.blue>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017, 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2017, 2018, 2019, 2020 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>
;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
-;;; Copyright © 2019 Oleg Pykhalov <go.wigust@gmail.com>
+;;; Copyright © 2019, 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com>
;;; Copyright © 2019 Dan Frumin <dfrumin@cs.ru.nl>
-;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
-;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si>
+;;; Copyright © 2019, 2020 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2019 Josh Holland <josh@inv.alid.pw>
;;; Copyright © 2017, 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;;
(define-public cataclysm-dark-days-ahead
(deprecated-package "cataclysm-dark-days-ahead" cataclysm-dda))
+(define-public corsix-th
+ (package
+ (name "corsix-th")
+ (version "0.63")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/CorsixTH/CorsixTH.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1rkyk8g55xny276s0hr5k8mq6f4nzz56d3k2mp09dzfymrqb8hgi"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'wrap-binary
+ (lambda _
+ ;; Set Lua module paths and default MIDI soundfont on startup.
+ (let* ((out (assoc-ref %outputs "out"))
+ (fluid (assoc-ref %build-inputs "fluid-3"))
+ (lua-version ,(version-major+minor (package-version lua)))
+ (lua-cpath
+ (map (lambda (lib)
+ (string-append
+ (assoc-ref %build-inputs (string-append "lua-" lib))
+ "/lib/lua/" lua-version "/?.so"))
+ '("filesystem" "lpeg"))))
+ (wrap-program (string-append out "/bin/corsix-th")
+ `("LUA_CPATH" ";" = ,lua-cpath)
+ `("SDL_SOUNDFONTS" ":" suffix
+ (,(string-append fluid "/share/soundfonts/FluidR3Mono_GM.sf3")))))
+ #t)))
+ #:tests? #f)) ; TODO need busted package to run tests
+ ;; Omit Lua-Socket dependency to disable automatic updates.
+ (inputs
+ `(("ffmpeg" ,ffmpeg)
+ ("fluid-3" ,fluid-3)
+ ("freetype" ,freetype)
+ ("lua" ,lua)
+ ("lua-filesystem" ,lua-filesystem)
+ ("lua-lpeg" ,lua-lpeg)
+ ("sdl2" ,sdl2)
+ ("sdl2-mixer" ,sdl2-mixer)))
+ (home-page "https://corsixth.com")
+ (synopsis "Implementation of the @i{Theme Hospital} game engine")
+ (description
+ "This package provides a reimplementation of the 1997 Bullfrog business
+simulation game @i{Theme Hospital}. As well as faithfully recreating the
+original engine, CorsixTH adds support for high resolutions, custom levels and
+more. This package does @emph{not} provide the game assets.")
+ (license (list
+ license:expat ; main license
+ license:bsd-3)))) ; CorsixTH/Src/random.c
+
(define-public cowsay
(package
(name "cowsay")
tired of cows, a variety of other ASCII-art messengers are available.")
(license license:gpl3+)))
+(define-public lolcat
+ (let ((commit "35dca3d0a381496d7195cd78f5b24aa7b62f2154")
+ (revision "0"))
+ (package
+ (name "lolcat")
+ (version (git-version "1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jaseg/lolcat.git")
+ (commit commit)))
+ (sha256
+ (base32
+ "0jjbkqcc2ikjxd1xgdyv4rb0vsw218181h89f2ywg29ffs3ypd8g"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ;; no check target
+ #:make-flags (list "CC=gcc")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'bootstrap)
+ (delete 'configure)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (dest (string-append out "/bin")))
+ (mkdir-p dest)
+ (install-file "lolcat" dest)
+ (install-file "censor" dest)
+ #t))))))
+ (home-page "https://github.com/jaseg/lolcat")
+ (synopsis "Rainbow coloring effect for text console display")
+ (description "@command{lolcat} concatenates files and streams like
+regular @command{cat}, but it also adds terminal escape codes between
+characters and lines resulting in a rainbow effect.")
+ (license license:wtfpl2))))
+
(define-public freedoom
(package
(name "freedoom")
(define-public golly
(package
(name "golly")
- (version "3.2")
+ (version "3.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/golly/golly/golly-"
"-src.tar.gz"))
(sha256
(base32
- "0cg9mbwmf4q6qxhqlnzrxh9y047banxdb8pd3hgj3smmja2zf0jd"))))
+ "1j3ksnar4rdam4xiyspgyrs1pifbvxfxkrn65brkwxpx39mpgzc8"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list "CC=gcc"
@end enumerate")
(license license:gpl2+)))
+(define-public julius
+ (package
+ (name "julius")
+ (version "1.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bvschaik/julius.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0kgyzfjii4dhpy2h05977alwdmxyxb4jxznnrhlgb21m0ybncmvp"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("sdl2" ,sdl2)
+ ("sdl2-mixer" ,sdl2-mixer)))
+ (home-page "https://github.com/bvschaik/julius")
+ (synopsis "Re-implementation of Caesar III game engine")
+ (description
+ "Engine for Caesar III, a city-building real-time strategy game.
+Julius includes some UI enhancements while preserving the logic (including
+bugs) of the original game, so that saved games are compatible. This package
+does not include game data.")
+ (license (list license:agpl3
+ license:expat ; ext/dirent
+ license:zlib)))) ; ext/tinyfiledialogs
+
(define-public meandmyshadow
(package
(name "meandmyshadow")
(source
(origin
(method url-fetch)
- (uri (string-append "http://files.gnubg.org/media/sources/gnubg-release-"
- version "-sources." "tar.gz"))
+ (uri (string-append "mirror://gnu/gnubg/gnubg-release-"
+ version "-sources.tar.gz"))
(sha256
(base32
"11xwhcli1h12k6rnhhyq4jphzrhfik7i8ah3k32pqw803460n6yf"))))
("libcanberra" ,libcanberra)))
(native-inputs `(("python-2" ,python-2)
("pkg-config" ,pkg-config)))
- (home-page "http://gnubg.org")
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-desktop-file
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (apps (string-append out "/share/applications")))
+ (mkdir-p apps)
+ (with-output-to-file (string-append apps "/gnubg.desktop")
+ (lambda _
+ (format #t
+ "[Desktop Entry]~@
+ Name=GNU Backgammon~@
+ Exec=~a/bin/gnubg -w~@
+ Icon=gnubg~@
+ Categories=Game;~@
+ Terminal=false~@
+ Type=Application~%"
+ out))))
+ #t)))))
+ (home-page "https://www.gnu.org/software/gnubg/")
(synopsis "Backgammon game")
(description "The GNU backgammon application (also known as \"gnubg\") can
be used for playing, analyzing and teaching the game. It has an advanced
(define-public nethack
(package
(name "nethack")
- (version "3.6.2")
+ (version "3.6.4")
(source
(origin
(method url-fetch)
(string-append "https://www.nethack.org/download/" version "/nethack-"
(string-join (string-split version #\.) "") "-src.tgz"))
(sha256
- (base32 "07fvkm3v11a4pjrq2f66vjslljsvk6raal53skn4gqsfdbd0ml7v"))))
+ (base32 "0ndxgnsprwgjnk0qb24iljkpijnfncgvfb3h3zb129h3cs2anc85"))))
(inputs
`(("ncurses" ,ncurses)
("bison" ,bison)
(define-public cmatrix
(package
(name "cmatrix")
- (version "1.2a")
+ (version "2.0")
(source
(origin
- (method url-fetch)
- (uri (string-append "http://www.asty.org/cmatrix/dist/cmatrix-" version
- ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/abishekvashok/cmatrix.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0k06fw2n8nzp1pcdynhajp5prba03gfgsbj91bknyjr5xb5fd9hz"))))
+ "1h9jz4m4s5l8c3figaq46ja0km1gimrkfxm4dg7mf4s84icmasbm"))))
(build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)))
(arguments
'(#:phases
(modify-phases %standard-phases
(define minetest-data
(package
(name "minetest-data")
- (version "5.1.0")
+ (version "5.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
(synopsis "Main game data for the Minetest game engine")
(description
"Game data for the Minetest infinite-world block sandbox game.")
- (home-page "http://minetest.net")
+ (home-page "https://www.minetest.net/")
(license license:lgpl2.1+)))
(define-public minetest
(package
(name "minetest")
- (version "5.1.0")
+ (version "5.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "184n9gxfa7yr0j85z2x736maaymsnppd5jzm326wlqri3c0qqy3z"))
+ "0cjj63333b7j4ydfq0h9yc6d2jvmyjd7n7zbd08yrf0rcibrj2k0"))
(modules '((guix build utils)))
(snippet
'(begin
- ;; Mimic upstream commit 706b6aad06, for compatibility with
- ;; newer jsoncpp. Remove this for > 5.1.0.
- (substitute* "cmake/Modules/FindJson.cmake"
- (("features\\.h")
- "allocator.h"))
-
;; Delete bundled libraries.
(delete-file-recursively "lib")
#t))))
forming structures in every possible creation, on multiplayer servers or as a
single player. Mods and texture packs allow players to personalize the game
in different ways.")
- (home-page "http://minetest.net")
+ (home-page "https://www.minetest.net/")
(license license:lgpl2.1+)))
(define glkterm
(install-file "glulxe" bin))
#t))
(delete 'configure)))) ; no configure script
- (home-page "http://www.eblong.com/zarf/glulx/")
+ (home-page "https://www.eblong.com/zarf/glulx/")
(synopsis "Interpreter for Glulx VM")
(description
"Glulx is a 32-bit portable virtual machine intended for writing and
(define-public supertuxkart
(package
(name "supertuxkart")
- (version "1.0")
+ (version "1.1")
(source
(origin
(method url-fetch)
version "/supertuxkart-" version "-src.tar.xz"))
(sha256
(base32
- "106rlp99hq18b4q1kdri3pl06cc4v7iqfp1hp9k2f8751lzz923d"))
+ "1s0ai07g3sswck9mr0142989mrgzzq1njc1qxk5als5b245jpc79"))
(modules '((guix build utils)))
(snippet
;; Delete bundled library sources
;; 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
+ ;; FIXME: try to unbundle angelscript and libraqm
(for-each delete-file-recursively
'("lib/zlib"
"lib/libpng"
"-DNO_IRR_COMPILE_WITH_ZLIB_=TRUE"
"-DUSE_SYSTEM_GLEW=TRUE"
"-DUSE_SYSTEM_ENET=TRUE"
+ ;; In order to use the system ENet library, IPv6 support (added in
+ ;; SuperTuxKart version 1.1) must be disabled.
+ "-DUSE_IPV6=FALSE"
;; FIXME: needs libopenglrecorder
"-DBUILD_RECORDER=0"
;; Irrlicht returns an integer instead of a boolean
("libvorbis" ,libvorbis)
("freetype" ,freetype)
("fribidi" ,fribidi)
+ ("harfbuzz" ,harfbuzz)
("mesa" ,mesa)
("libx11" ,libx11)
("libxrandr" ,libxrandr)
("enet" ,enet)))
(native-inputs
`(("pkg-config" ,pkg-config)))
- (home-page "https://supertuxkart.net/")
+ (home-page "https://supertuxkart.net/Main_Page")
(synopsis "3D kart racing game")
(description "SuperTuxKart is a 3D kart racing game, with a focus on
having fun over realism. You can play with up to 4 friends on one PC, racing
(license license:gpl2+)))
(define-public red-eclipse
- (let ((release "1.6.0")
- (revision 0)
- (data-sources
- '(("acerspyro" "12b0bngl7hlxw4iwdbn99jp081yl6z1ic0s788nm349drbr2pck8")
- ("actors" "0x7qqx67679q6ark9zz02skwhzgabid69kwi6zmhfpfgicn4927r")
- ("appleflap" "08xslwqfqz3j4m03pv5ry2gdzj5k2ns51z8n6sln3sa94i9x8qkm")
- ("blendbrush" "18zf5i2ax4p14x4c9nhk9fq6l1xgbxw62gm72vx59vbfdpjrw3cg")
- ("caustics" "172fxwx7kbz5nmbjq98kr52ips505wb99fibgnpg8cj02syrya8k")
- ("crosshairs" "14w8ysqzdsx9bzpfbl700jzngbh14rdghhjdf6zd6jlkvrl6754r")
- ("dziq" "056imqszvp90j7cgz52ly0f31px64gsrmvm9k2c78ldbx87jnhc3")
- ("elyvisions" "1bsgr0gr7njydj8fqclh0a27lrsyic3xfd5a4vwggw7g54azpgk2")
- ("fonts" "00ibisza1qci0ghf2rynyf28l6r3nqhfzjf80k6gg76q4v7p1myx")
- ("freezurbern" "07l9ldk9b82f12c13wcg5xxdf15bw0yjxk3vvk8v3ygrl2mwksyr")
- ("john" "1jdmwkrdi5b9pivkm22rxhmkk1db9dx6l54wzcc23cvdz04ij93k")
- ("jojo" "0f7kjy43fbk9kw8fip6bbw4gn3pryh0fndlahjfkaysrx98krdj3")
- ("jwin" "0nc8dndnpqk2ad6316a8k6kgzsrkpwvk8s4gyh7aqfi4axfclril")
- ("luckystrike" "04jiipqahphmvz5cd74dygr62dlvv6l4iglb8hzh4pp8frhls8bq")
- ("maps" "0an46ipjvw4h0nxvb6qvnzp1cdkzlkiinqz4zh9lmxy1ds0gclim")
- ("mayhem" "15k10imm2wr6c6fq35n4r99k7kz7n9zdnjlw6dmdq6fba67i6sbc")
- ("mikeplus64" "0v4wiiivm3829j4phlavy22n4c6k6ib9ixxpdz7r6ysg5cdkaw33")
- ("misc" "13rfgwrlfhflz6inbkg3fypyf8im0m49sw112b17qrw2zgp8i1rz")
- ("nieb" "0z0h9jdn2gkkjil3vsvwidb1p2k09pi5n3wjxza12hhvqmcs7q8f")
- ("nobiax" "08bfp4q6gbfis18bp1h4d0hqssk79jc4fhyjxnv21dbam4v4mnkn")
- ("particles" "1vsx3fgg19xggxfhz3vlrh6nqhmw7kl9kmxrvb2j84blp00vd6z2")
- ("philipk" "14irscg80607i5k5l2ci0n9nwibvda2f3xsykgv96d0vldrp5n5a")
- ("projectiles" "09bnfsrywirwgjm6d7ff5nicx6w6b7w9568x9pb5q0ncaps3l85s")
- ("props" "1dlabbprlkif8af3daf9nbgcwgxiymvj0yiphqhlri8ylfy2vpz4")
- ("skyboxes" "14bi3md5y47cvb9ybipdvksz40gqsqw2r0lh3zzqb4acq367w18y")
- ("snipergoth" "0m8rvvy5n8n9pm0b5cqvzsxsw51mqk8m7s1h3qc849b38isliwq2")
- ("sounds" "0ivf3w5bphz5pzzx6kwcb67vbly1l19cgv3s0cyp8n87afiqj5rd")
- ("textures" "0qdmgx7zbcqnb9rrga2izr93p5inirczhddfxs504rsnv0v8vyxm")
- ("torley" "05ppyhghq859cbbxzj3dnl9fcx3ghy04ds1pylypwg2hsxzbjwcd")
- ("trak" "0g3vq86q91a3syli38lwc8ca4ychfwsmmqf85kqzfzyd627ybclm")
- ("ulukai" "0asa5fz400impklcg6dy2f7jiaqfc1sn1c36fpg8jd01gw66lw93")
- ("unnamed" "0rz5683j7sfwkcycfypbv4b0ihp0qwn9rzskfsabwc1s5g324917")
- ("vanities" "13f18783rc8cjf22p61zr8m5g1migzlx05fzl8xnbjdkqq4cdyix")
- ("vegetation" "1y5d97nfmvax7y4fr0y5v0c8zb1ajkqwx76kjd4qc9n4spdsi5sc")
- ("weapons" "103g1dhxv5ffz4ddg2xcbshbgv9606chsbas3pzk6h9ybqsyjrqh")
- ("wicked" "1884rk34a2dj83gz82rc4zh3ch0dyj5221hvsr0a5h60578i7yj6"))))
+ (let ((release "2.0.0")
+ (revision 0))
(package
(name "red-eclipse")
(version (if (zero? revision)
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/red-eclipse/base.git")
- (commit (string-append "v" release))))
+ (url "https://github.com/redeclipse/base.git")
+ (commit (string-append "v" release))
+ (recursive? #t))) ; for game data
(file-name (git-file-name name version))
(sha256
- (base32 "0qy9kmq21wc4bdhwifasxc5dv1y5c53sn7dfmyc5y3zyz8wjyij4"))
- (patches
- (search-patches "red-eclipse-remove-gamma-name-hack.patch"))))
+ (base32 "0sz0mqhwx8r9n4mk3qrxw420nlsm3y0n48gd0lazgd64lfqjh3ab"))
+ (modules '((guix build utils)))
+ (snippet
+ ;; Remove proprietary libraries and other pre-compiled binaries.
+ '(begin
+ (delete-file-recursively "bin")
+ #t))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
(assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'unpack-data
- (lambda* (#:key inputs #:allow-other-keys)
- (delete-file-recursively "data")
- (mkdir "data")
- (with-directory-excursion "data"
- (for-each (lambda (name)
- (copy-recursively (assoc-ref inputs name) name))
- (list ,@(map car data-sources))))
- #t))
- (add-after 'unpack-data 'add-store-data-package-path-as-default
+ (add-after 'unpack 'add-store-data-package-path-as-default
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "src/engine/server.cpp"
- (("(else[[:space:]]*)((addpackagedir\\()\"data\"(\\);))"
- _
- else_part
- addpackagedir_original
- addpackagedir_open
- addpackagedir_close)
- (string-append else_part
- "{ "
- addpackagedir_open
- "\""
+ (("data = \"data\"")
+ (string-append "data = \""
(assoc-ref outputs "out")
- "/share/redeclipse/data\""
- addpackagedir_close
- " "
- addpackagedir_original
- " }")))
+ "/share/redeclipse/data\"")))
#t))
(delete 'configure) ; no configure script
(add-after 'set-paths 'set-sdl-paths
`(("pkg-config" ,pkg-config)))
(inputs
`(("curl" ,curl)
+ ("freetype" ,freetype)
("glu" ,glu)
("sdl-union" ,(sdl-union (list sdl2
sdl2-image
- sdl2-mixer)))
- ;; Create origin records for the many separate data packages.
- ,@(map (match-lambda
- ((name hash)
- (list name
- (origin
- (method git-fetch)
- (uri
- (git-reference
- (url (string-append "https://github.com/"
- "red-eclipse/" name ".git"))
- (commit (string-append "v" release))))
- (sha256 (base32 hash))
- (file-name (git-file-name name version))))))
- data-sources)))
- (home-page "http://redeclipse.net/")
+ sdl2-mixer)))))
+ (home-page "https://redeclipse.net/")
(synopsis "Arena shooter derived from the Cube 2 engine")
(description
"Red Eclipse is an arena shooter, created from the Cube2 engine.
Offering an innovative parkour system and distinct but all potent weapons,
Red Eclipse provides fast paced and accessible gameplay.")
;; The engine is under Zlib; data files are covered by the other
- ;; licenses. More details at <http://redeclipse.net/wiki/License>.
+ ;; licenses. More details at file:///doc/all-licenses.txt.
(license (list license:expat
license:zlib
+ license:cc-by-sa4.0
license:cc-by-sa3.0
license:cc-by3.0
- license:cc0)))))
+ license:cc0
+ license:public-domain
+ license:silofl1.1)))))
(define-public grue-hunter
(package
(define-public supertux
(package
(name "supertux")
- (version "0.6.0")
+ (version "0.6.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/SuperTux/supertux/"
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1h1s4abirkdv4ag22zvyk6zkk64skqbjmcnnba67ps4hdzxfbhy4"))
+ "0lqch5gcq6ccnspy93z9r13bp8w2j1vrd8jhvk5kp4qhrd1f069s"))
(patches
(search-patches "supertux-unbundle-squirrel.patch"))))
(arguments
("boost" ,boost)
("freetype" ,freetype)
("squirrel" ,squirrel)))
- (native-inputs `(("pkg-config" ,pkg-config)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
(synopsis "2D platformer game")
- (description "SuperTux is a free classic 2D jump'n run sidescroller game
-in a style similar to the original Super Mario games covered under
-the GNU GPL.")
+ (description "SuperTux is a classic 2D jump'n run sidescroller game in
+a style similar to the original Super Mario games.")
(home-page "https://supertux.org/")
(license license:gpl3+)))
(define-public tintin++
(package
(name "tintin++")
- (version "2.01.7")
+ (version "2.02.00")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/tintin/TinTin++ Source Code/"
- (version-major+minor version)
+ (string-drop-right version 1)
"/tintin-" version ".tar.gz"))
(sha256
(base32
- "033n84pyxml3n3gd4dq0497n9w331bnrr1gppwipz9ashmq8jz7v"))))
+ "02qmbhzhh2sdy5b37v54gihs9k4bxmlz3j96gyx7icvx2grkbg5i"))))
(inputs
`(("gnutls" ,gnutls)
("pcre" ,pcre)
(chdir "src")
#t)))))
(build-system gnu-build-system)
- (home-page "http://tintin.sourceforge.net/")
+ (home-page "https://tintin.mudhalla.net/")
(synopsis "MUD client")
(description
"TinTin++ is a MUD client which supports MCCP (Mud Client Compression
Protocol), MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET
options used by MUDs, as well as those required to login via telnet on
Linux / Mac OS X servers, and an auto mapper with a VT100 map display.")
- (license license:gpl2+)))
+ (license license:gpl3+)))
(define-public laby
(package
(define-public freeciv
(package
(name "freeciv")
- (version "2.6.0")
+ (version "2.6.1")
(source
(origin
(method url-fetch)
(version-major+minor version) "/" version
"/freeciv-" version ".tar.bz2")))
(sha256
- (base32
- "16f9wsnn7073s6chzbm3819swd0iw019p9nrzr3diiynk28kj83w"))))
+ (base32 "1qmrhrwm0ryvsh1zsxcxj128lhyvaxap7k39sam3hh8rl0fq9rnc"))))
(build-system gnu-build-system)
(inputs
`(("curl" ,curl)
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://www.freeciv.org/")
- (synopsis "Turn based empire building strategy game")
- (description "Freeciv is a turn based empire building strategy game
+ (synopsis "Turn-based empire building strategy game")
+ (description "Freeciv is a turn-based empire building strategy game
inspired by the history of human civilization. The game commences in
prehistory and your mission is to lead your tribe from the Stone Age
-to the Space Age.")
+into the Space Age.")
(license license:gpl2+)))
(define-public no-more-secrets
(define-public teeworlds
(package
(name "teeworlds")
- (version "0.7.2")
+ (version "0.7.4")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "15l988qcsqgb6rjais0qd5sd2rjanm2708jmzvkariqzz0d6pb93"))
+ "1lxdb1k2cdj2421vyz1z0ximzfnpkh2y4y84zpn2gqsa1nzwbryb"))
(modules '((guix build utils)
(ice-9 ftw)
(ice-9 regex)
(cut string-append base-dir <>))
(remove (cut string-match "(^.)|(^md5$)" <>)
(scandir base-dir)))
- #t))
- (patches
- (search-patches "teeworlds-use-latest-wavpack.patch"))))
+ #t))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests included
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
- ;; The bundled json-parser uses an old API.
- ;; To use the latest non-bundled version, we need to pass the
- ;; length of the data in all 'json_parse_ex' calls.
- (define (use-latest-json-parser file)
- (substitute* file
- (("engine/external/json-parser/json\\.h")
- "json-parser/json.h")
- (("json_parse_ex\\(&JsonSettings, pFileData, aError\\);")
- "json_parse_ex(&JsonSettings,
- pFileData,
- strlen(pFileData),
- aError);")))
-
;; Embed path to assets.
(substitute* "src/engine/shared/storage.cpp"
(("#define DATA_DIR.*")
(substitute* "src/engine/client/sound.cpp"
(("engine/external/wavpack/wavpack\\.h")
"wavpack/wavpack.h"))
- (for-each use-latest-json-parser
- '("src/game/client/components/countryflags.cpp"
- "src/game/client/components/menus_settings.cpp"
- "src/game/client/components/skins.cpp"
- "src/game/client/localization.cpp"
- "src/game/editor/auto_map.h"
- "src/game/editor/editor.cpp"))
#t))
(replace 'build
(lambda _
(let* ((arch ,(system->linux-architecture
(or (%current-target-system)
(%current-system))))
- (build (string-append "build/" arch "/release/"))
+ (build (string-append "build/" (if (string=? arch "i386")
+ "x86" arch)
+ "/release/"))
(data-built (string-append build "data/"))
(out (assoc-ref outputs "out"))
(bin (string-append out "/bin/"))
(define-public tome4
(package
(name "tome4")
- (version "1.6.4")
+ (version "1.6.6")
(synopsis "Single-player, RPG roguelike game set in the world of Eyal")
(source
(origin
version ".tar.bz2"))
(sha256
(base32
- "1hrh79aqmvwwd7idlr3lzpdpc9dgm1k5p7w2462chcjvd8vhfhb7"))
+ "1amx0y49scy9hq71wjvkdzvgclwa2g54vkv4bf40mxyp4pl0bq7m"))
(modules '((guix build utils)))
(snippet
'(begin
(wrapper (string-append bin "/" ,name)))
;; icon
(mkdir-p pixmaps)
- (system* unzip "-j"
- (string-append
- "game/engines/te4-" ,version ".teae")
- (string-append
- "data/gfx/" icon) "-d" 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)
(copy-recursively "game" (string-append data "/game"))
;; launcher
(mkdir-p applications)
- (with-output-to-file (string-append applications "/"
- ,name ".desktop")
- (lambda ()
- (display
- (string-append
- "[Desktop Entry]
-Name=ToME4
-Comment=" ,synopsis "\n"
-"Exec=" ,name "\n"
-"Icon=" icon "\n"
-"Terminal=false
-Type=Application
-Categories=Game;RolePlaying;\n")))))
+ (make-desktop-entry-file
+ (string-append applications "/" ,name ".desktop")
+ #:name "ToME4"
+ #:comment ,synopsis
+ #:exec ,name
+ #:icon icon
+ #:categories '("Game" "RolePlaying")))
#t)))))
(home-page "https://te4.org")
(description "Tales of Maj’Eyal (ToME) RPG, featuring tactical turn-based
(define-public quakespasm
(package
(name "quakespasm")
- (version "0.93.1")
+ (version "0.93.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/quakespasm/Source/quakespasm-"
version ".tgz"))
(sha256
- (base32
- "1bimv18f6rzhyjz78yvw2vqr5n0kdqbcqmq7cb3m951xgsxfcgpd"))))
+ (base32 "0qm0j5drybvvq8xadfyppkpk3rxqsxbywzm6iwsjwdf0iia3gss5"))))
(arguments
`(#:tests? #f
#:make-flags '("CC=gcc"
(define-public gzdoom
(package
(name "gzdoom")
- (version "3.7.2")
- (source (origin
- (method url-fetch)
- (uri
- (string-append "https://zdoom.org/files/gzdoom/src/gzdoom-src-g"
- version ".zip"))
- (sha256
- (base32
- "0182f160m8d0c3nywjw3dxvnz93xjs4cn8akx7137cha4s05wdq7"))
- (patches (search-patches "gzdoom-search-in-installed-share.patch"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- (delete-file-recursively "bzip2")
- (delete-file-recursively "game-music-emu")
- (delete-file-recursively "jpeg")
- (delete-file-recursively "zlib")
- #t))))
+ (version "4.3.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/coelckers/gzdoom.git")
+ (commit (string-append "g" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0i4hyg72z84fc6ca2ic9q82q5cbgrbd7bynl3kpkypxvyasq08wz"))
+ (patches (search-patches "gzdoom-search-in-installed-share.patch"
+ "gzdoom-find-system-libgme.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Remove some bundled libraries. XXX There are more, but removing
+ ;; them would require, at least, patching the build system.
+ (with-directory-excursion "libraries"
+ (delete-file-recursively "bzip2")
+ (delete-file-recursively "game-music-emu")
+ (delete-file-recursively "jpeg")
+ (delete-file-recursively "zlib"))
+ #t))))
(arguments
'(#:tests? #f
#:configure-flags
"-DCMAKE_CXX_FLAGS:="
"-DSHARE_DIR=\\\"" out "/share/\\\" "
"-DGUIX_OUT_PK3=\\\"" out "/share/games/doom\\\"")
- ;; look for libraries at buildtime instead of
- ;; dynamically finding them at runtime
+
+ ;; The build requires some extra convincing not to use the bundled
+ ;; libgme previously deleted in the soure snippet.
+ "-DFORCE_INTERNAL_GME=OFF"
+
+ ;; Link libraries at build time instead of loading them at run time.
"-DDYN_OPENAL=OFF"
"-DDYN_FLUIDSYNTH=OFF"
"-DDYN_GTK=OFF"
(string-append "COMMAND " (which "sh"))))
(substitute*
- "src/sound/mididevices/music_fluidsynth_mididevice.cpp"
+ "libraries/zmusic/mididevices/music_fluidsynth_mididevice.cpp"
(("/usr/share/sounds/sf2/FluidR3_GM.sf2")
(string-append fluid-3 "/share/soundfonts/FluidR3Mono_GM.sf3")))
(substitute*
- "src/sound/mididevices/music_timiditypp_mididevice.cpp"
+ "libraries/zmusic/mididevices/music_timiditypp_mididevice.cpp"
(("exename = \"timidity\"")
(string-append "exename = \"" timidity++ "/bin/timidity\"")))
#t))))))
(build-system cmake-build-system)
(inputs `(("bzip2" ,bzip2)
("fluid-3" ,fluid-3)
- ("fluidsynth" ,fluidsynth-1) ;XXX: try using 2.x when updating
+ ("fluidsynth" ,fluidsynth)
("gtk+3" ,gtk+)
("libgme" ,libgme)
("libjpeg" ,libjpeg)
(define-public odamex
(package
(name "odamex")
- (version "0.8.0")
+ (version "0.8.1")
(source
(origin
(method url-fetch)
"mirror://sourceforge/odamex/Odamex/" version "/"
"odamex-src-" version ".tar.gz"))
(sha256
- (base32
- "1sh6lqj7vsdmnqz17hw0b6vy7xx6dp41k2sdw99ympsfa2xd1d2j"))))
+ (base32 "1ywbqkfacc9fc5di3dn95y5ah2ys9i241j64q3f37a73x92llw1i"))))
(build-system cmake-build-system)
- (arguments `(#:tests? #f)) ; no tests.
+ (arguments `(#:tests? #f)) ; no tests
(inputs
`(("sdl" ,sdl)
("sdl-mixer" ,sdl-mixer)
(package
(inherit chocolate-doom)
(name "crispy-doom")
- (version "5.6.3")
+ (version "5.6.4")
(source (origin
(method git-fetch)
(uri (git-reference
(commit (string-append "crispy-doom-" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0f319979wqfgm4pvsa6y5clg30p55l441kmrr8db0p5smyv3x2s4"))))
+ (base32 "1ls4v2kpb7vi7xji5yqbmyc5lfkz497h1vvj9w86wkrw8k59hlg2"))))
(native-inputs
(append
(package-native-inputs chocolate-doom)
`(#:phases
(modify-phases %standard-phases
(replace 'bootstrap
- ;; the autogen.sh script in the source tree doesn't work
+ ;; The bundled autogen.sh script unconditionally runs ./configure.
(lambda _ (invoke "autoreconf" "-vif"))))))
(synopsis "Limit-removing enhanced-resolution Doom source port based on
Chocolate Doom")
original.")
(home-page "https://www.chocolate-doom.org/wiki/index.php/Crispy_Doom")))
+(define shlomif-cmake-modules
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://bitbucket.org/shlomif/shlomif-cmake-modules/"
+ "raw/c505713d7a7cda608f97f01577e5868a711b883e/"
+ "shlomif-cmake-modules/Shlomif_Common.cmake"))
+ (sha256
+ (base32 "0kx9s1qqhhzprp1w3b67xmsns0n0v506bg5hgrshxaxpy6lqiwb2"))))
+
+(define-public rinutils
+ (package
+ (name "rinutils")
+ (version "0.2.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/shlomif/rinutils.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1fpxyg86ggv0h7j8aarjjxrvwlj7jycd3bw066c0dwkq2fszxsf2"))))
+ (native-inputs
+ `(("perl" ,perl)
+ ;; The following is only needed for tests.
+ ("perl-file-find-object" ,perl-file-find-object)
+ ("perl-test-differences" ,perl-test-differences)
+ ("perl-class-xsaccessor" ,perl-class-xsaccessor)
+ ("perl-io-all" ,perl-io-all)
+ ("perl-test-runvalgrind" ,perl-test-runvalgrind)
+ ("cmake-rules" ,shlomif-cmake-modules)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("cmocka" ,cmocka)
+ ("perl-env-path", perl-env-path)
+ ("perl-inline" ,perl-inline)
+ ("perl-inline-c" ,perl-inline-c)
+ ("perl-string-shellquote" ,perl-string-shellquote)
+ ("perl-test-trailingspace" ,perl-test-trailingspace)
+ ("perl-file-find-object-rule" ,perl-file-find-object-rule)
+ ("perl-text-glob" ,perl-text-glob)
+ ("perl-number-compare" ,perl-number-compare)
+ ("perl-moo" ,perl-moo)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-build-env
+ (lambda* (#:key inputs #:allow-other-keys)
+ (use-modules (guix build utils))
+ (let* ((cmake-rules (assoc-ref inputs "cmake-rules")))
+ (copy-file cmake-rules
+ (string-append "cmake/"
+ (strip-store-file-name cmake-rules)))
+ #t)))
+ (replace 'check
+ (lambda _
+ (with-directory-excursion "../source"
+ (setenv "FCS_TEST_BUILD" "1")
+ (setenv "RINUTILS_TEST_BUILD" "1")
+ ;; TODO: Run tests after setting RINUTILS_TEST_TIDY to `1',
+ ;; which requires tidy-all.
+ ;; (setenv "RINUTILS_TEST_TIDY" "1")
+ (invoke "perl" "CI-testing/continuous-integration-testing.pl")))))))
+ (build-system cmake-build-system)
+ (home-page "https://www.shlomifish.org/open-source/projects/")
+ (synopsis "C11 / gnu11 utilities C library")
+ (description "This package provides C11 / gnu11 utilities C library")
+ (license license:expat)))
+
(define-public fortune-mod
(package
(name "fortune-mod")
- (version "2.6.2")
+ (version "2.12.0")
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "11xff87s8ifw2dqs90n0rjq0psv4i7ykybygmibsqjj7id3xxw4c"))))
+ "0laxgqsdg7kvpvvm1f54b94ga9r0cr9g3ffii8avg8fy65x6pzc9"))))
(build-system cmake-build-system)
(arguments
`(#:test-target "check"
("perl-class-xsaccessor" ,perl-class-xsaccessor)
("perl-io-all" ,perl-io-all)
("perl-test-runvalgrind" ,perl-test-runvalgrind)
- ("cmake-rules"
- ,(origin
- (method url-fetch)
- (uri (string-append "https://bitbucket.org/shlomif/shlomif-cmake-modules/"
- "raw/c505713d7a7cda608f97f01577e5868a711b883e/"
- "shlomif-cmake-modules/Shlomif_Common.cmake"))
- (sha256
- (base32 "0kx9s1qqhhzprp1w3b67xmsns0n0v506bg5hgrshxaxpy6lqiwb2"))))))
+ ("cmake-rules" ,shlomif-cmake-modules)
+ ("rinutils" ,rinutils)))
(home-page "http://www.shlomifish.org/open-source/projects/fortune-mod/")
(synopsis "The Fortune Cookie program from BSD games")
(description "Fortune is a command-line utility which displays a random
("gtk+" ,gtk+-2)
("jsoncpp" ,jsoncpp)
("libpng" ,libpng)
- ("libjpeg" ,libjpeg-8)
+ ("libjpeg" ,libjpeg-turbo)
("libmad" ,libmad)
("libogg" ,libogg)
("libva" ,libva)
(define-public harmonist
(package
(name "harmonist")
- (version "0.2")
+ (version "0.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "0hqy9kqwgirwkq1v3vj1hp9m93hjvdj4nxcfbjfvvwk2bbzri3s2"))))
+ "146wiyanag0zqj6fhyll2sw6sydnnll8mgxhhqf9sjqsl2rx4s5r"))))
(build-system go-build-system)
(arguments
'(#:import-path "git.tuxfamily.org/harmonist/harmonist"))
;; game, so we borrow SCUMMVM's.
(let ((apps (string-append out "/share/applications")))
(mkdir-p apps)
- (with-output-to-file (string-append apps "/drascula.desktop")
- (lambda _
- (format #t
- "[Desktop Entry]~@
- Name=Drascula: The Vampire Strikes Back~@
- GenericName=Drascula~@
- Exec=~a/bin/drascula~@
- Icon=~a/share/icons/hicolor/scalable/apps/scummvm.svg~@
- Categories=AdventureGame;Game;RolePlaying;~@
- Keywords=game;adventure;roleplaying;2D,fantasy;~@
- Comment=Classic 2D point and click adventure game~@
- Comment[de]=klassisches 2D-Abenteuerspiel in Zeigen-und-Klicken-Manier~@
- Comment[fr]=Jeux classique d'aventure pointer-et-cliquer en 2D~@
- Comment[it]=Gioco classico di avventura punta e clicca 2D~@
- Type=Application~%"
- out scummvm))))
+ (make-desktop-entry-file
+ (string-append apps "/drascula.desktop")
+ #:name "Drascula: The Vampire Strikes Back"
+ #:generic-name "Drascula"
+ #:exec (string-append out "/bin/drascula")
+ #:icon (string-append scummvm "/share/icons/hicolor/scalable/apps/scummvm.svg")
+ #:categories '("AdventureGame" "Game" "RolePlaying")
+ #:keywords '("game" "adventure" "roleplaying" "2D" "fantasy")
+ #:comment '((#f "Classic 2D point and click adventure game")
+ ("de" "Klassisches 2D-Abenteuerspiel in Zeigen-und-Klicken-Manier")
+ ("fr" "Jeu classique d'aventure pointer-et-cliquer en 2D")
+ ("it" "Gioco classico di avventura punta e clicca 2D"))))
#t))))
(native-inputs
`(("bash" ,bash)
"/src/ktuberling-" version ".tar.xz"))
(sha256
(base32 "1qdf4q6wjh1lnlqw5c8z4rpj9w5vbyjfri1dah6yjm3mwppbc12j"))))
- (properties `((tags . ("Desktop" "KDE" "Games"))))
(build-system qt-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
"/src/picmi-" version ".tar.xz"))
(sha256
(base32 "0z9mpmv49w914gqdx274brdzl6d1bz9j9nkvbwgmr3iq1ba49m3f"))))
- (properties `((tags . ("Desktop" "KDE" "Games"))))
(build-system qt-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
This package is part of the KDE games module.")
(license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kolf
+ (package
+ (name "kolf")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kolf-" version ".tar.xz"))
+ (sha256
+ (base32 "06sfd0llr5cc3zf1vrpcxgw9bm009ky7y8822kynic9ipcd4z1hw"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kio" ,kio)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("ktextwidgets" ,ktextwidgets)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Miniature golf game")
+ (description "Kolf is a miniature golf game for one to ten players. The
+game is played from an overhead view, with a short bar representing the golf
+club. Kolf features many different types of objects, such as water hazards,
+slopes, sand traps, and black holes (warps), among others.
+
+Features are:
+@itemize
+@item Single and Multi-player (up to ten players) modes
+@item High scores table
+@item Dynamic courses
+@item Third-party courses
+@item Course editor
+@end itemize
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
+
+(define-public libkmahjongg
+ (package
+ (name "libkmahjongg")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/"
+ version "/src/libkmahjongg-" version ".tar.xz"))
+ (sha256
+ (base32 "0rdimk11hrc8qrmiv26z0ddjzi1k6806c0rfskx4cwmildmh6zgx"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+ (inputs
+ `(("kauth" ,kauth)
+ ("kcompletion" ,kcompletion)
+ ;("kconfig" ,kconfig)
+ ("kcodecs" ,kcodecs)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("ki18n" ,ki18n)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("qtbase" ,qtbase)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Shared library for kmahjongg and kshisen")
+ (description "Shared library and common files for kmahjongg, kshisen and
+other Mah Jongg like games.")
+ (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
+
+(define-public kmahjongg
+ (package
+ (name "kmahjongg")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/"
+ version "/src/kmahjongg-" version ".tar.xz"))
+ (sha256
+ (base32 "08na845h0nhmfrszdmvfq5y1dy7kgbrlzjp0f5snvbbf7w44ci6p"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("kdeclarative" ,kdeclarative)
+ ("ki18n" ,ki18n)
+ ("knewstuff" ,knewstuff)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("libkmahjongg" ,libkmahjongg)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Tile laying patience")
+ (description "In KMahjongg the tiles are scrambled and staked on top of
+each other to resemble a certain shape. The player is then expected to remove
+all the tiles off the game board by locating each tile's matching pair.
+
+A variety of tile layouts are included, as well as an editor to create new
+layouts.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
+
+(define-public kshisen
+ (package
+ (name "kshisen")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/"
+ version "/src/kshisen-" version ".tar.xz"))
+ (sha256
+ (base32 "1bq5m48af4h5apfp3bfsp76nlpv6h5sc0gd544zv7cgpfznz1sds"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ;("perl" ,perl)
+ ;("pkg-config" ,pkg-config)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kauth" ,kauth)
+ ("kcompletion" ,kcompletion)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("libkmahjongg" ,libkmahjongg)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Shisen-Sho solitaire game")
+ (description "KShisen is a solitaire-like game played using the standard
+set of Mahjong tiles. Unlike Mahjong however, KShisen has only one layer of
+scrambled tiles
+
+This package is part of the KDE games module.")
+ (license license:gpl2+)))
+
+(define-public kajongg
+ (package
+ (name "kajongg")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/"
+ version "/src/kajongg-" version ".tar.xz"))
+ (sha256
+ (base32 "0ql6p5zifdpdf65r7ki9ml123azpwwk9x3x8r9ij6xhjnf7p7x6w"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ;("perl" ,perl)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("ki18n" ,ki18n)
+ ("libkmahjongg" ,libkmahjongg)
+ ("python" ,python)
+ ("qtbase" ,qtbase)
+ ("qtsvg" ,qtsvg)))
+ (propagated-inputs
+ `(("python-twisted" ,python-twisted)
+ ("python-pyqt" ,python-pyqt)))
+ ;; FIXME: Need to wrap PYTHONPATH
+ (home-page "https://games.kde.org/")
+ (synopsis "Classical Mah Jongg game for 4 players")
+ (description "Kajongg is the ancient Chinese board game for 4 players.
+
+If you are looking for the Mah Jongg solitaire please use the application
+kmahjongg.
+
+Kajongg can be used in two different ways: Scoring a manual game where you
+play as always and use Kajongg for the computation of scores and for
+bookkeeping. Or you can use Kajongg to play against any combination of other
+human players or computer players.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kbreakout
+ (package
+ (name "kbreakout")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kbreakout-" version ".tar.xz"))
+ (sha256
+ (base32 "0gwzx1z9mxrjlcjzglg8cxkyd6900whcar3b5j9laxxarc6xhj8w"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Breakout like game")
+ (description "KBreakout is similar to the classics breakout and xboing,
+featuring a number of added graphical enhancements and effects. You control a
+paddle at the bottom of the playing-field, and must destroy bricks at the top
+by bouncing balls against them.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kmines
+ (package
+ (name "kmines")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kmines-" version ".tar.xz"))
+ (sha256
+ (base32 "0ac3za36lh8hpx6mqfic9amwmzhzhzplm9hg3pw12gxl5a9mvfsf"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("ktextwidgets" ,ktextwidgets)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Classical mine sweeper game")
+ (description "KMines is a classic Minesweeper game. The idea is to
+uncover all the squares without blowing up any mines. When a mine is blown
+up, the game is over.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public konquest
+ (package
+ (name "konquest")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/"
+ version "/src/konquest-" version ".tar.xz"))
+ (sha256
+ (base32 "02gjxskhi10a1sqh3skcild8zria7wncz1a4sbz7ax1p851q76k1"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("kguiaddons" ,kguiaddons)
+ ("ki18n" ,ki18n)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Simple turn-based strategy game")
+ (description "Konquest is the KDE version of Gnu-Lactic Konquest. Players
+conquer other planets by sending ships to them. The goal is to build an
+interstellar empire and ultimately conquer all other player's planets. The
+game can be played with up to nine empires, commanded either by the computer
+or by puny earthlings.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kbounce
+ (package
+ (name "kbounce")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/"
+ version "/src/kbounce-" version ".tar.xz"))
+ (sha256
+ (base32 "02rfv0qzz5cmyfx8f56a45hbm9gsp6m3dcy8ajwx88rw5wpbrr11"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kio" ,kio)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Jezzball arcade game")
+ (description "KBounce is a single player arcade game with the elements of
+puzzle. It is played on a field, surrounded by wall, with two or more balls
+bouncing around within the walls. The object of the game is to build new
+walls to decrease the size of the active field.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
+
+(define-public kblocks
+ (package
+ (name "kblocks")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/"
+ version "/src/kblocks-" version ".tar.xz"))
+ (sha256
+ (base32 "0qrm0dihzhkxsq9l49ndzms802x6jn92vvabb2zf2q9z593m69cx"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Single player falling blocks puzzle game")
+ (description "KBlocks is the classic Tetris-like falling blocks game.
+
+The idea is to stack the falling blocks to create horizontal lines without any
+gaps. When a line is completed it is removed, and more space is available in
+the play area. When there is not enough space for blocks to fall, the game is
+over.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public ksudoku
+ (package
+ (name "ksudoku")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/"
+ version "/src/ksudoku-" version ".tar.xz"))
+ (sha256
+ (base32 "0rcscz91hilm7l3am5w02n0n8l7xhi4l0n4sskznh68kblw0ggw2"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("karchive", karchive)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kguiaddons" ,kguiaddons)
+ ("ki18n" ,ki18n)
+ ("kiconthemes" ,kiconthemes)
+ ("kio" ,kio)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("glu" ,glu)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Sudoku puzzle game and solver")
+ (description "KSudoku is a Sudoku game and solver, supporting a range of
+2D and 3D Sudoku variants. In addition to playing Sudoku, it can print Sudoku
+puzzle sheets and find the solution to any Sudoku puzzle.
+
+The word Sudoku means \"single number in an allotted place\" in Japanese.
+These are the basic rules: Every Sudoku is a square divided into 3x3
+subsquares with 3x3 cells each.
+
+Some cells are filled with a number at the beginning. The remaining ones are
+to be filled by the player using numbers from 1 to 9, without repeating a
+number twice on each column, row or subsquare (each of them must contain only
+one 1, one 2, one 3, and so on). The game requires logic and patience.
+Solving takes usually 10 to 30 minutes, depending on puzzle level, your skill
+and experience.
+
+The numerals in Sudoku puzzles are used for convenience (for example in 16x16
+board we use letters): arithmetic relationships between numbers are
+irrelevant.
+
+This program supports also 16x16 games with numbers from 1 to 16 and 256
+cells with 16 cols, rows and subsquares!
+
+More information at http://en.wikipedia.org/wiki/Sudoku
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public klines
+ (package
+ (name "klines")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/klines-" version ".tar.xz"))
+ (sha256
+ (base32 "1g1f46jp0rb8gpqkgcf915ydpsscn1sxk3gjvm8bcqgx9ddq59xa"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Place 5 equal pieces together, but wait, there are 3 new ones")
+ (description "KLines is a simple but highly addictive one player game.
+
+The player has to move the colored balls around the game board, gathering them
+into the lines of the same color by five. Once the line is complete it is
+removed from the board, therefore freeing precious space. In the same time
+the new balls keep arriving by three after each move, filling up the game
+board.
+
+KLines is a single-player game where the player removes colored balls from the
+board by arranging them into lines of five or more. However, every time the
+player moves a ball, three more balls are added to the board.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kgoldrunner
+ (package
+ (name "kgoldrunner")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version "/src/kgoldrunner-"
+ version ".tar.xz"))
+ (sha256
+ (base32 "16rcvq796r3asz4v4ap75xvwnxd3dd2nsq5r9vxvzl6rrf1w9bj4"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kio" ,kio)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Action and puzzle solving game")
+ (description "KGoldrunner is an action game where the hero runs through a
+maze, climbs stairs, dig holes and dodges enemies in order to collect all the
+gold nuggets and escape to the next level. Your enemies are also after the
+gold. Worse still, they are after you!.
+
+KGoldrunner is a fast-paced platform game where the player must navigate a
+maze while collecting gold nuggets and avoiding enemies. A variety of level
+packs are included, as well as an editor to create new levels.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kdiamond
+ (package
+ (name "kdiamond")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kdiamond-" version ".tar.xz"))
+ (sha256
+ (base32 "1v5yb9hb26lk277zhw8d37ks829yfqr5anzx1qhms44gca5kqhva"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion", kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("knotifications" ,knotifications)
+ ("knotifyconfig" ,knotifyconfig)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Three-in-a-row game")
+ (description "KDiamond is a three-in-a-row game like Bejeweled. It
+features unlimited fun with randomly generated games and five difficulty
+levels with varying number of diamond colors and board sizes.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kfourinline
+ (package
+ (name "kfourinline")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kfourinline-" version ".tar.xz"))
+ (sha256
+ (base32 "1vprs6dc1ccn3g6k594i9s94xy4b91vzlqjysyc6fqcq2fs54ny3"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdelibs4support" ,kdelibs4support)
+ ("kdnssd" ,kdnssd)
+ ("ki18n" ,ki18n)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Place 4 pieces in a row")
+ (description "KFourInLine is a board game for two players based on the
+Connect-Four game.
+
+KFourInLine is a game where two players take turns dropping pieces into a
+grid, the winner being the first to place four pieces in a line.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
+
+(define-public kblackbox
+ (package
+ (name "kblackbox")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kblackbox-" version ".tar.xz"))
+ (sha256
+ (base32 "1x42sfpf75c6mavwkc7g7dm11y9s5dpj8igphly5kvm0pajqby0n"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("karchive" ,karchive)
+ ("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("ktextwidgets" ,ktextwidgets)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Find atoms in a grid by shooting electrons")
+ (description "KBlackbox is a game of hide and seek played on a grid of
+boxes where the computer has hidden several balls. The position of the hidden
+balls can be deduced by shooting beams into the box
+
+KBlackBox is a game of hide and seek played on an grid of boxes, where the
+player shoots rays into the grid to deduce the positions of hidden objects.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public knetwalk
+ (package
+ (name "knetwalk")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/knetwalk-" version ".tar.xz"))
+ (sha256
+ (base32 "1i340salzgqdw8y33wrrydmpgx3pvwf5wrbljlh67cjf6s4csx7d"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("ktextwidgets" ,ktextwidgets)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Turn the board pieces to get all computers connected")
+ (description "KNetWalk is a small game where you have to build up a
+computer network by rotating the wires to connect the terminals to the server.
+When the network is build, a highscore-list comes up where competitions can be
+fought out.
+
+KNetwalk is a puzzle game where the player arranges sections of wire to
+connect all the computers on the board.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public bomber
+ (package
+ (name "bomber")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/bomber-" version ".tar.xz"))
+ (sha256
+ (base32 "1lvzd0mzgq25akvwvkm57l3plm65k731v2i1ahakn985bb5gc3is"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletiom" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Arcade bombing game")
+ (description "Bomber is a single player arcade game.
+
+The player is invading various cities in a plane that is decreasing in height.
+The goal of the game is to destroy all the buildings and advance to the next
+level. Each level gets a bit harder by increasing the speed of the plane and
+the height of the buildings.
+
+Bomber is a game where you fly a spaceship and attempt to bomb the buildings
+below you. Each pass the spaceship makes, it gets lower and lower. If you've
+not destroyed a building in your path, you will crash into it.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public granatier
+ (package
+ (name "granatier")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/granatier-" version ".tar.xz"))
+ (sha256
+ (base32 "141qmdinz7ikbbrs8dq6cap3nl22sl7pw62r80pf3xxwn2q4phpa"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("knewstuff" ,knewstuff)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Bomberman clone")
+ (description "Granatier is a clone of the classic Bomberman game,
+inspired by the work of the Clanbomber clone.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public ksirk
+ (package
+ (name "ksirk")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/ksirk-" version ".tar.xz"))
+ (sha256
+ (base32 "1b1wixs2hp5qnvdygfwa3kvy0kn94ysa4ifmx90q6r3yfr2lpfca"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcrash" ,kcrash)
+ ("ki18n" ,ki18n)
+ ("kiconthemes" ,kiconthemes)
+ ("kio" ,kio)
+ ("knewstuff" ,knewstuff)
+ ("kwallet" ,kwallet)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("phonon" ,phonon)
+ ("qca" ,qca)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)
+ ("zlib" ,zlib)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Computerized version of the well known strategy board game
+'Risk'")
+ (description "KsirK is a multi-player network-enabled game. The goal of
+the game is simply to conquer the world by attacking your neighbors with your
+armies.
+
+At the beginning of the game, countries are distributed to all the players.
+Each country contains one army represented by an infantryman. Each player has
+some armies to distribute to his countries. On each turn, each player can
+attack his neighbours, eventually conquering one or more countries. At the
+end of each turn, some bonus armies are distributed to the players in function
+of the number of countries they own. The winner is the player that conquered
+all the world.
+
+Features:
+@itemize
+@item Support for 1-6 human or computer players
+@item Multi-player gaming over a network
+@item You can easily create new skins with SVG graphics and the skin editor
+@item Hot New Stuff support. You can easily download and install new skins
+@end itemize
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
+
+(define-public palapeli
+ (package
+ (name "palapeli")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/palapeli-" version ".tar.xz"))
+ (sha256
+ (base32 "1g91ydbc0x2y2gn3lcb5w03mn7k78l5bq4cb1s59kx6yjbflv3pw"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("karchive" ,karchive)
+ ("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kcrash" ,kcrash)
+ ("ki18n" ,ki18n)
+ ("ki18n" ,ki18n)
+ ("kio" ,kio)
+ ("kitemviews" ,kitemviews)
+ ("knotifications" ,knotifications)
+ ("kservice" ,kservice)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)
+ ("shared-mime-info" ,shared-mime-info)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Jigsaw puzzle game")
+ (description "Palapeli is a jigsaw puzzle game. Unlike other games in
+that genre, you are not limited to aligning pieces on imaginary grids. The
+pieces are freely moveable. Also, Palapeli features real persistency, i.e.
+everything you do is saved on your disk immediately.
+
+Palapeli is the Finnish word for jigsaw puzzle.
+
+This package is part of the KDE games module.")
+ (license license:gpl2+)))
+
+(define-public kiriki
+ (package
+ (name "kiriki")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kiriki-" version ".tar.xz"))
+ (sha256
+ (base32 "1xg25dj95g81dc5l7k47am4j52abrwwfx4h73lvsbn4lc8lfmshw"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kiconthemes" ,kiconthemes)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Yahtzee dice game")
+ (description "Kiriki is an addictive and fun dice game, designed to be
+played by as many as six players.
+
+Participants have to collect points by rolling five dice for up to three times
+per single turn to make combinations with the highest score.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kigo
+ (package
+ (name "kigo")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kigo-" version ".tar.xz"))
+ (sha256
+ (base32 "00l5gcbi8xyj9c1lngkrddka3a4m4cd78prfplrpq32ma9xq681f"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kio" ,kio)
+ ("knewstuff", knewstuff)
+ ("ktextwidgets" ,ktextwidgets)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Go board game")
+ (description "Kigo is an open-source implementation of the popular Go
+game.
+
+Go is a strategic board game for two players. It is also known as
+igo (Japanese), weiqi or wei ch'i (Chinese) or baduk (Korean). Go is noted
+for being rich in strategic complexity despite its simple rules. The game is
+played by two players who alternately place black and white stones (playing
+pieces, now usually made of glass or plastic) on the vacant intersections of a
+grid of 19x19 lines (9x9 or 13x13 for easier games).
+
+You also need to install a go engine, e.g. @code{gnugo}.
+
+This package is part of the KDE games module.")
+ (license license:gpl3+)))
+
+(define-public kubrick
+ (package
+ (name "kubrick")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kubrick-" version ".tar.xz"))
+ (sha256
+ (base32 "0ma8wja4rqlsmsr8cyicfpkwlgqva4450ls4c0ql53p0kabf04gx"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("glu" ,glu)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("ki18n" ,ki18n)
+ ("kio" ,kio)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Game based on Rubik's Cube")
+ (description "Kubrick is a game based on the Rubik's Cube puzzle.
+
+The cube sizes range from 2x2x2 up to 6x6x6, or you can play with irregular
+\"bricks\" such as 5x3x2 or \"mats\" such as 6x4x1 or 2x2x1. The game has a
+selection of puzzles at several levels of difficulty, as well as demos of
+pretty patterns and solution moves, or you can make up your own puzzles. The
+game has unlimited undo, redo, save and reload capabilities.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public lskat
+ (package
+ (name "lskat")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/lskat-" version ".tar.xz"))
+ (sha256
+ (base32 "1qk5hd27zb42pbcxq5wyzz62nj5f0qdmgy54r9rnk92pzzzk94s9"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kguiaddons" ,kguiaddons)
+ ("ki18n" ,ki18n)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Lieutnant Skat card game")
+ (description "Lieutnant Skat (from German \"Offiziersskat\") is a fun and
+engaging card game for two players, where the second player is either live
+opponent, or a built in artificial intelligence.
+
+Lieutnant Skat is a simplified variant of the Skat card game for two players.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
+
+(define-public kapman
+ (package
+ (name "kapman")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kapman-" version ".tar.xz"))
+ (sha256
+ (base32 "03pq38caam30q4bw14c045kayw2d87xq1yaa3s2jkrylylfq3p0f"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Pac-Man clone")
+ (description "Kapman is a clone of the well known game Pac-Man.
+
+You must run through the maze to eat all pills without being captured by a
+ghost. By eating an energizer, Kapman gets the ability to eat ghosts for a
+few seconds. When a stage is cleared of pills and energizer the player is
+taken to the next stage with slightly increased game speed
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kspaceduel
+ (package
+ (name "kspaceduel")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kspaceduel-" version ".tar.xz"))
+ (sha256
+ (base32 "1hppni0ihs7psc0dly5rxyy2a38nzhlig9yfyhi3lkh36z05pql8"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Two player game with shooting spaceships flying around a sun")
+ (description "KSpaceduel is a space battle game for one or two players,
+where two ships fly around a star in a struggle to be the only survivor.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public bovo
+ (package
+ (name "bovo")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/bovo-" version ".tar.xz"))
+ (sha256
+ (base32 "0dbpng0w52nahmx7brsll66zw23ql1g6pcvn2k4g2lnvxch0i59g"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Classic pen and paper game: five in a line")
+ (description "Bovo is a Gomoku (from Japanese 五目並べ - lit. \"five
+points\") like game for two players, where the opponents alternate in placing
+their respective pictogram on the game board. The winner is the first to
+complete a line of five markers. (Also known as: Connect Five, Five in a row,
+X and O, Naughts and Crosses)
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public killbots
+ (package
+ (name "killbots")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/killbots-" version ".tar.xz"))
+ (sha256
+ (base32 "1qi86q7diw7glkp9v33yim9nhz2da4balbxa1hjrdgjdv8zdbxbm"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Port of the classic BSD console game robots")
+ (description "Killbots is a simple game of evading killer robots.
+
+Who created the robots and why they have been programmed to destroy, no one
+knows. All that is known is that the robots are numerous and their sole
+objective is to destroy you. Fortunately for you, their creator has focused
+on quantity rather than quality and as a result the robots are severely
+lacking in intelligence. Your superior wit and a fancy teleportation device
+are your only weapons against the never-ending stream of mindless automatons.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public ksnakeduel
+ (package
+ (name "ksnakeduel")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/ksnakeduel-" version ".tar.xz"))
+ (sha256
+ (base32 "0mprrnpax8pv7ab36zwhvdfj8id52w8g6x76nnj8qvkdlkjiqdnn"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("kguiaddons" ,kguiaddons)
+ ("ki18n" ,ki18n)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Snake race played against the computer")
+ (description "KSnakeDuel is a fast action game where you steer a snake
+which has to eat food. While eating the snake grows. But once a player
+collides with the other snake or the wall the game is lost. This becomes of
+course more and more difficult the longer the snakes grow.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kollision
+ (package
+ (name "kollision")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kollision-" version ".tar.xz"))
+ (sha256
+ (base32 "1p7qrn3d0ybpvc9k6k5wzj54dsrp1rqh39844maz0ay2fhvmch12"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Simple ball dodging game")
+ (description "In Kollision you use mouse to control a small blue ball in a
+closed space environment filled with small red balls, which move about
+chaotically. Your goal is to avoid touching any of those red balls with your
+blue one, because the moment you do the game will be over. The longer you can
+stay in game the higher will your score be.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public knavalbattle
+ (package
+ (name "knavalbattle")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+"/src/knavalbattle-" version ".tar.xz"))
+ (sha256
+ (base32 "0sdfjplqkb30x2mvh66pkzay6vn5px87779sh2s8lpl6fcw0v9g4"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kauth" ,kauth)
+ ("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("kdnssd" ,kdnssd)
+ ("ki18n" ,ki18n)
+ ("ktextwidgets" ,ktextwidgets)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Battleship board game with built-in game server")
+ (description "KBattleship is a Battle Ship game for KDE.
+
+Ships are placed on a board which represents the sea. Players try to hit each
+others ships in turns without knowing where they are placed. The first player
+to destroy all ships wins the game.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public kreversi
+ (package
+ (name "kreversi")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+"/src/kreversi-" version ".tar.xz"))
+ (sha256
+ (base32 "0b6q8df2bawgnrswhq59z37axad0q3zpvvzxdds7sz1lw505xw9h"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("kdeclarative" ,kdeclarative)
+ ("ki18n" ,ki18n)
+ ("kiconthemes" ,kiconthemes)
+ ("kio" ,kio)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Old reversi board game, also known as othello")
+ (description "KReversi is a simple one player strategy game played
+against the computer.
+
+If a player's piece is captured by an opposing player, that piece is turned
+over to reveal the color of that player. A winner is declared when one player
+has more pieces of his own color on the board and there are no more possible
+moves.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public ksquares
+ (package
+ (name "ksquares")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/ksquares-" version ".tar.xz"))
+ (sha256
+ (base32 "0hv8hls5s627lys08nnw72rfzsafj3dmp49mh2afzmh6lgk9h5vy"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Dots and Boxes game")
+ (description "KSquares is an implementation of the popular paper based
+game Squares. Two players take turns connecting dots on a grid to complete
+squares, the player with the most squares wins.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
+
+(define-public kjumpingcube
+ (package
+ (name "kjumpingcube")
+ (version "19.08.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications/" version
+ "/src/kjumpingcube-" version ".tar.xz"))
+ (sha256
+ (base32 "0d67zqkf2xffjkj671gl2n6nj6jajyn6rgqqj5i6gm500mqi9rm1"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)))
+ (inputs
+ `(("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("ki18n" ,ki18n)
+ ("kio" ,kio)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libkdegames" ,libkdegames)
+ ("qtbase" ,qtbase)
+ ("qtdeclarative" ,qtdeclarative)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://games.kde.org/")
+ (synopsis "Simple tactical game for number-crunchers")
+ (description "KJumpingcube is a simple tactical game for one or two
+players, played on a grid of numbered squares. Each turn, players compete for
+control of the board by capturing or adding to one square.
+
+This package is part of the KDE games module.")
+ (license (list license:gpl2+ license:fdl1.2+))))
+
+(define-public xmoto
+ (package
+ (name "xmoto")
+ (version "0.5.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://download.tuxfamily.org/xmoto/xmoto/" version "/"
+ "xmoto-" version "-src.tar.gz"))
+ (sha256
+ (base32 "1ci6r8zd0l7z28cy92ddf9dmqbdqwinz2y1cny34c61b57wsd155"))
+ (patches
+ (search-patches
+ "xmoto-remove-glext.patch" ;fixes licensing issue
+ "xmoto-reproducible.patch"
+ "xmoto-utf8.patch"))
+ ;; Unbundle ODE.
+ (modules '((guix build utils)))
+ (snippet
+ `(begin
+ (delete-file-recursively "src/ode")
+ #t))))
+ (build-system gnu-build-system)
+ (arguments
+ ;; XXX: First flag prevents a build error with GCC7+. The second
+ ;; flag works around missing text in game. Both are fixed
+ ;; upstream. Remove once xmoto 0.5.12+ is released.
+ `(#:make-flags '("CXXFLAGS=-fpermissive -D_GLIBCXX_USE_CXX11_ABI=0")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-desktop-file
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (apps (string-append out "/share/applications"))
+ (pixmaps (string-append out "/share/pixmaps")))
+ (install-file "extra/xmoto.desktop" apps)
+ (install-file "extra/xmoto.xpm" pixmaps)
+ #t)))
+ (add-after 'install-desktop-file 'install-fonts
+ (lambda* (#:key outputs inputs #:allow-other-keys)
+ (let ((font-dir (string-append (assoc-ref inputs "font-dejavu")
+ "/share/fonts/truetype/"))
+ (target-dir (string-append (assoc-ref outputs "out")
+ "/share/xmoto/Textures/Fonts/")))
+ (for-each (lambda (f)
+ (let ((font (string-append font-dir f))
+ (target (string-append target-dir f)))
+ (delete-file target)
+ (symlink font target)))
+ '("DejaVuSans.ttf" "DejaVuSansMono.ttf"))
+ #t)))
+ (add-after 'install-fonts 'install-man-page
+ (lambda* (#:key outputs #:allow-other-keys)
+ (install-file "xmoto.6"
+ (string-append (assoc-ref outputs "out")
+ "/share/man/man6"))
+ #t)))))
+ (native-inputs
+ `(("gettext" ,gettext-minimal)))
+ (inputs
+ `(("curl" ,curl)
+ ("font-dejavu" ,font-dejavu)
+ ("glu" ,glu)
+ ("libjpeg" ,libjpeg)
+ ("libpng" ,libpng)
+ ("libxdg-basedir" ,libxdg-basedir)
+ ("libxml2" ,libxml2)
+ ("lua" ,lua-5.2)
+ ("ode" ,ode)
+ ("sdl" ,(sdl-union (list sdl sdl-mixer sdl-net sdl-ttf)))
+ ("sqlite" ,sqlite)
+ ("zlib" ,zlib)))
+ (home-page "https://xmoto.tuxfamily.org/")
+ (synopsis "2D motocross platform game")
+ (description "X-Moto is a challenging 2D motocross platform game, where
+physics play an all important role in the gameplay. You need to control your
+bike to its limit, if you want to have a chance finishing the more difficult
+challenges.")
+ (license (list license:gpl2+ ;whole project
+ license:bsd-4 ;src/bzip
+ license:bsd-3 ;src/md5sum
+ license:lgpl2.1+ ;src/iqsort.h
+ license:expat))))