[PATCH 0/7] gnu: Add tuxemon.

  • Open
  • quality assurance status badge
Details
One participant
  • Adam Faiz
Owner
unassigned
Submitted by
Adam Faiz
Severity
normal
A
A
Adam Faiz wrote on 12 Nov 2023 18:02
(address . guix-patches@gnu.org)
0256321a-9049-d36e-dec5-55d2cdca8b96@disroot.org
From cfe1482480fa26ac9da818fa4b0669dd6017f99b Mon Sep 17 00:00:00 2001
Message-ID: <cover.1699806997.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 00:36:37 +0800
Subject: [PATCH 0/7] gnu: Add tuxemon.

This patch series adds Tuxemon, a monster RPG.

I got stuck packaging this for a long time because I didn't know
how to fix the packaging problems in python-pygame and tuxemon.

It turns out the fixes were simple, but I don't think they've been
sent upstream yet.

AwesomeAdam54321 (7):
gnu: Add python-neteria.
gnu: Add python-pyglet.
gnu: python-pygame: Update to 2.5.2.
gnu: Add python-pygame-menu.
gnu: Add python-pyscroll.
gnu: Add python-pytmx.
gnu: Add tuxemon.

gnu/packages/game-development.scm | 122 +++++++++++++++++++++++++++++-
gnu/packages/games.scm | 62 +++++++++++++++
2 files changed, 181 insertions(+), 3 deletions(-)


base-commit: b268842ec4808f5030f3bda95f52ff39dd88e3ad
--
2.41.0
A
A
Adam Faiz wrote on 12 Nov 2023 18:06
[PATCH 1/7] gnu: Add python-neteria.
(address . 67131@debbugs.gnu.org)
18258f0c-0e30-42cd-902a-7b37a0f67bf5@disroot.org
From 946366ee7f4e87a167eae7a4fc53cd6a35286edd Mon Sep 17 00:00:00 2001
Message-ID: <946366ee7f4e87a167eae7a4fc53cd6a35286edd.1699806997.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1699806997.git.adam.faiz@disroot.org>
References: <cover.1699806997.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 12 Nov 2023 16:16:40 +0800
Subject: [PATCH 1/7] gnu: Add python-neteria.

* gnu/packages/game-development.scm (python-neteria): New variable.
---
gnu/packages/game-development.scm | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index c4616877a1..abc7b35c25 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -488,6 +488,24 @@ (define-public python-nbt
and it's container the RegionFile.")
(license license:expat)))
+(define-public python-neteria
+ (package
+ (name "python-neteria")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "neteria" version))
+ (sha256
+ (base32 "1azlix80a6vns2i3z0bdbqk32kx8s2gjh2nvshab235fd9h85yv7"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-rsa))
+ (home-page "https://pypi.org/project/neteria/")
+ (synopsis "Simple game networking library")
+ (description
+ "This package is a game networking framework for Python.")
+ (license license:gpl3+)))
(define-public python-sge
(package
(name "python-sge")
--
2.41.0
A
A
Adam Faiz wrote on 12 Nov 2023 18:09
[PATCH 2/7] gnu: Add python-pyglet.
(address . 67131@debbugs.gnu.org)
e5e83231-03c4-f612-0180-2aa338a840f6@disroot.org
From 945f787ec2972b18ecc1da56e1362f484a2a355e Mon Sep 17 00:00:00 2001
Message-ID: <945f787ec2972b18ecc1da56e1362f484a2a355e.1699806997.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1699806997.git.adam.faiz@disroot.org>
References: <cover.1699806997.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 12 Nov 2023 17:26:04 +0800
Subject: [PATCH 2/7] gnu: Add python-pyglet.

* gnu/packages/game-development.scm (python-pyglet): New variable.
---
gnu/packages/game-development.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (37 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index abc7b35c25..1cf46464b9 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1395,6 +1395,30 @@ (define-public python-pygame
license:public-domain
license:lgpl2.1+))))
+(define-public python-pyglet
+ (package
+ (name "python-pyglet")
+ (version "2.0.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyglet" version ".zip"))
+ (sha256
+ (base32 "1jdraqr7i3bz64m7yvhcnn3av5mnavn13fp5vzmmnz6n7cdynar4"))))
+ (build-system pyproject-build-system)
+ (native-inputs (list unzip))
+ (arguments
+ ;; TypeError: don't know how to make test from:
+ ;; <pyglet._ModuleProxy object at 0x7ffff697df90>
+ (list #:tests? #f))
+ (home-page "http://pyglet.readthedocs.org/en/latest/")
+ (synopsis "Windowing and multimedia library")
+ (description "@code{pyglet} is a windowing and multimedia library for Python,
+intended for developing games and other visually rich applications.
+It supports windowing, user interface event handling, game controllers
+and joysticks, OpenGL graphics, loading images and videos, and playing sounds
+and music.")
+ (license license:bsd-3)))
(define-public python-pygame-sdl2
(let ((real-version "2.1.0")
(renpy-version "8.1.0"))
--
2.41.0
A
A
Adam Faiz wrote on 12 Nov 2023 18:10
[PATCH 3/7] gnu: python-pygame: Update to 2.5.2.
(address . 67131@debbugs.gnu.org)
88e732ff-4993-4039-9b30-f2cdb478012c@disroot.org
From 02d31d0842c19a62e16d849e012ed86db7888076 Mon Sep 17 00:00:00 2001
Message-ID: <02d31d0842c19a62e16d849e012ed86db7888076.1699806997.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1699806997.git.adam.faiz@disroot.org>
References: <cover.1699806997.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 12 Nov 2023 16:18:40 +0800
Subject: [PATCH 3/7] gnu: python-pygame: Update to 2.5.2.

* gnu/packages/game-development.scm (python-pygame): Update to 2.5.2.
[arguments]: Adapt the 'fix-build-config phase to the new version.
---
gnu/packages/game-development.scm | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)

Toggle diff (34 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 1cf46464b9..45d63b8cdf 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1328,13 +1328,13 @@ (define-public quesoglc
(define-public python-pygame
(package
(name "python-pygame")
- (version "2.1.2")
+ (version "2.5.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "pygame" version))
(sha256
(base32
- "0g6j79naab7583kymf1bgxc5l5c9h5laq887rmvh8vw8iyifrl6n"))))
+ "0jn2n70hmgr33yc6xzdi33cs5w7jnmgi44smyxfarrrrsnsrxf61"))))
(build-system python-build-system)
(arguments
(list
@@ -1348,7 +1348,10 @@ (define-public python-pygame
"origincdirs = os.environ['C_INCLUDE_PATH'].split(\":\")")
(("ORIGLIBDIRS") "LIBRARY_PATH")
(("incdirs = \\[\\]") "incdirs = origincdirs")
- (("libdirs = \\[\\]") "libdirs = origlibdirs"))))
+ (("libdirs = \\[\\]") "libdirs = origlibdirs")
+ (("sdl2-config") "pkg-config sdl2")
+ (("\\['sdl'\\]") "['sdl'], '--modversion'")
+ ((".dpkg-architecture.*,") ""))))
(add-after 'unpack 'fix-sdl2-headers
(lambda _
(substitute* "buildconfig/config_unix.py"
--
2.41.0
A
A
Adam Faiz wrote on 12 Nov 2023 18:11
[PATCH 4/7] gnu: Add python-pygame-menu.
(address . 67131@debbugs.gnu.org)
54a19a47-571d-cbcf-3dec-d9edf5295551@disroot.org
From 436ff79c2d5304b69d8d38be30fa909971fa0604 Mon Sep 17 00:00:00 2001
Message-ID: <436ff79c2d5304b69d8d38be30fa909971fa0604.1699806997.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1699806997.git.adam.faiz@disroot.org>
References: <cover.1699806997.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 12 Nov 2023 23:29:34 +0800
Subject: [PATCH 4/7] gnu: Add python-pygame-menu.

* gnu/packages/game-development.scm (python-pygame-menu): New variable.
---
gnu/packages/game-development.scm | 33 +++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)

Toggle diff (46 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 45d63b8cdf..c06fa7f916 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1422,6 +1422,39 @@ (define-public python-pyglet
and joysticks, OpenGL graphics, loading images and videos, and playing sounds
and music.")
(license license:bsd-3)))
+
+(define-public python-pygame-menu
+ (package
+ (name "python-pygame-menu")
+ (version "4.4.3")
+ (source
+ ;; Tests not included in release.
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/ppizarror/pygame-menu")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0s7w8z931iw9rzsaq9810lbrgba9i2qhkryf0y011njc6bxhf6w4"))))
+ (build-system python-build-system)
+ (arguments
+ ;; Some tests depend on having a mixer, and a few assertions fail
+ (list #:tests? #f))
+ (propagated-inputs (list python-pygame python-pyperclip
+ python-typing-extensions))
+ (native-inputs (list python-nose2))
+ (home-page "https://pygame-menu.readthedocs.io")
+ (synopsis "Menu for pygame")
+ (description
+ "Pygame-menu is a python-pygame library for creating menus and GUIs.
+It supports several widgets, such as buttons, color inputs, clock objects,
+drop selectors, frames, images, labels, selectors, tables, text inputs,
+color switches, and many more, with multiple options to customize.")
+ (license license:expat)))
+
(define-public python-pygame-sdl2
(let ((real-version "2.1.0")
(renpy-version "8.1.0"))
--
2.41.0
A
A
Adam Faiz wrote on 12 Nov 2023 18:12
[PATCH 5/7] gnu: Add python-pyscroll.
(address . 67131@debbugs.gnu.org)
b41a8845-dc08-ed66-d946-d2bbcaa8f497@disroot.org
From 678efa89885960e51109d8e0d4064d8657c9d4dc Mon Sep 17 00:00:00 2001
Message-ID: <678efa89885960e51109d8e0d4064d8657c9d4dc.1699806997.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1699806997.git.adam.faiz@disroot.org>
References: <cover.1699806997.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 12 Nov 2023 16:32:47 +0800
Subject: [PATCH 5/7] gnu: Add python-pyscroll.

* gnu/packages/game-development.scm (python-pyscroll): New variable.
---
gnu/packages/game-development.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index c06fa7f916..a463335cd2 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -506,6 +506,25 @@ (define-public python-neteria
(description
"This package is a game networking framework for Python.")
(license license:gpl3+)))
+
+(define-public python-pyscroll
+ (package
+ (name "python-pyscroll")
+ (version "2.31")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyscroll" version))
+ (sha256
+ (base32
+ "0w3c58mkkbsyvx9w9hwdizk20pbds800m7v9vg49ydw440dha0hr"))))
+ (build-system python-build-system)
+ (propagated-inputs (list python-pygame))
+ (home-page "https://github.com/bitcraft/pyscroll")
+ (synopsis "Fast scrolling maps library for pygame")
+ (description "@code{pyscroll} is a simple and fast module
+for animated scrolling maps for your new or existing game.")
+ (license license:lgpl3+)))
+
(define-public python-sge
(package
(name "python-sge")
--
2.41.0
A
A
Adam Faiz wrote on 12 Nov 2023 18:13
[PATCH 6/7] gnu: Add python-pytmx.
(address . 67131@debbugs.gnu.org)
eb284725-125f-9b80-2774-5f4d16146a86@disroot.org
From 3b441b8794e3aae6a0693cf856b080d513bbe600 Mon Sep 17 00:00:00 2001
Message-ID: <3b441b8794e3aae6a0693cf856b080d513bbe600.1699806997.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1699806997.git.adam.faiz@disroot.org>
References: <cover.1699806997.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 00:00:14 +0800
Subject: [PATCH 6/7] gnu: Add python-pytmx.

* gnu/packages/game-development.scm (python-pytmx): New variable.
---
gnu/packages/game-development.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index a463335cd2..ef51d5d452 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -548,6 +548,25 @@ (define-public python-sge
possible, and it also makes the SGE easy to learn.")
(license license:lgpl3+)))
+(define-public python-pytmx
+ (package
+ (name "python-pytmx")
+ (version "3.32")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "PyTMX" version))
+ (sha256
+ (base32
+ "1jh9b0pjqbjdv72v5047p5d769ic084g013njvky0zcfiwrxi3w5"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-pygame python-pysdl2 python-pyglet))
+ (home-page "https://github.com/bitcraft/PyTMX")
+ (synopsis "Python library to read Tiled Map Editor's TMX maps")
+ (description "@code{pytmx} is a map loader for python/pygame designed for games.
+It provides smart tile loading with a fast and efficient storage base.")
+ (license license:lgpl3+)))
+
(define-public python-tmx
(package
(name "python-tmx")
--
2.41.0
A
A
Adam Faiz wrote on 12 Nov 2023 18:14
[PATCH 7/7] gnu: Add tuxemon.
(address . 67131@debbugs.gnu.org)
5264c3d0-dfcc-165a-1b08-06eb088c3cf5@disroot.org
From cfe1482480fa26ac9da818fa4b0669dd6017f99b Mon Sep 17 00:00:00 2001
Message-ID: <cfe1482480fa26ac9da818fa4b0669dd6017f99b.1699806997.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1699806997.git.adam.faiz@disroot.org>
References: <cover.1699806997.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 12 Nov 2023 23:49:16 +0800
Subject: [PATCH 7/7] gnu: Add tuxemon.

* gnu/packages/games.scm (tuxemon): New variable.
---
gnu/packages/games.scm | 62 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 62 insertions(+)

Toggle diff (75 lines)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 18907be6ba..7a5c213f80 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5922,6 +5922,68 @@ (define-public chromium-bsu
;; by the Expat License.
(license (list license:clarified-artistic license:expat))))
+(define-public tuxemon
+ (let ((commit "068b9c44345a86e83b35383a2e372629214f51f3")
+ (revision "0"))
+ (package
+ (name "tuxemon")
+ (version (git-version "0.4.34" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Tuxemon/Tuxemon")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1nsq26zx355w0sr2rc74kv2gnllqgki9fc5rgdiqcgiqsksbrhfy"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "setup.py"
+ (("# build_translations..") "build_translations()")
+ (("tuxemon.core.locale") "tuxemon.locale"))
+ (substitute* "requirements.txt"
+ (("-ce") "") ; The pygame-ce fork isn't packaged in Guix
+ (("==") ">="))
+ (substitute* "tuxemon/constants/paths.py"
+ (("LIBDIR, ....,") "LIBDIR,"))))))
+ (build-system pyproject-build-system)
+ (propagated-inputs
+ (list python-babel
+ python-cbor
+ python-neteria
+ python-natsort
+ python-pygame
+ python-pyscroll
+ python-pytmx
+ python-pillow
+ python-prompt-toolkit
+ python-pydantic
+ python-pygame-menu
+ python-pyyaml
+ python-requests))
+ (arguments
+ (list #:tests? #f ; Some tests are outdated because of API changes
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'install-mods
+ (lambda _
+ (let ((site (string-append #$output "/lib/python"
+ #$(version-major+minor
+ (package-version python))
+ "/site-packages/tuxemon/mods")))
+ (mkdir-p site)
+ (copy-recursively "mods" site)))))))
+ (home-page "https://www.tuxemon.org/")
+ (synopsis "Monster-fighting RPG")
+ (description
+ "Tuxemon is a monster-fighting RPG.
+In the spirit of other clones like SuperTux and SuperTuxKart,
+Tuxemon aims to create a game with its own unique style
+that sets it apart from other monster fighting RPGs.")
+ (license license:gpl3+))))
+
(define-public tuxpaint
(package
(name "tuxpaint")
--
2.41.0
A
A
Adam Faiz wrote on 13 Nov 2023 05:03
[PATCH v1 1/7] gnu: Add python-neteria.
(address . 67131@debbugs.gnu.org)
5fe9e065-b060-f98e-11b7-48731cceb4e6@disroot.org
From c3534b088236ae688d64aa91046c24774ac259a6 Mon Sep 17 00:00:00 2001
Message-ID: <c3534b088236ae688d64aa91046c24774ac259a6.1699848118.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 12 Nov 2023 16:16:40 +0800
Subject: [PATCH v1 1/7] gnu: Add python-neteria.

* gnu/packages/game-development.scm (python-neteria): New variable.
---
gnu/packages/game-development.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (104 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index bc318dec52..f6e3a02dea 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -488,6 +488,25 @@ (define-public python-nbt
and it's container the RegionFile.")
(license license:expat)))
+(define-public python-neteria
+ (package
+ (name "python-neteria")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "neteria" version))
+ (sha256
+ (base32 "1azlix80a6vns2i3z0bdbqk32kx8s2gjh2nvshab235fd9h85yv7"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-rsa))
+ (home-page "https://pypi.org/project/neteria/")
+ (synopsis "Simple game networking library")
+ (description
+ "This package is a game networking framework for Python.")
+ (license license:gpl3+)))
+
(define-public python-sge
(package
(name "python-sge")

base-commit: 77386bdbfe6b0c649c05ab37f08051d1ab3e5074
prerequisite-patch-id: cda2ec73586d6ef39faed4e308dea626c809589a
prerequisite-patch-id: 2d22b04ed0bc0cc6c85c808b61d49a33bcaaa09a
prerequisite-patch-id: b9fa13611fb11dc7fe3795cad75c8f493472bfa4
prerequisite-patch-id: e851db072fad08b507e4568e5cc5e978ec37e488
prerequisite-patch-id: 69f19053d3985e098bb6d699cdfa05218138074b
prerequisite-patch-id: 8fbe5d4c1fd9af1303e5172d9c0a91d02d8b90e7
prerequisite-patch-id: 3ef7533cf54ffe315b9c4528009da4e91acb49f4
prerequisite-patch-id: 1bc01cc50326348aeabda41775163a97be17eeba
prerequisite-patch-id: d4c7c0c9ae9d805cb55bd44b3ac49d7ef2d7ea87
prerequisite-patch-id: d8efacb63f67f23ea485ce455cde9eb0d1500fa8
prerequisite-patch-id: 94c3f9d52e643f01a2a9af0796f31b76e6203b3c
prerequisite-patch-id: 325387e07982e0acb0b553ea6d711cdfcc818b99
prerequisite-patch-id: ab198aa8e899340a33ebfe3351cb8a1ae0b6d3e9
prerequisite-patch-id: 7e87a8a70d7beca06722039138d8ed269e9f9c06
prerequisite-patch-id: 7f235a69b487e800df821edd5e3de7a583fc10b5
prerequisite-patch-id: eb82e91f919bb590df8f7594c1eeda49cc486aee
prerequisite-patch-id: 2ae318efb71263e4729f416941de12b602f65657
prerequisite-patch-id: cead32b303c0940848ea1c674010a9cf9deaa99b
prerequisite-patch-id: 5f3caa118dd334fbff161d7707f2c25d3b90761f
prerequisite-patch-id: 6594f2a0c777c23a41961e46a5631e7f919100b9
prerequisite-patch-id: c027e2daf0d3f02a500ac4acbccdfc5afbecc94c
prerequisite-patch-id: 76c5301e062ffb74e1984035dff3fc84b5a7c60f
prerequisite-patch-id: 024e60bc158285e0138d9d75f1559fdc6060ed41
prerequisite-patch-id: 68830157b938b6bec5ab1e8b84da7785f9ddfe18
prerequisite-patch-id: 2a2c22c593d4e8639b875bad5117c517d21d3d38
prerequisite-patch-id: b193520276af5548016e5ecf09458c2ceae819fe
prerequisite-patch-id: aabcbe7c88dba7324ef788e839a512fa70555770
prerequisite-patch-id: 8db19350da80b519507190b7d78e5bd08b12f36f
prerequisite-patch-id: 27503579f8bdfadb95847b8dd5bf3732f5149cfb
prerequisite-patch-id: ebaa3179543385a847dc65334cff8ddd1b46da3a
prerequisite-patch-id: 14e768a59ec3b0783918879f1160115f3f489140
prerequisite-patch-id: 15edcd72b565f696ed813c3c225d8220056445dc
prerequisite-patch-id: c805af9b720aa71defb952e9cedb035818f0e58b
prerequisite-patch-id: 9b44ed514b15414d8f326043d4d4d616c946a30f
prerequisite-patch-id: d796918632b60f4148b771ab8ee1b525674ec214
prerequisite-patch-id: 99cf3a7034251c7b37a9f4ba645ce2b85e86dc3b
prerequisite-patch-id: fe15935e0161b121b613dfd5cabd4483d2410b3f
prerequisite-patch-id: bdedcae94978bb7a7829c1d287caa2ce0d4ace5d
prerequisite-patch-id: 059809b461b184e0e37b93ee25ea2d1d1b40ac79
prerequisite-patch-id: c9444b6bb6b629a5c2c0af9ca41a32fc2011d0ee
prerequisite-patch-id: 0721804abd4a8abbdb2e16f5199de865f9d0c203
prerequisite-patch-id: 2b8ed9a6b236ae0fca1e4f160b8828a4fe7a26bf
prerequisite-patch-id: c3590f35cd5c26409fadf1bb6458d4c2c234148e
prerequisite-patch-id: 9ea84ba795bdf46a6b3a15ee5775f1ef737c3d50
prerequisite-patch-id: 50f6d18de83380ff58ac60bdadea8c579828d422
prerequisite-patch-id: 110e6dd16e018ed6cea7df2783057a2e3b178c12
prerequisite-patch-id: bbbdd977522935e6d9aa555b3ed14d888bf73dff
prerequisite-patch-id: 677d15ee757177d8bd34b6c3d480a4e2396c9f46
prerequisite-patch-id: 6b38ad9a7bb938e87033f49916b69e78a852d8f0
prerequisite-patch-id: 7d771bf7e9261fbc302dd115bd6386d49ea895ef
prerequisite-patch-id: c4ac9041f89b9d475212a24b0340541a91b0f85a
prerequisite-patch-id: 22248683740856c5ed7f3f6ace18d2df75ea0a7c
prerequisite-patch-id: 96550ceba55ca7c10ff62437c6ff36cf3cdd20d0
prerequisite-patch-id: 939cdc126f062ba1dda1b58482723c69aeaecc72
prerequisite-patch-id: 157cede08043e7d263d1eef01a71e83bfaca5cf0
prerequisite-patch-id: c465af0a4e23f343178c23a540884bc635b80e35
prerequisite-patch-id: fc5e2464f5f2f42411429f775ee0bd10dd59ec08
prerequisite-patch-id: 59c45858c8e8e52fa29c7ee948ed695137de2b5c
prerequisite-patch-id: dda1c6fb5c655e6f67602ef9d30c1a0ffd7e534f
prerequisite-patch-id: 298bc76cece3c71b0d8be968b62ce50208014de5
prerequisite-patch-id: 72d733289aab13119b1ab11c037416abbd4db3a1
prerequisite-patch-id: 0d98ba85d75ba48f7f37cee9beb97eef17f5e636
prerequisite-patch-id: d97e61cd8d47d445bc0414bad3afdf873c93d3c2
prerequisite-patch-id: 3452cb340a250524d77d833c094a0c28d1d67bff
prerequisite-patch-id: 0c59c6ec270ef6e74aadbacd38524fa3cd34f274
prerequisite-patch-id: b2efccb3578a6601234a9b483393a472de9921ee
prerequisite-patch-id: 776787b2bc2b36563cbbeb14a6e684adf0c8b3ed
prerequisite-patch-id: d3b8fcf888673a9dc1639d049659e2d48295df7a
prerequisite-patch-id: 0d3dd5d76b10e586824b9b3fdb2f603145ffe551
prerequisite-patch-id: 532f107492bc59a7679164a31e43957d5c863199
--
2.41.0
A
A
Adam Faiz wrote on 13 Nov 2023 05:06
[PATCH v2 1/7] gnu: Add python-neteria.
(address . 67131@debbugs.gnu.org)
77f9d5f0-b014-4f53-c2ad-88d7aba2e272@disroot.org
From c3534b088236ae688d64aa91046c24774ac259a6 Mon Sep 17 00:00:00 2001
Message-ID: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 12 Nov 2023 16:16:40 +0800
Subject: [PATCH v2 1/7] gnu: Add python-neteria.

* gnu/packages/game-development.scm (python-neteria): New variable.
---
gnu/packages/game-development.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index bc318dec52..f6e3a02dea 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -488,6 +488,25 @@ (define-public python-nbt
and it's container the RegionFile.")
(license license:expat)))
+(define-public python-neteria
+ (package
+ (name "python-neteria")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "neteria" version))
+ (sha256
+ (base32 "1azlix80a6vns2i3z0bdbqk32kx8s2gjh2nvshab235fd9h85yv7"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-rsa))
+ (home-page "https://pypi.org/project/neteria/")
+ (synopsis "Simple game networking library")
+ (description
+ "This package is a game networking framework for Python.")
+ (license license:gpl3+)))
+
(define-public python-sge
(package
(name "python-sge")

base-commit: 77386bdbfe6b0c649c05ab37f08051d1ab3e5074
--
2.41.0
A
A
Adam Faiz wrote on 13 Nov 2023 05:08
[PATCH v2 2/7] gnu: Add python-pyglet.
(address . 67131@debbugs.gnu.org)
cb6eeb83-1e71-b666-cda2-46966ae802ab@disroot.org
From 52e19861814837d58440cf628c4948a1df170146 Mon Sep 17 00:00:00 2001
Message-ID: <52e19861814837d58440cf628c4948a1df170146.1699848337.git.adam.faiz@disroot.org>
In-Reply-To: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
References: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:39:22 +0800
Subject: [PATCH v2 2/7] gnu: Add python-pyglet.

* gnu/packages/game-development.scm (python-pyglet): New variable.
---
gnu/packages/game-development.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index f6e3a02dea..f54b629f90 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1396,6 +1396,31 @@ (define-public python-pygame
license:public-domain
license:lgpl2.1+))))
+(define-public python-pyglet
+ (package
+ (name "python-pyglet")
+ (version "2.0.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyglet" version ".zip"))
+ (sha256
+ (base32 "1jdraqr7i3bz64m7yvhcnn3av5mnavn13fp5vzmmnz6n7cdynar4"))))
+ (build-system pyproject-build-system)
+ (native-inputs (list unzip))
+ (arguments
+ ;; TypeError: don't know how to make test from:
+ ;; <pyglet._ModuleProxy object at 0x7ffff697df90>
+ (list #:tests? #f))
+ (home-page "http://pyglet.readthedocs.org/en/latest/")
+ (synopsis "Windowing and multimedia library")
+ (description "@code{pyglet} is a windowing and multimedia library for Python,
+intended for developing games and other visually rich applications.
+It supports windowing, user interface event handling, game controllers
+and joysticks, OpenGL graphics, loading images and videos, and playing sounds
+and music.")
+ (license license:bsd-3)))
+
(define-public python-pygame-sdl2
(let ((real-version "2.1.0")
(renpy-version "8.1.0"))
--
2.41.0
A
A
Adam Faiz wrote on 13 Nov 2023 05:09
[PATCH v2 3/7] gnu: python-pygame: Update to 2.5.2.
(address . 67131@debbugs.gnu.org)
9fc61fe1-8619-f228-7d6d-a134c06d242d@disroot.org
From 2ea54bea5266a8f61793934fe4083d2c28a15835 Mon Sep 17 00:00:00 2001
Message-ID: <2ea54bea5266a8f61793934fe4083d2c28a15835.1699848337.git.adam.faiz@disroot.org>
In-Reply-To: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
References: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:40:42 +0800
Subject: [PATCH v2 3/7] gnu: python-pygame: Update to 2.5.2.

* gnu/packages/game-development.scm (python-pygame): Update to 2.5.2.
[arguments]: Adapt the 'fix-build-config phase to the new version.
---
gnu/packages/game-development.scm | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)

Toggle diff (34 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index f54b629f90..ed9e8cb826 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1329,13 +1329,13 @@ (define-public quesoglc
(define-public python-pygame
(package
(name "python-pygame")
- (version "2.1.2")
+ (version "2.5.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "pygame" version))
(sha256
(base32
- "0g6j79naab7583kymf1bgxc5l5c9h5laq887rmvh8vw8iyifrl6n"))))
+ "0jn2n70hmgr33yc6xzdi33cs5w7jnmgi44smyxfarrrrsnsrxf61"))))
(build-system python-build-system)
(arguments
(list
@@ -1349,7 +1349,10 @@ (define-public python-pygame
"origincdirs = os.environ['C_INCLUDE_PATH'].split(\":\")")
(("ORIGLIBDIRS") "LIBRARY_PATH")
(("incdirs = \\[\\]") "incdirs = origincdirs")
- (("libdirs = \\[\\]") "libdirs = origlibdirs"))))
+ (("libdirs = \\[\\]") "libdirs = origlibdirs")
+ (("sdl2-config") "pkg-config sdl2")
+ (("\\['sdl'\\]") "['sdl'], '--modversion'")
+ ((".dpkg-architecture.*,") ""))))
(add-after 'unpack 'fix-sdl2-headers
(lambda _
(substitute* "buildconfig/config_unix.py"
--
2.41.0
A
A
Adam Faiz wrote on 13 Nov 2023 05:11
[PATCH v2 4/7] gnu: Add python-pygame-menu.
(address . 67131@debbugs.gnu.org)
86d8da19-823f-79d0-b760-ba8706958835@disroot.org
From 5550355f5dbed58b3e7a188d2c1c8f1aeb646c40 Mon Sep 17 00:00:00 2001
Message-ID: <5550355f5dbed58b3e7a188d2c1c8f1aeb646c40.1699848337.git.adam.faiz@disroot.org>
In-Reply-To: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
References: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:41:54 +0800
Subject: [PATCH v2 4/7] gnu: Add python-pygame-menu.

* gnu/packages/game-development.scm (python-pygame-menu): New variable.
---
gnu/packages/game-development.scm | 32 +++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)

Toggle diff (45 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index ed9e8cb826..2222183970 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1399,6 +1399,38 @@ (define-public python-pygame
license:public-domain
license:lgpl2.1+))))
+(define-public python-pygame-menu
+ (package
+ (name "python-pygame-menu")
+ (version "4.4.3")
+ (source
+ ;; Tests not included in release.
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/ppizarror/pygame-menu")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0s7w8z931iw9rzsaq9810lbrgba9i2qhkryf0y011njc6bxhf6w4"))))
+ (build-system python-build-system)
+ (arguments
+ ;; Some tests depend on having a mixer, and a few assertions fail
+ (list #:tests? #f))
+ (propagated-inputs (list python-pygame python-pyperclip
+ python-typing-extensions))
+ (native-inputs (list python-nose2))
+ (home-page "https://pygame-menu.readthedocs.io")
+ (synopsis "Menu for pygame")
+ (description
+ "Pygame-menu is a python-pygame library for creating menus and GUIs.
+It supports several widgets, such as buttons, color inputs, clock objects,
+drop selectors, frames, images, labels, selectors, tables, text inputs,
+color switches, and many more, with multiple options to customize.")
+ (license license:expat)))
+
(define-public python-pyglet
(package
(name "python-pyglet")
--
2.41.0
A
A
Adam Faiz wrote on 13 Nov 2023 05:12
[PATCH v2 5/7] gnu: Add python-pyscroll.
(address . 67131@debbugs.gnu.org)
330c847f-71fa-4f95-3084-4d6f0d7e0271@disroot.org
From 82f89ba8aa785b2fb0bec1283053b462eba8d28d Mon Sep 17 00:00:00 2001
Message-ID: <82f89ba8aa785b2fb0bec1283053b462eba8d28d.1699848337.git.adam.faiz@disroot.org>
In-Reply-To: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
References: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:42:35 +0800
Subject: [PATCH v2 5/7] gnu: Add python-pyscroll.

* gnu/packages/game-development.scm (python-pyscroll): New variable.
---
gnu/packages/game-development.scm | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 2222183970..ad29931b72 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -507,6 +507,24 @@ (define-public python-neteria
"This package is a game networking framework for Python.")
(license license:gpl3+)))
+(define-public python-pyscroll
+ (package
+ (name "python-pyscroll")
+ (version "2.31")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyscroll" version))
+ (sha256
+ (base32
+ "0w3c58mkkbsyvx9w9hwdizk20pbds800m7v9vg49ydw440dha0hr"))))
+ (build-system python-build-system)
+ (propagated-inputs (list python-pygame))
+ (home-page "https://github.com/bitcraft/pyscroll")
+ (synopsis "Fast scrolling maps library for pygame")
+ (description "@code{pyscroll} is a simple and fast module
+for animated scrolling maps for your new or existing game.")
+ (license license:lgpl3+)))
+
(define-public python-sge
(package
(name "python-sge")
--
2.41.0
A
A
Adam Faiz wrote on 13 Nov 2023 05:14
[PATCH v2 6/7] gnu: Add python-pytmx.
(address . 67131@debbugs.gnu.org)
50c1f5b0-3b8d-8a97-79bd-2cdd2507f371@disroot.org
From 162752285f22ea08d5d8f911b19062da213aa910 Mon Sep 17 00:00:00 2001
Message-ID: <162752285f22ea08d5d8f911b19062da213aa910.1699848337.git.adam.faiz@disroot.org>
In-Reply-To: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
References: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:43:51 +0800
Subject: [PATCH v2 6/7] gnu: Add python-pytmx.

* gnu/packages/game-development.scm (python-pytmx): New variable.
---
gnu/packages/game-development.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index ad29931b72..d9ec0d5826 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -548,6 +548,25 @@ (define-public python-sge
possible, and it also makes the SGE easy to learn.")
(license license:lgpl3+)))
+(define-public python-pytmx
+ (package
+ (name "python-pytmx")
+ (version "3.32")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "PyTMX" version))
+ (sha256
+ (base32
+ "1jh9b0pjqbjdv72v5047p5d769ic084g013njvky0zcfiwrxi3w5"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-pygame python-pysdl2 python-pyglet))
+ (home-page "https://github.com/bitcraft/PyTMX")
+ (synopsis "Python library to read Tiled Map Editor's TMX maps")
+ (description "@code{pytmx} is a map loader for python/pygame designed for games.
+It provides smart tile loading with a fast and efficient storage base.")
+ (license license:lgpl3+)))
+
(define-public python-tmx
(package
(name "python-tmx")
--
2.41.0
A
A
Adam Faiz wrote on 13 Nov 2023 05:15
[PATCH v2 7/7] gnu: Add tuxemon.
(address . 67131@debbugs.gnu.org)
f724eb85-0bd0-9255-07f8-c25da06b8b0c@disroot.org
From d8f1dec54262274b240b77935d352c9cd846a9e6 Mon Sep 17 00:00:00 2001
Message-ID: <d8f1dec54262274b240b77935d352c9cd846a9e6.1699848337.git.adam.faiz@disroot.org>
In-Reply-To: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
References: <c3534b088236ae688d64aa91046c24774ac259a6.1699848337.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:53:06 +0800
Subject: [PATCH v2 7/7] gnu: Add tuxemon.

* gnu/packages/games.scm (tuxemon): New variable.
---
gnu/packages/games.scm | 62 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 62 insertions(+)

Toggle diff (75 lines)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 9936f96e6b..ffc6cc0fc8 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -5922,6 +5922,68 @@ (define-public chromium-bsu
;; by the Expat License.
(license (list license:clarified-artistic license:expat))))
+(define-public tuxemon
+ (let ((commit "068b9c44345a86e83b35383a2e372629214f51f3")
+ (revision "0"))
+ (package
+ (name "tuxemon")
+ (version (git-version "0.4.34" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Tuxemon/Tuxemon")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1nsq26zx355w0sr2rc74kv2gnllqgki9fc5rgdiqcgiqsksbrhfy"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "setup.py"
+ (("# build_translations..") "build_translations()")
+ (("tuxemon.core.locale") "tuxemon.locale"))
+ (substitute* "requirements.txt"
+ (("-ce") "") ; The pygame-ce fork isn't packaged in Guix
+ (("==") ">="))
+ (substitute* "tuxemon/constants/paths.py"
+ (("LIBDIR, ....,") "LIBDIR,"))))))
+ (build-system pyproject-build-system)
+ (propagated-inputs
+ (list python-babel
+ python-cbor
+ python-neteria
+ python-natsort
+ python-pygame
+ python-pyscroll
+ python-pytmx
+ python-pillow
+ python-prompt-toolkit
+ python-pydantic
+ python-pygame-menu
+ python-pyyaml
+ python-requests))
+ (arguments
+ (list #:tests? #f ; Some tests are outdated because of API changes
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'install-mods
+ (lambda _
+ (let ((site (string-append #$output "/lib/python"
+ #$(version-major+minor
+ (package-version python))
+ "/site-packages/tuxemon/mods")))
+ (mkdir-p site)
+ (copy-recursively "mods" site)))))))
+ (home-page "https://www.tuxemon.org/")
+ (synopsis "Monster-fighting RPG")
+ (description
+ "Tuxemon is a monster-fighting RPG.
+In the spirit of other clones like SuperTux and SuperTuxKart,
+Tuxemon aims to create a game with its own unique style
+that sets it apart from other monster fighting RPGs.")
+ (license license:gpl3+))))
+
(define-public tuxpaint
(package
(name "tuxpaint")
--
2.41.0
A
A
Adam Faiz wrote on 18 Dec 2023 16:10
[PATCH v3 1/7] gnu: Add python-neteria.
(address . 67131@debbugs.gnu.org)
f3c2e936-4c2a-13d1-248f-00f1425627bc@disroot.org
From 9f6186753e6b9cd1f70ec11059c193d30db123aa Mon Sep 17 00:00:00 2001
Message-ID: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Sun, 12 Nov 2023 16:16:40 +0800
Subject: [PATCH v3 1/7] gnu: Add python-neteria.

* gnu/packages/game-development.scm (python-neteria): New variable.
---
gnu/packages/game-development.scm | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 3d00977601..145538e343 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -29,6 +29,7 @@
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 dan <i@dan.games>
;;; Copyright © 2023 John Kehayias <john.kehayias@protonmail.com>
+;;; Copyright © 2022-2023 Adam Faiz <adam.faiz@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -578,6 +579,25 @@ (define-public python-xsge
support.")
(license license:gpl3+)))
+(define-public python-neteria
+ (package
+ (name "python-neteria")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "neteria" version))
+ (sha256
+ (base32 "1azlix80a6vns2i3z0bdbqk32kx8s2gjh2nvshab235fd9h85yv7"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-rsa))
+ (home-page "https://pypi.org/project/neteria/")
+ (synopsis "Simple game networking library")
+ (description
+ "This package is a game networking framework for Python.")
+ (license license:gpl3+)))
+
(define-public slade
(package
(name "slade")

base-commit: 29c94dd522833b2603a651c14a5b06120bcf1829
--
2.41.0
A
A
Adam Faiz wrote on 18 Dec 2023 16:13
[PATCH v3 2/7] gnu: Add python-pyglet.
(address . 67131@debbugs.gnu.org)(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
1dc77e86-e0c7-1b06-59a3-d0851ea116c1@disroot.org
From 572849d2c643ecbe62b31cb9f88ee58d43fb8cc2 Mon Sep 17 00:00:00 2001
Message-ID: <572849d2c643ecbe62b31cb9f88ee58d43fb8cc2.1702911964.git.adam.faiz@disroot.org>
In-Reply-To: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
References: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:39:22 +0800
Subject: [PATCH v3 2/7] gnu: Add python-pyglet.

* gnu/packages/game-development.scm (python-pyglet): New variable.
---
gnu/packages/game-development.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (38 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 145538e343..3742b45321 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1399,6 +1399,31 @@ (define-public python-pygame
license:public-domain
license:lgpl2.1+))))
+(define-public python-pyglet
+ (package
+ (name "python-pyglet")
+ (version "2.0.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyglet" version ".zip"))
+ (sha256
+ (base32 "1jdraqr7i3bz64m7yvhcnn3av5mnavn13fp5vzmmnz6n7cdynar4"))))
+ (build-system pyproject-build-system)
+ (native-inputs (list unzip))
+ (arguments
+ ;; TypeError: don't know how to make test from:
+ ;; <pyglet._ModuleProxy object at 0x7ffff697df90>
+ (list #:tests? #f))
+ (home-page "http://pyglet.readthedocs.org/en/latest/")
+ (synopsis "Windowing and multimedia library")
+ (description "@code{pyglet} is a windowing and multimedia library for Python,
+intended for developing games and other visually rich applications.
+It supports windowing, user interface event handling, game controllers
+and joysticks, OpenGL graphics, loading images and videos, and playing sounds
+and music.")
+ (license license:bsd-3)))
+
(define-public python-pygame-sdl2
(let ((real-version "2.1.0")
(renpy-version "8.1.3"))
--
2.41.0
A
A
Adam Faiz wrote on 18 Dec 2023 16:14
[PATCH v3 3/7] gnu: python-pygame: Update to 2.5.2.
(address . 67131@debbugs.gnu.org)(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
c7dc3534-9e3c-3fd2-852a-802845d3f00b@disroot.org
From 6766999d8bec5ddcf40168a7be3cacf8152f4dad Mon Sep 17 00:00:00 2001
Message-ID: <6766999d8bec5ddcf40168a7be3cacf8152f4dad.1702911964.git.adam.faiz@disroot.org>
In-Reply-To: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
References: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:40:42 +0800
Subject: [PATCH v3 3/7] gnu: python-pygame: Update to 2.5.2.

* gnu/packages/game-development.scm (python-pygame): Update to 2.5.2.
[arguments]: Adapt the 'fix-build-config phase to the new version.
---
gnu/packages/game-development.scm | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)

Toggle diff (34 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 3742b45321..c8d1e14983 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1332,13 +1332,13 @@ (define-public quesoglc
(define-public python-pygame
(package
(name "python-pygame")
- (version "2.1.2")
+ (version "2.5.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "pygame" version))
(sha256
(base32
- "0g6j79naab7583kymf1bgxc5l5c9h5laq887rmvh8vw8iyifrl6n"))))
+ "0jn2n70hmgr33yc6xzdi33cs5w7jnmgi44smyxfarrrrsnsrxf61"))))
(build-system python-build-system)
(arguments
(list
@@ -1352,7 +1352,10 @@ (define-public python-pygame
"origincdirs = os.environ['C_INCLUDE_PATH'].split(\":\")")
(("ORIGLIBDIRS") "LIBRARY_PATH")
(("incdirs = \\[\\]") "incdirs = origincdirs")
- (("libdirs = \\[\\]") "libdirs = origlibdirs"))))
+ (("libdirs = \\[\\]") "libdirs = origlibdirs")
+ (("sdl2-config") "pkg-config sdl2")
+ (("\\['sdl'\\]") "['sdl'], '--modversion'")
+ ((".dpkg-architecture.*,") ""))))
(add-after 'unpack 'fix-sdl2-headers
(lambda _
(substitute* "buildconfig/config_unix.py"
--
2.41.0
A
A
Adam Faiz wrote on 18 Dec 2023 16:16
[PATCH v3 4/7] gnu: Add python-pygame-menu.
(address . 67131@debbugs.gnu.org)(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
3fef63ae-22c5-d538-7b2e-20d36f3af470@disroot.org
From fb55515aa11e17fbc2b57145454b4c1e5f58edd9 Mon Sep 17 00:00:00 2001
Message-ID: <fb55515aa11e17fbc2b57145454b4c1e5f58edd9.1702911964.git.adam.faiz@disroot.org>
In-Reply-To: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
References: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:41:54 +0800
Subject: [PATCH v3 4/7] gnu: Add python-pygame-menu.

* gnu/packages/game-development.scm (python-pygame-menu): New variable.
---
gnu/packages/game-development.scm | 32 +++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)

Toggle diff (45 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index c8d1e14983..a87110c138 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -1402,6 +1402,38 @@ (define-public python-pygame
license:public-domain
license:lgpl2.1+))))
+(define-public python-pygame-menu
+ (package
+ (name "python-pygame-menu")
+ (version "4.4.3")
+ (source
+ ;; Tests not included in release.
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/ppizarror/pygame-menu")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0s7w8z931iw9rzsaq9810lbrgba9i2qhkryf0y011njc6bxhf6w4"))))
+ (build-system python-build-system)
+ (arguments
+ ;; Some tests depend on having a mixer, and a few assertions fail
+ (list #:tests? #f))
+ (propagated-inputs (list python-pygame python-pyperclip
+ python-typing-extensions))
+ (native-inputs (list python-nose2))
+ (home-page "https://pygame-menu.readthedocs.io")
+ (synopsis "Menu for pygame")
+ (description
+ "Pygame-menu is a python-pygame library for creating menus and GUIs.
+It supports several widgets, such as buttons, color inputs, clock objects,
+drop selectors, frames, images, labels, selectors, tables, text inputs,
+color switches, and many more, with multiple options to customize.")
+ (license license:expat)))
+
(define-public python-pyglet
(package
(name "python-pyglet")
--
2.41.0
A
A
Adam Faiz wrote on 18 Dec 2023 16:18
[PATCH v3 5/7] gnu: Add python-pyscroll.
(address . 67131@debbugs.gnu.org)(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)
79e1cff3-b92a-821a-90e9-d97e7a04461b@disroot.org
From 8a294e4597cc4985bf06fe304cca56923ff217b6 Mon Sep 17 00:00:00 2001
Message-ID: <8a294e4597cc4985bf06fe304cca56923ff217b6.1702911964.git.adam.faiz@disroot.org>
In-Reply-To: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
References: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:42:35 +0800
Subject: [PATCH v3 5/7] gnu: Add python-pyscroll.

* gnu/packages/game-development.scm (python-pyscroll): New variable.
---
gnu/packages/game-development.scm | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)

Toggle diff (31 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index a87110c138..5ee4b08e21 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -514,6 +514,24 @@ (define-public python-sge
possible, and it also makes the SGE easy to learn.")
(license license:lgpl3+)))
+(define-public python-pyscroll
+ (package
+ (name "python-pyscroll")
+ (version "2.31")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyscroll" version))
+ (sha256
+ (base32
+ "0w3c58mkkbsyvx9w9hwdizk20pbds800m7v9vg49ydw440dha0hr"))))
+ (build-system python-build-system)
+ (propagated-inputs (list python-pygame))
+ (home-page "https://github.com/bitcraft/pyscroll")
+ (synopsis "Fast scrolling maps library for pygame")
+ (description "@code{pyscroll} is a simple and fast module
+for animated scrolling maps for your new or existing game.")
+ (license license:lgpl3+)))
+
(define-public python-tmx
(package
(name "python-tmx")
--
2.41.0
A
A
Adam Faiz wrote on 18 Dec 2023 16:19
[PATCH v3 6/7] gnu: Add python-pytmx.
(address . 67131@debbugs.gnu.org)
39a919be-0684-f528-c29e-e71647e2f813@disroot.org
From c3f4e8eb98b1c0e802e80e1853476630feb7db6c Mon Sep 17 00:00:00 2001
Message-ID: <c3f4e8eb98b1c0e802e80e1853476630feb7db6c.1702911965.git.adam.faiz@disroot.org>
In-Reply-To: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
References: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:43:51 +0800
Subject: [PATCH v3 6/7] gnu: Add python-pytmx.

* gnu/packages/game-development.scm (python-pytmx): New variable.
---
gnu/packages/game-development.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 5ee4b08e21..a2d7c5ea63 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -532,6 +532,25 @@ (define-public python-pyscroll
for animated scrolling maps for your new or existing game.")
(license license:lgpl3+)))
+(define-public python-pytmx
+ (package
+ (name "python-pytmx")
+ (version "3.32")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "PyTMX" version))
+ (sha256
+ (base32
+ "1jh9b0pjqbjdv72v5047p5d769ic084g013njvky0zcfiwrxi3w5"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ (list python-pygame python-pysdl2 python-pyglet))
+ (home-page "https://github.com/bitcraft/PyTMX")
+ (synopsis "Python library to read Tiled Map Editor's TMX maps")
+ (description "@code{pytmx} is a map loader for python/pygame designed for games.
+It provides smart tile loading with a fast and efficient storage base.")
+ (license license:lgpl3+)))
+
(define-public python-tmx
(package
(name "python-tmx")
--
2.41.0
A
A
Adam Faiz wrote on 18 Dec 2023 16:21
[PATCH v3 7/7] gnu: Add tuxemon.
(address . 67131@debbugs.gnu.org)
da6580f3-439c-3af8-87bb-5d254b697e9b@disroot.org
From e73f2b26c294c32f791774a8f6f44385f650a96f Mon Sep 17 00:00:00 2001
Message-ID: <e73f2b26c294c32f791774a8f6f44385f650a96f.1702911965.git.adam.faiz@disroot.org>
In-Reply-To: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
References: <9f6186753e6b9cd1f70ec11059c193d30db123aa.1702911964.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Mon, 13 Nov 2023 11:53:06 +0800
Subject: [PATCH v3 7/7] gnu: Add tuxemon.

* gnu/packages/games.scm (tuxemon): New variable.
---
gnu/packages/games.scm | 64 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 64 insertions(+)

Toggle diff (84 lines)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 9936f96e6b..66739d7a6b 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -79,6 +79,7 @@
;;; Copyright © 2023 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
+;;; Copyright © 2023 Adam Faiz <adam.faiz@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -5922,6 +5923,69 @@ (define-public chromium-bsu
;; by the Expat License.
(license (list license:clarified-artistic license:expat))))
+(define-public tuxemon
+ (let ((commit "068b9c44345a86e83b35383a2e372629214f51f3")
+ (revision "0"))
+ (package
+ (name "tuxemon")
+ (version (git-version "0.4.34" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Tuxemon/Tuxemon")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1nsq26zx355w0sr2rc74kv2gnllqgki9fc5rgdiqcgiqsksbrhfy"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ (substitute* "setup.py"
+ (("# build_translations..") "build_translations()")
+ (("tuxemon.core.locale") "tuxemon.locale"))
+ (substitute* "requirements.txt"
+ (("pygame-ce") "pygame") ; The pygame-ce fork isn't packaged in Guix
+ (("pygame-menu-ce") "pygame-menu")
+ (("==") ">="))
+ (substitute* "tuxemon/constants/paths.py"
+ (("LIBDIR, ....,") "LIBDIR,"))))))
+ (build-system pyproject-build-system)
+ (propagated-inputs
+ (list python-babel
+ python-cbor
+ python-neteria
+ python-natsort
+ python-pygame
+ python-pyscroll
+ python-pytmx
+ python-pillow
+ python-prompt-toolkit
+ python-pydantic
+ python-pygame-menu
+ python-pyyaml
+ python-requests))
+ (arguments
+ (list #:tests? #f ; Some tests are outdated because of API changes
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'install-mods
+ (lambda _
+ (let ((site (string-append #$output "/lib/python"
+ #$(version-major+minor
+ (package-version python))
+ "/site-packages/tuxemon/mods")))
+ (mkdir-p site)
+ (copy-recursively "mods" site)))))))
+ (home-page "https://www.tuxemon.org/")
+ (synopsis "Monster-fighting RPG")
+ (description
+ "Tuxemon is a monster-fighting RPG.
+In the spirit of other clones like SuperTux and SuperTuxKart,
+Tuxemon aims to create a game with its own unique style
+that sets it apart from other monster fighting RPGs.")
+ (license license:gpl3+))))
+
(define-public tuxpaint
(package
(name "tuxpaint")
--
2.41.0
?