GNU bug report logs - #29445
[PATCH] gnu: Add roguebox-adventures.

Previous Next

Package: guix-patches;

Reported by: Kei Kebreau <kkebreau <at> posteo.net>

Date: Sat, 25 Nov 2017 21:11:02 UTC

Severity: normal

Tags: patch

Done: Kei Kebreau <kkebreau <at> posteo.net>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 29445 in the body.
You can then email your comments to 29445 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#29445; Package guix-patches. (Sat, 25 Nov 2017 21:11:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Kei Kebreau <kkebreau <at> posteo.net>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 25 Nov 2017 21:11:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Kei Kebreau <kkebreau <at> posteo.net>
To: guix-patches <at> gnu.org
Cc: Kei Kebreau <kei <at> openmailbox.org>
Subject: [PATCH] gnu: Add roguebox-adventures.
Date: Sat, 25 Nov 2017 16:09:28 -0500
From: Kei Kebreau <kei <at> openmailbox.org>

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

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index b1ba28a62..5b1558c6f 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -580,6 +580,90 @@ utilizing the art assets from the @code{SuperTux} project.")
                    license:gpl2+
                    license:gpl3+))))
 
+(define-public roguebox-adventures
+  (let ((commit "19a2c340b34d5b4e7cc89118c7aedc058babbd93")
+        (revision "1"))
+      (package
+        (name "roguebox-adventures")
+        (version (string-append "2.1.2." revision "." (string-take commit 7)))
+        (source
+         (origin
+           (method git-fetch)
+           (uri (git-reference
+                 (url "https://git.postactiv.com/themightyglider/RogueBoxAdventures")
+                 (commit commit)))
+           (sha256
+            (base32
+             "0afmg8fjdcs3sqdp5rc7irgr7riil8jwysfjn1imfxslf1wcx5ah"))))
+        (build-system python-build-system)
+        (arguments
+         '(#:tests? #f ; no check target
+           #:phases
+           (modify-phases %standard-phases
+             ;; no setup.py script
+             (replace 'build
+               (lambda* (#:key outputs #:allow-other-keys)
+                 (let* ((out    (assoc-ref outputs "out"))
+                        (data   (string-append
+                                 out "/share/games/roguebox-adventures")))
+                   ;; Use the correct data directory.
+                   (substitute* '("main.py" "LIB/getch.py" "LIB/getch_gcwz.py")
+                     (("basic_path + os\\.sep + 'DATA'")
+                      (string-append "'" data "'"))
+                     (("^basic_path.*$")
+                      (string-append "basic_path ='" data "'\n")))
+                   (substitute* "LIB/gra_files.py"
+                     (("basic_path = b_path\\.replace\\('/LIB',''\\)")
+                      (string-append "basic_path ='" data "'\n")))
+
+                   ;; The game must save in the user's home directory because
+                   ;; the store is read-only.
+                   (substitute* "main.py"
+                     (("home_save = False") "home_save = True")
+                     (("'icon_small.png'")
+                      (string-append "'" data "/icon_small.png'"))))
+                 #t))
+             (replace 'install
+               (lambda* (#:key outputs #:allow-other-keys)
+                 (let* ((out    (assoc-ref outputs "out"))
+                        (bin    (string-append out "/bin"))
+                        (data   (string-append
+                                 out "/share/games/roguebox-adventures"))
+                        (doc    (string-append out "/share/doc")))
+                   (mkdir-p bin)
+                   (mkdir-p doc)
+
+                   (copy-file "main.py"
+                              (string-append bin "/roguebox-adventures"))
+                   (chmod (string-append bin "/roguebox-adventures") #o555)
+
+                   (for-each (lambda (file)
+                               (copy-recursively file
+                                                 (string-append data "/" file)))
+                             '("AUDIO" "FONT" "GRAPHIC" "LIB" "LICENSE"
+                               "icon_big.png" "icon_small.png"))
+
+                   (copy-file "DOC" (string-append doc "/roguebox-adventures"))
+
+                   (wrap-program (string-append bin "/roguebox-adventures")
+                     `("PYTHONPATH" ":" prefix (,(string-append data "/LIB")))))
+                 #t)))))
+        (inputs
+         `(("python-pygame" ,python-pygame)
+           ("python-tmx" ,python-tmx)))
+        (home-page "https://rogueboxadventures.tuxfamily.org")
+        (synopsis "A classical roguelike/sandbox game")
+        (description
+         "RogueBox Adventures is a graphical roguelike with strong influences
+from sandbox games like Minecraft or Terraria.  The main idea of RogueBox
+Adventures is to offer the player a kind of roguelike toy-world.  This world
+can be explored and changed freely.")
+        ;; The GPL3+ is for code, the rest are for art.
+        (license (list license:cc0
+                       license:cc-by3.0
+                       license:gpl3+
+                       license:silofl1.1)))))
+
 (define-public xshogi
   (package
     (name "xshogi")
-- 
2.15.0





Information forwarded to guix-patches <at> gnu.org:
bug#29445; Package guix-patches. (Sun, 26 Nov 2017 23:14:01 GMT) Full text and rfc822 format available.

Message #8 received at 29445 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Kei Kebreau <kkebreau <at> posteo.net>
Cc: Kei Kebreau <kei <at> openmailbox.org>, 29445 <at> debbugs.gnu.org
Subject: Re: [bug#29445] [PATCH] gnu: Add roguebox-adventures.
Date: Sun, 26 Nov 2017 18:13:16 -0500
[Message part 1 (text/plain, inline)]
On Sat, Nov 25, 2017 at 04:09:28PM -0500, Kei Kebreau wrote:

Thanks! Overall LGTM, but I have some nitpicks...

> +      (package
> +        (name "roguebox-adventures")
> +        (version (string-append "2.1.2." revision "." (string-take commit 7)))

How about (version (git-version "2.1.2" revision commit)) ?

> +        (source
> +         (origin
> +           (method git-fetch)
> +           (uri (git-reference
> +                 (url "https://git.postactiv.com/themightyglider/RogueBoxAdventures")
> +                 (commit commit)))

And similarly, (file-name (git-file-name name version))

> +             (replace 'build
> +               (lambda* (#:key outputs #:allow-other-keys)
> +                 (let* ((out    (assoc-ref outputs "out"))
> +                        (data   (string-append
                                 ^
There are too many spaces here --| and also in the install phase.

> +                   (mkdir-p bin)
> +                   (mkdir-p doc)
> +
> +                   (copy-file "main.py"
> +                              (string-append bin "/roguebox-adventures"))
> +                   (chmod (string-append bin "/roguebox-adventures") #o555)
> +
> +                   (for-each (lambda (file)
> +                               (copy-recursively file
> +                                                 (string-append data "/" file)))
> +                             '("AUDIO" "FONT" "GRAPHIC" "LIB" "LICENSE"
> +                               "icon_big.png" "icon_small.png"))
> +
> +                   (copy-file "DOC" (string-append doc "/roguebox-adventures"))

And we could simplify a bit by using install-file instead of mkdir-p and
copy-file.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#29445; Package guix-patches. (Tue, 28 Nov 2017 01:46:01 GMT) Full text and rfc822 format available.

Message #11 received at 29445 <at> debbugs.gnu.org (full text, mbox):

From: Kei Kebreau <kkebreau <at> posteo.net>
To: Leo Famulari <leo <at> famulari.name>
Cc: 29445 <at> debbugs.gnu.org
Subject: Re: [bug#29445] [PATCH] gnu: Add roguebox-adventures.
Date: Mon, 27 Nov 2017 19:12:54 -0500
[Message part 1 (text/plain, inline)]
Leo Famulari <leo <at> famulari.name> writes:

> On Sat, Nov 25, 2017 at 04:09:28PM -0500, Kei Kebreau wrote:
>
> Thanks! Overall LGTM, but I have some nitpicks...
>
>> +      (package
>> +        (name "roguebox-adventures")
>> + (version (string-append "2.1.2." revision "." (string-take commit
>> 7)))
>
> How about (version (git-version "2.1.2" revision commit)) ?
>
>> +        (source
>> +         (origin
>> +           (method git-fetch)
>> +           (uri (git-reference
>> + (url
>> "https://git.postactiv.com/themightyglider/RogueBoxAdventures")
>> +                 (commit commit)))
>
> And similarly, (file-name (git-file-name name version))
>
>> +             (replace 'build
>> +               (lambda* (#:key outputs #:allow-other-keys)
>> +                 (let* ((out    (assoc-ref outputs "out"))
>> +                        (data   (string-append
>                                  ^
> There are too many spaces here --| and also in the install phase.
>
>> +                   (mkdir-p bin)
>> +                   (mkdir-p doc)
>> +
>> +                   (copy-file "main.py"
>> +                              (string-append bin "/roguebox-adventures"))
>> +                   (chmod (string-append bin "/roguebox-adventures") #o555)
>> +
>> +                   (for-each (lambda (file)
>> +                               (copy-recursively file
>> + (string-append data "/" file)))
>> +                             '("AUDIO" "FONT" "GRAPHIC" "LIB" "LICENSE"
>> +                               "icon_big.png" "icon_small.png"))
>> +
>> + (copy-file "DOC" (string-append doc "/roguebox-adventures"))
>
> And we could simplify a bit by using install-file instead of mkdir-p and
> copy-file.

Is there a way to rename the file when using install-file? It's a bit
weird to have to run "main.py" to launch the game.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#29445; Package guix-patches. (Tue, 28 Nov 2017 02:18:02 GMT) Full text and rfc822 format available.

Message #14 received at 29445 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Kei Kebreau <kkebreau <at> posteo.net>
Cc: 29445 <at> debbugs.gnu.org
Subject: Re: [bug#29445] [PATCH] gnu: Add roguebox-adventures.
Date: Mon, 27 Nov 2017 21:17:08 -0500
[Message part 1 (text/plain, inline)]
On Mon, Nov 27, 2017 at 07:12:54PM -0500, Kei Kebreau wrote:
> Leo Famulari <leo <at> famulari.name> writes:
> > On Sat, Nov 25, 2017 at 04:09:28PM -0500, Kei Kebreau wrote:
> >> +                   (copy-file "main.py"
> >> +                              (string-append bin "/roguebox-adventures"))
> >
> > And we could simplify a bit by using install-file instead of mkdir-p and
> > copy-file.
> 
> Is there a way to rename the file when using install-file? It's a bit
> weird to have to run "main.py" to launch the game.

Oh, I missed that we were renaming things here. No, install-file doesn't
let you rename the file, so mkdir-p and copy-file are the way to go.
[signature.asc (application/pgp-signature, inline)]

Reply sent to Kei Kebreau <kkebreau <at> posteo.net>:
You have taken responsibility. (Tue, 28 Nov 2017 14:56:02 GMT) Full text and rfc822 format available.

Notification sent to Kei Kebreau <kkebreau <at> posteo.net>:
bug acknowledged by developer. (Tue, 28 Nov 2017 14:56:02 GMT) Full text and rfc822 format available.

Message #19 received at 29445-done <at> debbugs.gnu.org (full text, mbox):

From: Kei Kebreau <kkebreau <at> posteo.net>
To: Leo Famulari <leo <at> famulari.name>
Cc: 29445-done <at> debbugs.gnu.org
Subject: Re: [bug#29445] [PATCH] gnu: Add roguebox-adventures.
Date: Tue, 28 Nov 2017 09:55:05 -0500
[Message part 1 (text/plain, inline)]
Leo Famulari <leo <at> famulari.name> writes:

> On Mon, Nov 27, 2017 at 07:12:54PM -0500, Kei Kebreau wrote:
>> Leo Famulari <leo <at> famulari.name> writes:
>> > On Sat, Nov 25, 2017 at 04:09:28PM -0500, Kei Kebreau wrote:
>> >> +                   (copy-file "main.py"
>> >> +                              (string-append bin "/roguebox-adventures"))
>> >
>> > And we could simplify a bit by using install-file instead of mkdir-p and
>> > copy-file.
>> 
>> Is there a way to rename the file when using install-file? It's a bit
>> weird to have to run "main.py" to launch the game.
>
> Oh, I missed that we were renaming things here. No, install-file doesn't
> let you rename the file, so mkdir-p and copy-file are the way to go.

Alright, thank you for the review!
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 27 Dec 2017 12:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 7 years and 234 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.