diff options
author | Leo Prikler <leo.prikler@student.tugraz.at> | 2021-08-30 17:27:25 +0200 |
---|---|---|
committer | Leo Prikler <leo.prikler@student.tugraz.at> | 2021-08-31 23:20:09 +0200 |
commit | bca5d7dbb0fc919f954a8fe5f6236c0a89e451bd (patch) | |
tree | 8ff29db2c033fa9db4c9f33af714f8733b09c694 /gnu | |
parent | 4abf2268338f34fc85a24e14a3bbcc6803fa0e82 (diff) | |
download | guix-bca5d7dbb0fc919f954a8fe5f6236c0a89e451bd.tar.gz guix-bca5d7dbb0fc919f954a8fe5f6236c0a89e451bd.zip |
gnu: Add python-pyxel.
* gnu/packages/game-development.scm (python-pyxel): New variable.
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/game-development.scm | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 2a58848dce..40807450ea 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1484,6 +1484,57 @@ visual novels, while its Python scripting is enough for complex simulation games.") (license license:expat))) +(define-public python-pyxel + (package + (name "python-pyxel") + (version "1.4.3") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/kitao/pyxel") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0bwsgb5yq5s479cnf046v379zsn5ybp5195kbfvzr9l11qbaicm9")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "pyxel/core/bin"))))) + (build-system python-build-system) + (arguments + `(#:tests? #f ; "Tests" are actually example programs that never halt. + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-build-files + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "setup.py" + (("\"pyxel\\.core\\.bin\\.(.*)\"," all arch) + (if (string=? arch "linux") + all + ""))) + (substitute* "pyxel/core/Makefile" + (("`sdl2-config") + (string-append "`sdl2-config --prefix=" + (assoc-ref inputs "sdl2")))))) + (add-before 'build 'prebuild + (lambda _ + (invoke "make" "-C" "pyxel/core")))))) + (inputs + `(("gifsicle" ,gifsicle) + ("sdl2" ,(sdl-union (list sdl2 sdl2-image))))) + (native-inputs + `(("gcc" ,gcc-10))) ; for std::filesystem + (home-page "https://github.com/kitao/pyxel") + (synopsis "Retro game engine for Python") + (description "Pyxel is a game engine inspired by retro gaming consoles. +It has a fixed 16-color palette, can hold up to 3 image banks and 8 tilemaps +(256x256 pixels each) and 4 sound channels with 64 definable sounds. It +also comes with a built-in image and sound editor.") + (license license:expat))) + (define-public grafx2 (package (name "grafx2") |