unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add cmatrix.
@ 2014-07-01 10:05 Cyrill Schenkel
  2014-07-01 10:28 ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Cyrill Schenkel @ 2014-07-01 10:05 UTC (permalink / raw)
  To: Guix-devel

From b2f37807cbf4fa150272c5ff77eba7a8aeecfcef Mon Sep 17 00:00:00 2001
From: Cyrill Schenkel <cyrill.schenkel@gmail.com>
Date: Tue, 1 Jul 2014 12:02:26 +0200
Subject: [PATCH] gnu: Add cmatrix.

* gnu-system.am (GNU_SYSTEM_MODULES): Add new package.
* gnu/packages/cmatrix.scm: New file.
---
 gnu-system.am            |  1 +
 gnu/packages/cmatrix.scm | 57 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 58 insertions(+)
 create mode 100644 gnu/packages/cmatrix.scm

diff --git a/gnu-system.am b/gnu-system.am
index 90f9033..5d302ca 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -53,6 +53,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/cflow.scm			\
   gnu/packages/check.scm			\
   gnu/packages/cmake.scm			\
+  gnu/packages/cmatrix.scm			\
   gnu/packages/compression.scm			\
   gnu/packages/complexity.scm			\
   gnu/packages/cook.scm 			\
diff --git a/gnu/packages/cmatrix.scm b/gnu/packages/cmatrix.scm
new file mode 100644
index 0000000..cd9e242
--- /dev/null
+++ b/gnu/packages/cmatrix.scm
@@ -0,0 +1,57 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Cyrill Schenkel <cyrill.schenkel@gmail.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 acl)
+  #:use-module (guix licenses)
+  #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages autotools)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (guix build gnu-build-system))
+
+(define-public cmatrix
+  (package
+    (name "cmatrix")
+    (version "1.2a")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://www.asty.org/cmatrix/dist/cmatrix-" version
+                           ".tar.gz"))
+       (sha256
+        (base32
+         "0k06fw2n8nzp1pcdynhajp5prba03gfgsbj91bknyjr5xb5fd9hz"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:phases
+       (alist-cons-before
+        'patch-source-shebangs 'autoreconf
+        (lambda args
+          (system* "autoreconf" "-fi"))
+        %standard-phases)))
+    (inputs `(("ncurses" ,ncurses)
+              ("autoconf" ,autoconf)
+              ("automake" ,automake)))
+    (home-page "http://wwww.asty.org/cmatrix")
+    (synopsis "CMatrix simulates the display from \"The Matrix\"")
+    (description "CMatrix simulates the display from \"The Matrix\" and is
+based on the screensaver from the movie's website.  It works with terminal
+settings up to 132x300 and can scroll lines all at the same rate or
+asynchronously and at a user-defined speed.")
+    (license gpl2+)))
-- 
2.0.0

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

* Re: [PATCH] gnu: Add cmatrix.
  2014-07-01 10:05 [PATCH] gnu: Add cmatrix Cyrill Schenkel
@ 2014-07-01 10:28 ` Ludovic Courtès
  2014-07-01 11:07   ` Cyrill Schenkel
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2014-07-01 10:28 UTC (permalink / raw)
  To: Cyrill Schenkel; +Cc: Guix-devel

Cyrill Schenkel <cyrill.schenkel@gmail.com> skribis:

> From b2f37807cbf4fa150272c5ff77eba7a8aeecfcef Mon Sep 17 00:00:00 2001
> From: Cyrill Schenkel <cyrill.schenkel@gmail.com>
> Date: Tue, 1 Jul 2014 12:02:26 +0200
> Subject: [PATCH] gnu: Add cmatrix.
>
> * gnu-system.am (GNU_SYSTEM_MODULES): Add new package.
> * gnu/packages/cmatrix.scm: New file.


[...]

> +(define-module (gnu packages acl)

Copy/paste error here.

Also, what about putting it in games.scm instead?

> +    (build-system gnu-build-system)
> +    (arguments
> +     '(#:phases
> +       (alist-cons-before
> +        'patch-source-shebangs 'autoreconf
> +        (lambda args
> +          (system* "autoreconf" "-fi"))
> +        %standard-phases)))

This shouldn’t be needed because the tarballs includes ./configure,
Makefile.in, etc.

> +    (inputs `(("ncurses" ,ncurses)
> +              ("autoconf" ,autoconf)
> +              ("automake" ,automake)))

Likewise: no need to depend on Autoconf and Automake.

> +    (synopsis "CMatrix simulates the display from \"The Matrix\"")

In general the synopsis shouldn’t repeat the package name, so:

  Simulate the display from \"The Matrix\"

Could you send an updated patch?

Thanks!

Ludo’.

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

* Re: [PATCH] gnu: Add cmatrix.
  2014-07-01 10:28 ` Ludovic Courtès
@ 2014-07-01 11:07   ` Cyrill Schenkel
  2014-07-01 12:11     ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Cyrill Schenkel @ 2014-07-01 11:07 UTC (permalink / raw)
  To: Guix-devel

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

Hi

ludo@gnu.org (Ludovic Courtès) writes:

> Also, what about putting it in games.scm instead?

Done.

>> +    (build-system gnu-build-system)
>> +    (arguments
>> +     '(#:phases
>> +       (alist-cons-before
>> +        'patch-source-shebangs 'autoreconf
>> +        (lambda args
>> +          (system* "autoreconf" "-fi"))
>> +        %standard-phases)))
>
> This shouldn’t be needed because the tarballs includes ./configure,
> Makefile.in, etc.

Actually it is needed because the configure which comes with the tarball
was generated with a very old version of autotools and doesn't support
the passing of variables (like SHELL). 

>> +    (synopsis "CMatrix simulates the display from \"The Matrix\"")
>
> In general the synopsis shouldn’t repeat the package name, so:
>
>   Simulate the display from \"The Matrix\"

Done.

>
> Could you send an updated patch?

An updated patch is attached.

Regards
Cyrill


[-- Attachment #2: 0001-gnu-Add-cmatrix.patch --]
[-- Type: text/x-diff, Size: 3043 bytes --]

From f0da309bfd8187d8d63386bb908c462fa12fc6f9 Mon Sep 17 00:00:00 2001
From: Cyrill Schenkel <cyrill.schenkel@gmail.com>
Date: Tue, 1 Jul 2014 13:02:53 +0200
Subject: [PATCH] gnu: Add cmatrix.

* gnu/packages/games.scm (cmatrix): New variable.
---
 gnu/packages/games.scm | 36 +++++++++++++++++++++++++++++++++++-
 1 file changed, 35 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 8a2b2df..946f56b 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2013 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2014 David Thompson <dthompson2@worcester.edu>
 ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2014 Cyrill Schenkel <cyrill.schenkel@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -23,6 +24,7 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (gnu packages)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
@@ -32,13 +34,15 @@
   #:use-module (gnu packages guile)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages ncurses)
   #:use-module (gnu packages python)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages sdl)
-  #:use-module (guix build-system gnu))
+  #:use-module (guix build-system gnu)
+  #:use-module (guix build gnu-build-system))
 
 (define-public gnubg
   (package
@@ -228,3 +232,33 @@ into stereotyped or otherwise humorous dialects.  The filters are provided as
 a C library, so they can easily be integrated into other programs.")
     (license gpl2+)))
  
+(define-public cmatrix
+  (package
+    (name "cmatrix")
+    (version "1.2a")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://www.asty.org/cmatrix/dist/cmatrix-" version
+                           ".tar.gz"))
+       (sha256
+        (base32
+         "0k06fw2n8nzp1pcdynhajp5prba03gfgsbj91bknyjr5xb5fd9hz"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:phases
+       (alist-cons-before
+        'patch-source-shebangs 'autoreconf
+        (lambda args
+          (system* "autoreconf" "-fi"))
+        %standard-phases)))
+    (inputs `(("ncurses" ,ncurses)
+              ("autoconf" ,autoconf)
+              ("automake" ,automake)))
+    (home-page "http://wwww.asty.org/cmatrix")
+    (synopsis "Simulate the display from \"The Matrix\"")
+    (description "CMatrix simulates the display from \"The Matrix\" and is
+based on the screensaver from the movie's website.  It works with terminal
+settings up to 132x300 and can scroll lines all at the same rate or
+asynchronously and at a user-defined speed.")
+    (license gpl2+)))
-- 
2.0.0


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

* Re: [PATCH] gnu: Add cmatrix.
  2014-07-01 11:07   ` Cyrill Schenkel
@ 2014-07-01 12:11     ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2014-07-01 12:11 UTC (permalink / raw)
  To: Cyrill Schenkel; +Cc: Guix-devel

Cyrill Schenkel <cyrill.schenkel@gmail.com> skribis:

> ludo@gnu.org (Ludovic Courtès) writes:
>
>> Also, what about putting it in games.scm instead?
>
> Done.
>
>>> +    (build-system gnu-build-system)
>>> +    (arguments
>>> +     '(#:phases
>>> +       (alist-cons-before
>>> +        'patch-source-shebangs 'autoreconf
>>> +        (lambda args
>>> +          (system* "autoreconf" "-fi"))
>>> +        %standard-phases)))
>>
>> This shouldn’t be needed because the tarballs includes ./configure,
>> Makefile.in, etc.
>
> Actually it is needed because the configure which comes with the tarball
> was generated with a very old version of autotools and doesn't support
> the passing of variables (like SHELL). 

Ah sorry.  Still, in that case, it’s easier to just override the
‘configure’ phase as done in time.scm:

       (alist-replace 'configure
                      (lambda* (#:key outputs #:allow-other-keys)
                        ;; This old `configure' script doesn't support
                        ;; variables passed as arguments.
                        (let ((out (assoc-ref outputs "out")))
                          (setenv "CONFIG_SHELL" (which "bash"))
                          (zero?
                           (system* "./configure"
                                    (string-append "--prefix=" out)))))
                      %standard-phases)

Could you do that?

Thanks, and sorry for the round trips.

Ludo’.

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

end of thread, other threads:[~2014-07-01 12:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-07-01 10:05 [PATCH] gnu: Add cmatrix Cyrill Schenkel
2014-07-01 10:28 ` Ludovic Courtès
2014-07-01 11:07   ` Cyrill Schenkel
2014-07-01 12:11     ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).