diff options
Diffstat (limited to 'gnu/packages/game-development.scm')
-rw-r--r-- | gnu/packages/game-development.scm | 148 |
1 files changed, 140 insertions, 8 deletions
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 95f8697b42..9916a1cb3e 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -5,11 +5,13 @@ ;;; Copyright © 2015 Alex Kost <alezost@gmail.com> ;;; Copyright © 2015, 2016, 2017 David Thompson <davet@gnu.org> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2016, 2017 Kei Kebreau <kei@openmailbox.org> +;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017 Julian Graham <joolean@gmail.com> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> +;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com> +;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -73,7 +75,8 @@ #:use-module (gnu packages xiph) #:use-module (gnu packages lua) #:use-module (gnu packages mp3) - #:use-module (gnu packages xml)) + #:use-module (gnu packages xml) + #:use-module (gnu packages tls)) (define-public bullet (package @@ -190,6 +193,31 @@ necessary. ;; The MD5 implementation contained in GRFID is under the zlib license. (license (list license:gpl2 license:gpl2+ license:zlib)))) +(define-public catcodec + (package + (name "catcodec") + (version "1.0.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://binaries.openttd.org/extra/catcodec/" + version "/catcodec-" version "-source.tar.xz")) + (sha256 + (base32 + "1qg0c2i4p29sxj0q6qp2jynlrzm5pphz2xhcjqlxa69ycrnlxzs7")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:make-flags (list (string-append "prefix=" %output)) + #:phases (modify-phases %standard-phases + (delete 'configure)))) + (home-page "http://dev.openttdcoop.org/projects/catcodec") + (synopsis "Encode/decode OpenTTD sounds") + (description "catcodec encodes and decodes sounds for OpenTTD. These +sounds are not much more than some metadata (description and filename) and raw +PCM data.") + (license license:gpl2))) + (define-public gzochi (package (name "gzochi") @@ -248,14 +276,14 @@ files) into @file{.grf} and/or @file{.nfo} files.") (define-public python-sge-pygame (package (name "python-sge-pygame") - (version "1.5") + (version "1.5.1") (source (origin (method url-fetch) (uri (pypi-uri "sge-pygame" version)) (sha256 (base32 - "0g0n722md6nfayiqzadwf0dh821hzqv0alp4by0vjfwr1xzv49mc")))) + "1rl3xjzh78sl0sq3xl8rl7cgp9v9v3h7s2pfwn7nj1vrmffzkcpd")))) (build-system python-build-system) (propagated-inputs `(("python-pygame" ,python-pygame) @@ -276,7 +304,7 @@ possible, and it also makes the SGE easy to learn.") (define-public python-tmx (package (name "python-tmx") - (version "1.9.1") + (version "1.10") (source (origin (method url-fetch) @@ -285,7 +313,7 @@ possible, and it also makes the SGE easy to learn.") version ".tar.gz")) (sha256 (base32 - "1is107sx3lr09dqjiyn10xqhyv5x54c2ryhys9mb9j3mxjbm227l")))) + "073q0prg1nzlkga2b45vhscz374206qh4x68ccg00mxxwagn64z0")))) (build-system python-build-system) (propagated-inputs `(("python-six" ,python-six))) @@ -353,7 +381,7 @@ support.") (define-public tiled (package (name "tiled") - (version "1.0.2") + (version "1.0.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/bjorn/tiled/archive/v" @@ -361,7 +389,7 @@ support.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "134xi74xajh38rj1qhmc4x1zmncfdmqb01axnkxh6zs3qz0rxp93")))) + "1qj7l34y5zv2iazmwbix8wdpp88zv7fswbc4arqpp1wak2yna1ix")))) (build-system gnu-build-system) (inputs `(("qtbase" ,qtbase) @@ -1019,3 +1047,107 @@ with its own editor, called OpenMW-CS which allows the user to edit or create their own original games.") (home-page "https://openmw.org") (license license:gpl3))) + +(define-public godot + (package + (name "godot") + (version "2.1.4") + (source (origin + (method url-fetch) + (uri + (string-append "https://github.com/godotengine/godot/archive/" + version "-stable.tar.gz")) + (file-name (string-append name "-" version)) + (sha256 + (base32 "1mz89nafc1m7srbqvy7iagxrxmqvf5hbqi7i0lwaapkx6q0kpkq7")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; There are no tests + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'unpack 'scons-use-env + (lambda _ + ;; Scons does not use the environment variables by default, + ;; but this substitution makes it do so. + (substitute* "SConstruct" + (("env_base = Environment\\(tools=custom_tools\\)") + (string-append + "env_base = Environment(tools=custom_tools)\n" + "env_base = Environment(ENV=os.environ)"))) + #t)) + (replace 'build + (lambda _ + (zero? (system* + "scons" + "platform=x11" + ;; Avoid using many of the bundled libs. + ;; Note: These options can be found in the SConstruct file. + "builtin_freetype=no" + "builtin_glew=no" + "builtin_libmpdec=no" + "builtin_libogg=no" + "builtin_libpng=no" + "builtin_libtheora=no" + "builtin_libvorbis=no" + "builtin_libwebp=no" + "builtin_openssl=no" + "builtin_opus=no" + "builtin_zlib=no")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (with-directory-excursion "bin" + (if (file-exists? "godot.x11.tools.64") + (rename-file "godot.x11.tools.64" "godot") + (rename-file "godot.x11.tools.32" "godot")) + (install-file "godot" bin))))) + (add-after 'install 'install-godot-desktop + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (desktop (string-append out "/share/applications")) + (icon-dir (string-append out "/share/pixmaps"))) + (mkdir-p desktop) + (mkdir-p icon-dir) + (rename-file "icon.png" "godot.png") + (install-file "godot.png" icon-dir) + (with-output-to-file + (string-append desktop "/godot.desktop") + (lambda _ + (format #t + "[Desktop Entry]~@ + Name=godot~@ + Comment=The godot game engine~@ + Exec=~a/bin/godot~@ + TryExec=~@*~a/bin/godot~@ + Icon=godot~@ + Type=Application~%" + out))) + #t)))))) + (native-inputs `(("pkg-config" ,pkg-config) + ("scons" ,scons))) + (inputs `(("alsa-lib" ,alsa-lib) + ("freetype" ,freetype) + ("glew" ,glew) + ("glu" ,glu) + ("libtheora" ,libtheora) + ("libvorbis" ,libvorbis) + ("libwebp" ,libwebp) + ("libx11" ,libx11) + ("libxcursor" ,libxcursor) + ("libxinerama" ,libxinerama) + ("libxrandr" ,libxrandr) + ("mesa" ,mesa) + ("openssl" ,openssl) + ("opusfile" ,opusfile) + ("pulseaudio" ,pulseaudio) + ("python2" ,python-2))) + (home-page "https://godotengine.org/") + (synopsis "Advanced 2D and 3D game engine") + (description + "Godot is an advanced multi-platform game engine written in C++. If +features design tools such as a visual editor, can import 3D models and +provide high-quality 3D rendering, it contains an animation editor, and can be +scripted in a Python-like language.") + (license license:expat))) |