all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add gnugo.
@ 2015-02-19 13:57 David Hashe
  2015-02-19 17:04 ` Alex Kost
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: David Hashe @ 2015-02-19 13:57 UTC (permalink / raw)
  To: guix-devel

---
 gnu-system.am          |  1 +
 gnu/packages/gnugo.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 45 insertions(+)
 create mode 100644 gnu/packages/gnugo.scm

diff --git a/gnu-system.am b/gnu-system.am
index eeadd8f..723a00c 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -122,6 +122,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/global.scm			\
   gnu/packages/gnome.scm			\
   gnu/packages/gnunet.scm			\
+  gnu/packages/gnugo.scm			\
   gnu/packages/gnupg.scm			\
   gnu/packages/gnustep.scm			\
   gnu/packages/gnutls.scm			\
diff --git a/gnu/packages/gnugo.scm b/gnu/packages/gnugo.scm
new file mode 100644
index 0000000..d0273b1
--- /dev/null
+++ b/gnu/packages/gnugo.scm
@@ -0,0 +1,44 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages gnugo)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (guix licenses)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages readline)
+  #:use-module (gnu packages texinfo))
+
+(define-public gnugo
+  (package
+    (name "gnugo")
+    (version "3.8")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnu/gnugo/gnugo-" version
+                                  ".tar.gz"))
+              (sha256
+                (base32 "0wkahvqpzq6lzl5r49a4sd4p52frdmphnqsfdv7gdp24bykdfs6s"))))
+    (build-system gnu-build-system)
+    (inputs `(("readline" , readline)
+              ("texinfo", texinfo)))
+    (synopsis "Go game")
+    (description "GNU Go is a program that plays the game of Go, in which players place stones on a grid to form territory or capture other stones.  While it can be played directly from the terminal, rendered in ASCII characters, it is also possible to play GNU Go with 3rd party graphical interfaces or even in Emacs.  It supports the standard game storage format (SGF, Smart Game Format) and inter-process communication format (GMP, Go Modem Protocol)")
+    (home-page "http://www.gnu.org/software/gnugo/")
+    (license gpl3+)))
-- 
1.9.1

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

* Re: [PATCH] gnu: Add gnugo.
  2015-02-19 13:57 [PATCH] gnu: Add gnugo David Hashe
@ 2015-02-19 17:04 ` Alex Kost
  2015-02-19 19:37 ` Andreas Enge
  2015-02-19 23:39 ` Mark H Weaver
  2 siblings, 0 replies; 6+ messages in thread
From: Alex Kost @ 2015-02-19 17:04 UTC (permalink / raw)
  To: David Hashe; +Cc: guix-devel

Hello, I didn't try the patch, but I have a couple of notes.

David Hashe (2015-02-19 16:57 +0300) wrote:

> ---
>  gnu-system.am          |  1 +
>  gnu/packages/gnugo.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 45 insertions(+)
>  create mode 100644 gnu/packages/gnugo.scm
>
> diff --git a/gnu-system.am b/gnu-system.am
> index eeadd8f..723a00c 100644
> --- a/gnu-system.am
> +++ b/gnu-system.am
> @@ -122,6 +122,7 @@ GNU_SYSTEM_MODULES =				\
>    gnu/packages/global.scm			\
>    gnu/packages/gnome.scm			\
>    gnu/packages/gnunet.scm			\
> +  gnu/packages/gnugo.scm			\

Alphabetically it should be above gnunet.scm.

[...]

> +    (build-system gnu-build-system)
> +    (inputs `(("readline" , readline)
> +              ("texinfo", texinfo)))

Should be: “("readline" ,readline)” and “("texinfo" ,texinfo)”
(without spaces after the commas)

> +    (synopsis "Go game")
> +    (description "GNU Go is a program that plays the game of Go, in which players place stones on a grid to form territory or capture other stones.  While it can be played directly from the terminal, rendered in ASCII characters, it is also possible to play GNU Go with 3rd party graphical interfaces or even in Emacs.  It supports the standard game storage format (SGF, Smart Game Format) and inter-process communication format (GMP, Go Modem Protocol)")

Please, wrap the description to 72-78 chars (some people even make 80
chars per line) and add a period at the end of the final sentence.  Also
you may test it with "guix lint gnugo".

> +    (home-page "http://www.gnu.org/software/gnugo/")
> +    (license gpl3+)))

-- 
Alex

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

* Re: [PATCH] gnu: Add gnugo.
  2015-02-19 13:57 [PATCH] gnu: Add gnugo David Hashe
  2015-02-19 17:04 ` Alex Kost
@ 2015-02-19 19:37 ` Andreas Enge
  2015-02-19 23:39 ` Mark H Weaver
  2 siblings, 0 replies; 6+ messages in thread
From: Andreas Enge @ 2015-02-19 19:37 UTC (permalink / raw)
  To: David Hashe; +Cc: guix-devel

Hello,

thanks, and congratulations for your first (I think) package!

Alex Kost has already made a few comments, so I will just add what I found.
I compiled the package successfully, but did not try the binary.

On Thu, Feb 19, 2015 at 07:57:21AM -0600, David Hashe wrote:
> +++ b/gnu/packages/gnugo.scm

How about adding the package into the games.scm module?

> +  #:use-module (gnu packages texinfo))
> +              ("texinfo", texinfo)))

This is not needed, I think.

The package contains a number of perl, python and pike scripts. They are
not installed, but maybe used during "make check"? (I wonder because some
of them are in the "regression" directory.) In that case, you should add
the perl and python interpreters as native-inputs (since they would be
executed during package building).

Could you please send an updated patch taking our comments into account?

Thanks!

Andreas

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

* Re: [PATCH] gnu: Add gnugo.
  2015-02-19 13:57 [PATCH] gnu: Add gnugo David Hashe
  2015-02-19 17:04 ` Alex Kost
  2015-02-19 19:37 ` Andreas Enge
@ 2015-02-19 23:39 ` Mark H Weaver
       [not found]   ` <1424393853.31280.12.camel@Octavian>
  2015-02-20  4:17   ` David Hashe
  2 siblings, 2 replies; 6+ messages in thread
From: Mark H Weaver @ 2015-02-19 23:39 UTC (permalink / raw)
  To: David Hashe; +Cc: guix-devel

Hi!

David Hashe <david.hashe@dhashe.com> writes:

> ---
>  gnu-system.am          |  1 +
>  gnu/packages/gnugo.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 45 insertions(+)
>  create mode 100644 gnu/packages/gnugo.scm

I agree with the feedback from Alex Kost and Andreas Enge,
and will only add two more comments:

* It needs a proper commit message.  Assuming that it ends up in
  games.scm, the commit message would be:

--8<---------------cut here---------------start------------->8---
gnu: Add gnugo.

* gnu/packages/games.scm (gnugo): New variable.
--8<---------------cut here---------------end--------------->8---

* Regarding the 'texinfo' input: I'm not sure if it's needed or not, but
  if it turns out to be needed, it certainly belongs in 'native-inputs',
  not 'inputs'.  The difference is only important when cross-compiling.

Thank you, and welcome to our community :)

     Mark

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

* Re: [PATCH] gnu: Add gnugo.
       [not found]   ` <1424393853.31280.12.camel@Octavian>
@ 2015-02-20  4:15     ` Mark H Weaver
  0 siblings, 0 replies; 6+ messages in thread
From: Mark H Weaver @ 2015-02-20  4:15 UTC (permalink / raw)
  To: David Hashe; +Cc: guix-devel

David Hashe <david.hashe@dhashe.com> writes:
> I've changed the commit message. Texinfo is indeed not needed, but I'll
> keep native-inputs/inputs in mind in the future.

Pushed, thanks!

     Mark

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

* Re: [PATCH] gnu: Add gnugo.
  2015-02-19 23:39 ` Mark H Weaver
       [not found]   ` <1424393853.31280.12.camel@Octavian>
@ 2015-02-20  4:17   ` David Hashe
  1 sibling, 0 replies; 6+ messages in thread
From: David Hashe @ 2015-02-20  4:17 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1247 bytes --]

Taking everyone's feedback into account, here is the updated patch.

David

On Thu, 2015-02-19 at 18:39 -0500, Mark H Weaver wrote:
> Hi!
> 
> David Hashe <david.hashe@dhashe.com> writes:
> 
> > ---
> >  gnu-system.am          |  1 
> >  gnu/packages/gnugo.scm | 44 ﯯ뻻ﯯ뻻ﯯ뻻ﯯ뻻ﯯ뻻ﯯ뙾⥞뇈媞ޝ, 45 insertions()
> >  create mode 100644 gnu/packages/gnugo.scm
> 
> I agree with the feedback from Alex Kost and Andreas Enge,
> and will only add two more comments:
> 
> * It needs a proper commit message.  Assuming that it ends up in
>   games.scm, the commit message would be:
> 
> --8<---------------cut here---------------start------------->8---
> gnu: Add gnugo.
> 
> * gnu/packages/games.scm (gnugo): New variable.
> --8<---------------cut here---------------end--------------->8---
> 
> * Regarding the 'texinfo' input: I'm not sure if it's needed or not, but
>   if it turns out to be needed, it certainly belongs in 'native-inputs',
>   not 'inputs'.  The difference is only important when cross-compiling.
> 
> Thank you, and welcome to our community :)
> 
>      Mark


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: gnugo.patch --]
[-- Type: text/x-patch; name="gnugo.patch"; charset="UTF-7", Size: 2039 bytes --]

From f694d4edd90094a98875456cae689c37d8d1765e Mon Sep 17 00:00:00 2001
From: David Hashe <david.hashe@dhashe.com>
Date: Thu, 19 Feb 2015 18:47:55 -0600
Subject: [PATCH] gnu: Add gnugo.

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

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 9b8983e..687e037 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2014, 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -834,3 +835,27 @@ straight into any libretro-compatible frontend.  RetroArch is the official
 reference frontend for the libretro API, currently used by most as a modular
 multi-system game/emulator system.")
     (license license:gpl3+)))
+
+(define-public gnugo
+  (package
+    (name "gnugo")
+    (version "3.8")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "mirror://gnu/gnugo/gnugo-" version
+                                 ".tar.gz"))
+             (sha256
+              (base32
+               "0wkahvqpzq6lzl5r49a4sd4p52frdmphnqsfdv7gdp24bykdfs6s"))))
+    (build-system gnu-build-system)
+    (inputs `(("readline" ,readline)))
+    (synopsis "Go game")
+    (description "GNU Go is a program that plays the game of Go, in which
+players place stones on a grid to form territory or capture other stones.
+While it can be played directly from the terminal, rendered in ASCII
+characters, it is also possible to play GNU Go with 3rd party graphical
+interfaces or even in Emacs.  It supports the standard game storage format
+(SGF, Smart Game Format) and inter-process communication format (GMP, Go
+Modem Protocol).")
+    (home-page "http://www.gnu.org/software/gnugo/")
+    (license license:gpl3+)))
-- 
1.9.1


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

end of thread, other threads:[~2015-02-20  4:17 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-19 13:57 [PATCH] gnu: Add gnugo David Hashe
2015-02-19 17:04 ` Alex Kost
2015-02-19 19:37 ` Andreas Enge
2015-02-19 23:39 ` Mark H Weaver
     [not found]   ` <1424393853.31280.12.camel@Octavian>
2015-02-20  4:15     ` Mark H Weaver
2015-02-20  4:17   ` David Hashe

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.