guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add gnu-maintain and gnu-standards.


From: Jan Nieuwenhuizen
Subject: Re: [PATCH] gnu: Add gnu-maintain and gnu-standards.
Date: Sat, 26 Mar 2016 14:00:39 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Ludovic Courtès writes:

Hi,

> Please add it to gnu-system.am as well.

Ah yes.

> The ‘miscfiles’ package should probably go to the same module (in a
> separate commit.)

Ok.  Separate patch attached.

> This is an unversioned URL where the file occasionally gets updated in
> place, so it’s unsuitable.
>
> I think this one should instead be taken from
> :pserver:address@hidden:/sources/gnustandards using
> (guix cvs-download).

It turns out that this url also include maintain.texi, so I combined
that into gnu-standards.

> Could you send an updated patch?

Thanks for your comments, new patch attached.

To be able to build this, I had to patch cvs.scm.  Not sure if
(something like) that should go in too.

Greetings, Jan

>From 87eac0f669515e139f7518cd52480e3346069ba5 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <address@hidden>
Date: Wed, 23 Mar 2016 22:18:46 +0100
Subject: [PATCH 1/3] gnu: Add gnu-standards.

* gnu/packages/gnu-doc.scm: New file.
* gnu-system.am: Add it.
---
 gnu-system.am            |  1 +
 gnu/packages/gnu-doc.scm | 74 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 75 insertions(+)
 create mode 100644 gnu/packages/gnu-doc.scm

diff --git a/gnu-system.am b/gnu-system.am
index 6cdc1e3..8161632 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -134,6 +134,7 @@ GNU_SYSTEM_MODULES =                                \
   gnu/packages/gl.scm                          \
   gnu/packages/glib.scm                                \
   gnu/packages/gnome.scm                       \
+  gnu/packages/gnu-doc.scm                     \
   gnu/packages/gnucash.scm                     \
   gnu/packages/gnunet.scm                      \
   gnu/packages/gnupg.scm                       \
diff --git a/gnu/packages/gnu-doc.scm b/gnu/packages/gnu-doc.scm
new file mode 100644
index 0000000..572647d
--- /dev/null
+++ b/gnu/packages/gnu-doc.scm
@@ -0,0 +1,74 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016 Jan Nieuwenhuizen <address@hidden>
+;;;
+;;; 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 gnu-doc)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages texinfo)
+
+  #:use-module (guix build-system trivial)
+  #:use-module (guix cvs-download)
+  #:use-module (guix licenses)
+  #:use-module (guix packages))
+
+(define-public gnu-standards
+  (package
+    (name "gnu-standards")
+    (version "2016-03-25")
+    (source
+     (origin
+       (method cvs-fetch)
+       (uri (cvs-reference
+             (root-directory
+              ":pserver:address@hidden:/sources/gnustandards")
+             (module "gnustandards")
+             (revision "2016-03-25")))
+       (sha256
+        (base32
+         "0qn7mzdjqwc6h9prin22x6kj9iqipxpbzldzhmis7q4x4hpi61vj"))))
+    (build-system trivial-build-system)
+    (native-inputs `(("gzip" ,gzip)
+                     ("source" ,source)
+                     ("texinfo" ,texinfo)))
+    (arguments
+     `(#:modules ((guix build utils))
+       #:builder
+        (begin
+          (use-modules (guix build utils))
+          (let ((gzip (assoc-ref %build-inputs "gzip"))
+                (source (assoc-ref %build-inputs "source"))
+                (texinfo (assoc-ref %build-inputs "texinfo"))
+                (info-dir (string-append %output "/share/info")))
+            (setenv "PATH" (string-append gzip "/bin"
+                                          ":" texinfo "/bin"))
+            (mkdir-p info-dir)
+            (system* "makeinfo" "--output" info-dir
+                     (string-append source "/maintain.texi"))
+            (system* "makeinfo" "--output" info-dir
+                     (string-append source "/standards.texi"))
+            (system* "gzip" (string-append info-dir "/maintain.info"))
+            (system* "gzip" (string-append info-dir "/standards.info"))))))
+    (home-page "http://www.gnu.org/prep/standards/";)
+    (synopsis "GNU coding standards and maintainer information")
+    (description "The GNU Coding Standards were written by Richard Stallman
+and other GNU Project volunteers.  Their purpose is to make the GNU system
+clean, consistent, and easy to install.
+
+The information for maintainers of GNU software has guidelines and advice for
+someone who is the maintainer of a GNU program on behalf of the GNU Project.")
+    (license fdl1.3+)))
-- 
2.6.3

>From d115d439a8bb98e1a5fa072ad6c1ea47361e9dc0 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <address@hidden>
Date: Sat, 26 Mar 2016 13:40:38 +0100
Subject: [PATCH 2/3] build: allow cvs download of gnu-standards.

* guix/build/cvs.scm (cvs-fetch): Use -z1, fixes checkout of gnustandards.
  Use copy-recursively (was rename-file), allows /tmp and /gnu/store on
  separate devices.
---
 guix/build/cvs.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/guix/build/cvs.scm b/guix/build/cvs.scm
index bd5c50a..a2e593e 100644
--- a/guix/build/cvs.scm
+++ b/guix/build/cvs.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Mark H Weaver <address@hidden>
+;;; Copyright © 2016 Jan Nieuwenhuizen <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -51,14 +52,14 @@
   "Fetch REVISION from MODULE of CVS-ROOT-DIRECTORY into DIRECTORY.  REVISION
 must either be a date in ISO-8601 format (e.g. \"2012-12-21\") or a CVS tag.
 Return #t on success, #f otherwise."
-  (and (zero? (system* cvs-command "-z3"
+  (and (zero? (system* cvs-command "-z1"
                        "-d" cvs-root-directory
                        "checkout"
                        (if (string-match "^[0-9]{4}-[0-9]{2}-[0-9]{2}$" 
revision)
                            "-D" "-r")
                        revision
                        module))
-       (rename-file module directory)
+       (copy-recursively module directory)
        (with-directory-excursion directory
          (for-each delete-file-recursively (find-cvs-directories)))
        #t))
-- 
2.6.3

>From b781c71a1077762dbbf2e441cb6697261d05d05d Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <address@hidden>
Date: Sat, 26 Mar 2016 13:56:14 +0100
Subject: [PATCH 3/3] gnu: move miscfiles into gnu-doc.scm

* gnu/packages/miscfiles.scm: Remove file.
* gnu-sytem.am: Remove it.
* gnu/packages/gnu-doc.scm (miscfiles): Move here.
---
 gnu-system.am              |  1 -
 gnu/packages/gnu-doc.scm   | 27 ++++++++++++++++++++++++++
 gnu/packages/miscfiles.scm | 47 ----------------------------------------------
 3 files changed, 27 insertions(+), 48 deletions(-)
 delete mode 100644 gnu/packages/miscfiles.scm

diff --git a/gnu-system.am b/gnu-system.am
index 8161632..3e81f73 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -223,7 +223,6 @@ GNU_SYSTEM_MODULES =                                \
   gnu/packages/mcrypt.scm                      \
   gnu/packages/messaging.scm                   \
   gnu/packages/mg.scm                          \
-  gnu/packages/miscfiles.scm                   \
   gnu/packages/mit-krb5.scm                    \
   gnu/packages/moe.scm                         \
   gnu/packages/moreutils.scm                   \
diff --git a/gnu/packages/gnu-doc.scm b/gnu/packages/gnu-doc.scm
index 572647d..3daa54f 100644
--- a/gnu/packages/gnu-doc.scm
+++ b/gnu/packages/gnu-doc.scm
@@ -1,4 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 John Darrington <address@hidden>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -21,11 +22,37 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages texinfo)
 
+  #:use-module (guix build-system gnu)
   #:use-module (guix build-system trivial)
   #:use-module (guix cvs-download)
+  #:use-module (guix download)
   #:use-module (guix licenses)
   #:use-module (guix packages))
 
+(define-public miscfiles
+  (package
+    (name "miscfiles")
+    (version "1.5")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "mirror://gnu/" name "/" name "-"
+                          version ".tar.gz"))
+      (sha256
+       (base32
+        "005588vfrwx8ghsdv9p7zczj9lbc9a3r4m5aphcaqv8gif4siaka"))))
+    (build-system gnu-build-system)
+    (home-page "https://www.gnu.org/software/miscfiles/";)
+    (synopsis
+     "Data files for airport codes, zip codes, a dictionary, and more")
+    (description
+     "GNU Miscfiles is a collection of common data files.  They include, for
+example, country abbreviations, names and capital cities; currency
+abbreviations and names; a Best Current Practices index; a map of the ASCII
+character set; a list of three-letter airport codes; and an English word
+list.")
+    (license gpl2+)))
+
 (define-public gnu-standards
   (package
     (name "gnu-standards")
diff --git a/gnu/packages/miscfiles.scm b/gnu/packages/miscfiles.scm
deleted file mode 100644
index fd0fc7b..0000000
--- a/gnu/packages/miscfiles.scm
+++ /dev/null
@@ -1,47 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright 2014 John Darrington <address@hidden>
-;;;
-;;; 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 miscfiles)
-  #:use-module (guix licenses)
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu))
-
-(define-public miscfiles
-  (package
-    (name "miscfiles")
-    (version "1.5")
-    (source
-     (origin
-      (method url-fetch)
-      (uri (string-append "mirror://gnu/" name "/" name "-"
-                          version ".tar.gz"))
-      (sha256
-       (base32
-        "005588vfrwx8ghsdv9p7zczj9lbc9a3r4m5aphcaqv8gif4siaka"))))
-    (build-system gnu-build-system)
-    (home-page "https://www.gnu.org/software/miscfiles/";)
-    (synopsis
-     "Data files for airport codes, zip codes, a dictionary, and more")
-    (description
-     "GNU Miscfiles is a collection of common data files.  They include, for
-example, country abbreviations, names and capital cities; currency
-abbreviations and names; a Best Current Practices index; a map of the ASCII
-character set; a list of three-letter airport codes; and an English word
-list.")
-    (license gpl2+)))
-- 
2.6.3

-- 
Jan Nieuwenhuizen <address@hidden> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar®  http://AvatarAcademy.nl  

reply via email to

[Prev in Thread] Current Thread [Next in Thread]