On 2019-01-03 12:39, Ricardo Wurmus wrote:

Hi swedebugia,

 From a7f0c26705aad362acc35e632bed2dcc9e32d004 Mon Sep 17 00:00:00 2001
From: swedebugia <[email protected]>
Date: Wed, 2 Jan 2019 23:47:07 +0100
Subject: [PATCH] gnu: artanis: Move to web.scm and update to 0.3.1.

* gnu/packages/guile.scm (artanis): Move from here...
* gnu/packages/web.scm (artanis): To here and Update to 0.3.1.

Thanks.

Unfortunately, this patch contains a lot of unrelated changes, as you
can see here:

  gnu/packages/guile.scm | 360 +++++++++++++++++++++++++++++++----------
  gnu/packages/web.scm   |  95 +++++++++++
  2 files changed, 368 insertions(+), 87 deletions(-)

Please also split the upgrade from moving the package definition to
another file.

Done, see attached.

Is this acceptable? Or should I have made a new branch from master before moving?

--
Cheers Swedebugia
>From 2d7b2109cd42f12192e9e2bf601d539dd4896986 Mon Sep 17 00:00:00 2001
From: swedebugia <[email protected]>
Date: Thu, 3 Jan 2019 17:04:09 +0100
Subject: [PATCH 1/2] gnu: artanis: Update to 0.3.1.

* gnu/packages/guile.scm (artanis): Update it. Added TODO about unbundling
  guile-csv.
---
 gnu/packages/guile.scm | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 07b568ee7..29e488175 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -528,7 +528,7 @@ program can be installed in one go.")
 ;;;
 
 (define-public artanis
-  (let ((release "0.2.1")
+  (let ((release "0.3.1")
 	(revision 3))
     (package
       (name "artanis")
@@ -543,13 +543,14 @@ program can be installed in one go.")
                 (file-name (string-append name "-" version ".tar.gz"))
                 (sha256
                  (base32
-                  "041ajcg2pz918kd9iqcj4inpzddc3impvz3r2nhlpbv8zrz011hn"))
+                  "0hqr5m3mb558bdhkc2sadmd9cbrhp3y525wx7cwirgy6i0zmay68"))
                 (modules '((guix build utils)))
                 (snippet
                  '(begin
                     (delete-file-recursively "artanis/third-party/json.scm")
                     (delete-file-recursively "artanis/third-party/json")
                     (substitute* '("artanis/artanis.scm"
+                                   "artanis/lpc.scm"
                                    "artanis/oht.scm")
                       (("(#:use-module \\()artanis third-party (json\\))" _
                         use-module json)
@@ -565,6 +566,7 @@ program can be installed in one go.")
                        ""))
                     #t))))
       (build-system gnu-build-system)
+      ;; TODO replace bundled csv with guile-csv
       ;; TODO: Add guile-dbi and guile-dbd optional dependencies.
       (inputs `(("guile" ,guile-2.2)
                 ("guile-json" ,guile-json)))
@@ -601,7 +603,13 @@ program can be installed in one go.")
                  (wrap-program (string-append bin "/art")
                    `("GUILE_LOAD_PATH" ":" prefix (,scm))
                    `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,go)))
-                 #t))))))
+                 #t)))
+           (delete 'strip))))
+      ;; native-search-paths are needed but left out because we propagate it
+      ;; from the installation of guile.
+      ;; On foreign distributions you have to set this manually no matter if
+      ;; you installed guile with guix or not. On GuixSD it should be set
+      ;; correctly automatically (Guile is always installed there)
       (synopsis "Web application framework written in Guile")
       (description "GNU Artanis is a web application framework written in Guile
 Scheme.  A web application framework (WAF) is a software framework that is
-- 
2.19.2

>From 5652a3f8197150b7b0a435bc65d99e18719f2a3d Mon Sep 17 00:00:00 2001
From: swedebugia <[email protected]>
Date: Thu, 3 Jan 2019 17:12:49 +0100
Subject: [PATCH 2/2] gnu: artanis: Move to web.scm

* gnu/packages/guile.scm (artanis): Move from here...
* gnu/packages/web.scm (artanis): ...to here
---
 gnu/packages/guile.scm | 95 ------------------------------------------
 gnu/packages/web.scm   | 95 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 95 insertions(+), 95 deletions(-)

diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 29e488175..4762191dd 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -527,101 +527,6 @@ program can be installed in one go.")
 ;;; Extensions.
 ;;;
 
-(define-public artanis
-  (let ((release "0.3.1")
-	(revision 3))
-    (package
-      (name "artanis")
-      (version (if (zero? revision)
-                   release
-                   (string-append release "-"
-                                  (number->string revision))))
-      (source (origin
-                (method url-fetch)
-                (uri (string-append "mirror://gnu/artanis/artanis-"
-                                    release ".tar.gz"))
-                (file-name (string-append name "-" version ".tar.gz"))
-                (sha256
-                 (base32
-                  "0hqr5m3mb558bdhkc2sadmd9cbrhp3y525wx7cwirgy6i0zmay68"))
-                (modules '((guix build utils)))
-                (snippet
-                 '(begin
-                    (delete-file-recursively "artanis/third-party/json.scm")
-                    (delete-file-recursively "artanis/third-party/json")
-                    (substitute* '("artanis/artanis.scm"
-                                   "artanis/lpc.scm"
-                                   "artanis/oht.scm")
-                      (("(#:use-module \\()artanis third-party (json\\))" _
-                        use-module json)
-                       (string-append use-module json)))
-                    (substitute* "artanis/oht.scm"
-                      (("([[:punct:][:space:]]+)(->json-string)([[:punct:][:space:]]+)"
-                        _ pre json-string post)
-                       (string-append pre
-                                      "scm" json-string
-                                      post)))
-                    (substitute* "artanis/artanis.scm"
-                      (("[[:punct:][:space:]]+->json-string[[:punct:][:space:]]+")
-                       ""))
-                    #t))))
-      (build-system gnu-build-system)
-      ;; TODO replace bundled csv with guile-csv
-      ;; TODO: Add guile-dbi and guile-dbd optional dependencies.
-      (inputs `(("guile" ,guile-2.2)
-                ("guile-json" ,guile-json)))
-      (native-inputs `(("bash"       ,bash)         ;for the `source' builtin
-                       ("pkgconfig"  ,pkg-config)
-                       ("util-linux" ,util-linux))) ;for the `script' command
-      (arguments
-       '(#:make-flags
-         ;; TODO: The documentation must be built with the `docs' target.
-         (let* ((out (assoc-ref %outputs "out"))
-                (scm (string-append out "/share/guile/site/2.2"))
-                (go  (string-append out "/lib/guile/2.2/site-ccache")))
-           ;; Don't use (%site-dir) for site paths.
-           (list (string-append "MOD_PATH=" scm)
-                 (string-append "MOD_COMPILED_PATH=" go)))
-         #:test-target "test"
-         #:phases
-         (modify-phases %standard-phases
-           (add-before 'install 'substitute-root-dir
-             (lambda* (#:key outputs #:allow-other-keys)
-               (let ((out  (assoc-ref outputs "out")))
-                 (substitute* "Makefile"   ;ignore the execution of bash.bashrc
-                   ((" /etc/bash.bashrc") " /dev/null"))
-                 (substitute* "Makefile"   ;set the root of config files to OUT
-                   ((" /etc") (string-append " " out "/etc")))
-                 (mkdir-p (string-append out "/bin")) ;for the `art' executable
-                 #t)))
-           (add-after 'install 'wrap-art
-             (lambda* (#:key outputs #:allow-other-keys)
-               (let* ((out (assoc-ref outputs "out"))
-                      (bin (string-append out "/bin"))
-                      (scm (string-append out "/share/guile/site/2.2"))
-                      (go  (string-append out "/lib/guile/2.2/site-ccache")))
-                 (wrap-program (string-append bin "/art")
-                   `("GUILE_LOAD_PATH" ":" prefix (,scm))
-                   `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,go)))
-                 #t)))
-           (delete 'strip))))
-      ;; native-search-paths are needed but left out because we propagate it
-      ;; from the installation of guile.
-      ;; On foreign distributions you have to set this manually no matter if
-      ;; you installed guile with guix or not. On GuixSD it should be set
-      ;; correctly automatically (Guile is always installed there)
-      (synopsis "Web application framework written in Guile")
-      (description "GNU Artanis is a web application framework written in Guile
-Scheme.  A web application framework (WAF) is a software framework that is
-designed to support the development of dynamic websites, web applications, web
-services and web resources.  The framework aims to alleviate the overhead
-associated with common activities performed in web development.  Artanis
-provides several tools for web development: database access, templating
-frameworks, session management, URL-remapping for RESTful, page caching, and
-more.")
-      (home-page "https://www.gnu.org/software/artanis/";)
-      (license (list license:gpl3+ license:lgpl3+))))) ;dual license
-
 (define-public guile-reader
   (package
     (name "guile-reader")
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 84bd795a8..85f527e0f 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -6878,3 +6878,98 @@ instructions on how to use Guix in a shared HPC environment.")
      "This package provides UI widget and layout functions for writing Shiny apps that
 work well on small screens.")
     (license l:gpl3)))
+
+(define-public artanis
+  (let ((release "0.3.1")
+	(revision 3))
+    (package
+      (name "artanis")
+      (version (if (zero? revision)
+                   release
+                   (string-append release "-"
+                                  (number->string revision))))
+      (source (origin
+                (method url-fetch)
+                (uri (string-append "mirror://gnu/artanis/artanis-"
+                                    release ".tar.gz"))
+                (file-name (string-append name "-" version ".tar.gz"))
+                (sha256
+                 (base32
+                  "0hqr5m3mb558bdhkc2sadmd9cbrhp3y525wx7cwirgy6i0zmay68"))
+                (modules '((guix build utils)))
+                (snippet
+                 '(begin
+                    (delete-file-recursively "artanis/third-party/json.scm")
+                    (delete-file-recursively "artanis/third-party/json")
+                    (substitute* '("artanis/artanis.scm"
+                                   "artanis/lpc.scm"
+                                   "artanis/oht.scm")
+                      (("(#:use-module \\()artanis third-party (json\\))" _
+                        use-module json)
+                       (string-append use-module json)))
+                    (substitute* "artanis/oht.scm"
+                      (("([[:punct:][:space:]]+)(->json-string)([[:punct:][:space:]]+)"
+                        _ pre json-string post)
+                       (string-append pre
+                                      "scm" json-string
+                                      post)))
+                    (substitute* "artanis/artanis.scm"
+                      (("[[:punct:][:space:]]+->json-string[[:punct:][:space:]]+")
+                       ""))
+                    #t))))
+      (build-system gnu-build-system)
+      ;; TODO replace bundled csv with guile-csv
+      ;; TODO: Add guile-dbi and guile-dbd optional dependencies.
+      (inputs `(("guile" ,guile-2.2)
+                ("guile-json" ,guile-json)))
+      (native-inputs `(("bash"       ,bash)         ;for the `source' builtin
+                       ("pkgconfig"  ,pkg-config)
+                       ("util-linux" ,util-linux))) ;for the `script' command
+      (arguments
+       '(#:make-flags
+         ;; TODO: The documentation must be built with the `docs' target.
+         (let* ((out (assoc-ref %outputs "out"))
+                (scm (string-append out "/share/guile/site/2.2"))
+                (go  (string-append out "/lib/guile/2.2/site-ccache")))
+           ;; Don't use (%site-dir) for site paths.
+           (list (string-append "MOD_PATH=" scm)
+                 (string-append "MOD_COMPILED_PATH=" go)))
+         #:test-target "test"
+         #:phases
+         (modify-phases %standard-phases
+           (add-before 'install 'substitute-root-dir
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let ((out  (assoc-ref outputs "out")))
+                 (substitute* "Makefile"   ;ignore the execution of bash.bashrc
+                   ((" /etc/bash.bashrc") " /dev/null"))
+                 (substitute* "Makefile"   ;set the root of config files to OUT
+                   ((" /etc") (string-append " " out "/etc")))
+                 (mkdir-p (string-append out "/bin")) ;for the `art' executable
+                 #t)))
+           (add-after 'install 'wrap-art
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let* ((out (assoc-ref outputs "out"))
+                      (bin (string-append out "/bin"))
+                      (scm (string-append out "/share/guile/site/2.2"))
+                      (go  (string-append out "/lib/guile/2.2/site-ccache")))
+                 (wrap-program (string-append bin "/art")
+                   `("GUILE_LOAD_PATH" ":" prefix (,scm))
+                   `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,go)))
+                 #t)))
+           (delete 'strip))))
+      ;; native-search-paths are needed but left out because we propagate it
+      ;; from the installation of guile.
+      ;; On foreign distributions you have to set this manually no matter if
+      ;; you installed guile with guix or not. On GuixSD it should be set
+      ;; correctly automatically (Guile is always installed there)
+      (synopsis "Web application framework written in Guile")
+      (description "GNU Artanis is a web application framework written in Guile
+Scheme.  A web application framework (WAF) is a software framework that is
+designed to support the development of dynamic websites, web applications, web
+services and web resources.  The framework aims to alleviate the overhead
+associated with common activities performed in web development.  Artanis
+provides several tools for web development: database access, templating
+frameworks, session management, URL-remapping for RESTful, page caching, and
+more.")
+      (home-page "https://www.gnu.org/software/artanis/";)
+      (license (list license:gpl3+ license:lgpl3+))))) ;dual license
-- 
2.19.2

Reply via email to