all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#46997] [PATCH] gnu: Add mangband.
@ 2021-03-07 23:07 Adam Kandur via Guix-patches via
  2021-03-13 11:05 ` Nicolas Goaziou
  0 siblings, 1 reply; 2+ messages in thread
From: Adam Kandur via Guix-patches via @ 2021-03-07 23:07 UTC (permalink / raw)
  To: 46997

master 921bea8c76a52d10091585f3f4ebf0b950c9b758
Author:     Adam Kandur <rndd@tuta.io>
AuthorDate: Mon Mar 8 02:03:00 2021 +0300
Commit:     Adam Kandur <rndd@tuta.io>
CommitDate: Mon Mar 8 02:03:00 2021 +0300

Parent:     76c32fcab4 gnu: nimf: Disable qt4 support.
Merged:     master
Contained:  master
Follows:    bootstrap-20190815 (28240)

gnu: Add mangband.

* gnu/packages/games.scm (mangband): New variable.

1 file changed, 30 insertions(+)
gnu/packages/games.scm | 30 ++++++++++++++++++++++++++++++

modified   gnu/packages/games.scm
@@ -2952,6 +2952,36 @@ the depths below Angband, seeking riches, fighting monsters, and preparing to
 fight Morgoth, the Lord of Darkness.")
     (license license:gpl2)))
 
+(define-public mangband
+  (package
+    (name "mangband")
+    (version "v1.5.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+         (url "https://github.com/mangband/mangband")
+         (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1m7fixv0cbcdzrvxqrjs3jfpzkhq2aj3zip3y67w38a3fbhwdq1k"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("ncurses" ,ncurses)
+       ("sdl2" ,sdl2)
+       ("automake", automake)
+       ("autoconf", autoconf)))
+    (home-page "https://github.com/mangband/mangband")
+    (synopsis "A free online multi-player realtime roguelike game based on Angband.")
+    (description "To win the game you must build up a character, selected from any one
+of 10 races and 6 classes, to be powerful enough to defeat Morgoth, Lord of Darkness, 
+who lives in the dungeon 5000 feet below the surface of the town.  As you work towards
+this near-impossible goal, you will chart unexplored dungeon passageways,
+do battle with legendary creatures, and find lost artifacts.  And of course
+throughout your journeys you will encounter many 
+other adventurers -- whether they be friend or foe is up to you to decide!")
+    (license license:expat)))
+
 (define-public pingus
   (package
     (name "pingus")





^ permalink raw reply	[flat|nested] 2+ messages in thread

* [bug#46997] [PATCH] gnu: Add mangband.
  2021-03-07 23:07 [bug#46997] [PATCH] gnu: Add mangband Adam Kandur via Guix-patches via
@ 2021-03-13 11:05 ` Nicolas Goaziou
  0 siblings, 0 replies; 2+ messages in thread
From: Nicolas Goaziou @ 2021-03-13 11:05 UTC (permalink / raw)
  To: 46997; +Cc: rndd

Hello,

Adam Kandur via Guix-patches via <guix-patches@gnu.org> writes:

> gnu: Add mangband.
>
> * gnu/packages/games.scm (mangband): New variable.

Thank you. Some comments follow.

> 1 file changed, 30 insertions(+)
> gnu/packages/games.scm | 30 ++++++++++++++++++++++++++++++
>
> modified   gnu/packages/games.scm
> @@ -2952,6 +2952,36 @@ the depths below Angband, seeking riches, fighting monsters, and preparing to
>  fight Morgoth, the Lord of Darkness.")
>      (license license:gpl2)))

Something is wrong with your indentation, as there are nbsp inserted
throughout your patch.

I couldn't also apply your patch cleanly. Did you try using git
format-patch?

> +(define-public mangband
> +  (package
> +    (name "mangband")
> +    (version "v1.5.3")

Version should be "1.5.3", the "v" is prepended in the commit.

> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +         (url "https://github.com/mangband/mangband")
> +         (commit version)))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32 "1m7fixv0cbcdzrvxqrjs3jfpzkhq2aj3zip3y67w38a3fbhwdq1k"))))
> +    (build-system gnu-build-system)
> +    (inputs
> +     `(("ncurses" ,ncurses)
> +       ("sdl2" ,sdl2)

I don't think this is sufficient, MAngband also looks for sdl2-image and
sdl2-ttf.

> +       ("automake", automake)
> +       ("autoconf", autoconf)))

automake and autoconf belong to native-inputs, not inputs.  Also, inputs
ought to be sorted alphabetically (nitpick).

> +    (home-page "https://github.com/mangband/mangband")

The home page is https://www.mangband.org

> +    (synopsis "A free online multi-player realtime roguelike game based on Angband.")

Synopsis must not start with an article, and "free" should be removed as
everything in Guix is free. There is no final full stop either in
a synopsis.

You may want to run guix lint mangband to catch some common errors.

> +    (license license:expat)))

I think this is more complex than that. Looking at the COPYING file,
there's also, at least, public-domain and bsd-2 involved.

But, more importantly, I couldn't make this game work. Running
mangclient fails with a segmentation error, while running mangband fails
with the following fatal error: "Cannot create the
'/gnu/store/…-mangband-1.5.3/var/mangband/data/scores.raw' file!"

Could you look into it. I paste here my "improved" version of the
package definition, if that helps.

--8<---------------cut here---------------start------------->8---
(define-public mangband
  (package
    (name "mangband")
    (version "1.5.3")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
             (url "https://github.com/mangband/mangband")
             (commit (string-append "v" version))))
       (file-name (git-file-name name version))
       (sha256
        (base32 "1m7fixv0cbcdzrvxqrjs3jfpzkhq2aj3zip3y67w38a3fbhwdq1k"))))
    (build-system gnu-build-system)
    (arguments
     `(#:phases
       (modify-phases %standard-phases
         (add-after 'set-paths 'set-sdl-paths
           (lambda* (#:key inputs #:allow-other-keys)
             (setenv "CPATH"
                     (string-append (assoc-ref inputs "sdl-union")
                                    "/include/SDL2:"
                                    (or (getenv "CPATH") "")))
             #t)))))
    (native-inputs
     `(("autoconf", autoconf)
       ("automake", automake)))
    (inputs
     `(("ncurses" ,ncurses)
       ("sdl-union" ,(sdl-union (list sdl2 sdl2-image sdl2-ttf)))))
    (home-page "https://www.mangband.org")
    (synopsis "Online multi-player realtime roguelike game based on Angband")
    (description
     "MAngband is a free online multiplayer real-time roguelike game, derived
from the single player game Angband.

To win the game you must build up a character, selected from any one of 10
races and 6 classes, to be powerful enough to defeat Morgoth, Lord of
Darkness, who lives in the dungeon 5000 feet below the surface of the town.
As you work towards this near-impossible goal, you will chart unexplored
dungeon passageways, do battle with legendary creatures, and find lost
artifacts.  And of course throughout your journeys you will encounter many
other adventurers -- whether they be friend or foe is up to you to decide!")
    (license (list license:expat license:bsd-2 license:public-domain))))
--8<---------------cut here---------------end--------------->8---

Regards,
-- 
Nicolas Goaziou




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-03-13 11:06 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-07 23:07 [bug#46997] [PATCH] gnu: Add mangband Adam Kandur via Guix-patches via
2021-03-13 11:05 ` Nicolas Goaziou

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.