diff mbox series

[bug#61015,v2,1/4] gnu: docbook-xml: Use copy-build-system.

Message ID 821b168ca199012a29d7a95961c6380b40e46855.1678557210.git.mirai@makinata.eu
State New
Headers show
Series [bug#61015,v2,1/4] gnu: docbook-xml: Use copy-build-system. | expand

Commit Message

Bruno Victal March 11, 2023, 5:54 p.m. UTC
* gnu/packages/docbook.scm
(docbook-xml-5)[build-system]: Switch to copy-build-system.
[source][arguments]: Adapt to copy-build-system.
(docbook-xml)[arguments]: Remove.
[source]: Switch to url-fetch/zipbomb.
(docbook-xml-4.4)[source]: Switch to url-fetch/zipbomb.
(docbook-xml-4.3)[source]: Switch to url-fetch/zipbomb.
(docbook-xml-4.2)[source]: Switch to url-fetch/zipbomb.
(docbook-xml-4.1.2)[arguments]: Remove.
[source]: Switch to url-fetch/zipbomb.
---
 gnu/packages/docbook.scm | 73 +++++++++-------------------------------
 1 file changed, 15 insertions(+), 58 deletions(-)

Comments

Maxim Cournoyer April 21, 2023, 4:45 a.m. UTC | #1
Hi,

Bruno Victal <mirai@makinata.eu> writes:

> * gnu/packages/docbook.scm
> (docbook-xml-5)[build-system]: Switch to copy-build-system.
> [source][arguments]: Adapt to copy-build-system.
> (docbook-xml)[arguments]: Remove.
> [source]: Switch to url-fetch/zipbomb.
> (docbook-xml-4.4)[source]: Switch to url-fetch/zipbomb.
> (docbook-xml-4.3)[source]: Switch to url-fetch/zipbomb.
> (docbook-xml-4.2)[source]: Switch to url-fetch/zipbomb.
> (docbook-xml-4.1.2)[arguments]: Remove.
> [source]: Switch to url-fetch/zipbomb.

Applied to core-updates, along multiple follow-up that cleaned things
up.  Thank you!
diff mbox series

Patch

diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm
index 8d4892b93b..7cfe550593 100644
--- a/gnu/packages/docbook.scm
+++ b/gnu/packages/docbook.scm
@@ -59,27 +59,15 @@  (define-public docbook-xml-5
               (sha256
                (base32
                 "1iz3hq1lqgnshvlz4j9gvh4jy1ml74qf90vqf2ikbq0h4i2xzybs"))))
-    (build-system trivial-build-system)
+    (build-system copy-build-system)
     (arguments
-     `(#:modules ((guix build utils))
-       #:builder
-       (begin
-         (use-modules (guix build utils))
-         (let* ((unzip
-                 (string-append (assoc-ref %build-inputs "unzip")
-                                "/bin/unzip"))
-                (source (assoc-ref %build-inputs "source"))
-                (out    (assoc-ref %outputs "out"))
-                (dtd    (string-append out "/xml/dtd/docbook")))
-           (invoke unzip source)
-           (mkdir-p dtd)
-           (copy-recursively (string-append "docbook-" ,version) dtd)
-           (with-directory-excursion dtd
-             (substitute* (string-append out "/xml/dtd/docbook/catalog.xml")
-               (("uri=\"")
-                (string-append
-                 "uri=\"file://" dtd "/")))
-             #t)))))
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (replace 'install
+            (lambda _
+              (let ((dtd-path (string-append #$output "/xml/dtd/docbook")))
+                (copy-recursively "." dtd-path)))))))
     (native-inputs (list unzip))
     (home-page "https://docbook.org")
     (synopsis "DocBook XML DTDs for document authoring")
@@ -95,37 +83,18 @@  (define-public docbook-xml
     (name "docbook-xml")
     (version "4.5")
     (source (origin
-              (method url-fetch)
+              (method url-fetch/zipbomb)
               (uri (string-append "https://docbook.org/xml/" version
                                   "/docbook-xml-" version ".zip"))
               (sha256
                (base32
-                "1d671lcjckjri28xfbf6dq7y3xnkppa910w1jin8rjc35dx06kjf"))))
-    (arguments
-     '(#:builder (begin
-                   (use-modules (guix build utils))
-
-                   (let* ((unzip
-                           (string-append (assoc-ref %build-inputs "unzip")
-                                          "/bin/unzip"))
-                          (source (assoc-ref %build-inputs "source"))
-                          (out    (assoc-ref %outputs "out"))
-                          (dtd    (string-append out "/xml/dtd/docbook")))
-                     (mkdir-p dtd)
-                     (with-directory-excursion dtd
-                       (invoke unzip source))
-                     (substitute* (string-append out "/xml/dtd/docbook/catalog.xml")
-                       (("uri=\"")
-                        (string-append
-                         "uri=\"file://" dtd "/")))
-                     #t))
-                 #:modules ((guix build utils))))))
+                "1d671lcjckjri28xfbf6dq7y3xnkppa910w1jin8rjc35dx06kjf"))))))
 
 (define-public docbook-xml-4.4
   (package (inherit docbook-xml)
     (version "4.4")
     (source (origin
-              (method url-fetch)
+              (method url-fetch/zipbomb)
               (uri (string-append "https://docbook.org/xml/" version
                                   "/docbook-xml-" version ".zip"))
               (sha256
@@ -136,7 +105,7 @@  (define-public docbook-xml-4.3
   (package (inherit docbook-xml)
     (version "4.3")
     (source (origin
-              (method url-fetch)
+              (method url-fetch/zipbomb)
               (uri (string-append "https://docbook.org/xml/" version
                                   "/docbook-xml-" version ".zip"))
               (sha256
@@ -147,7 +116,7 @@  (define-public docbook-xml-4.2
   (package (inherit docbook-xml)
     (version "4.2")
     (source (origin
-              (method url-fetch)
+              (method url-fetch/zipbomb)
               (uri (string-append "https://docbook.org/xml/" version
                                   "/docbook-xml-" version ".zip"))
               (sha256
@@ -158,24 +127,12 @@  (define-public docbook-xml-4.1.2
   (package (inherit docbook-xml)
     (version "4.1.2")
     (source (origin
-              (method url-fetch)
+              (method url-fetch/zipbomb)
               (uri (string-append "https://docbook.org/xml/" version
                                   "/docbkx412.zip"))
               (sha256
                (base32
-                "0wkp5rvnqj0ghxia0558mnn4c7s3n501j99q2isp3sp0ci069w1h"))))
-    (arguments
-     '(#:modules ((guix build utils))
-       #:builder
-       (begin
-         (use-modules (guix build utils))
-         (let ((source (assoc-ref %build-inputs "source"))
-               (unzip  (string-append (assoc-ref %build-inputs "unzip")
-                                      "/bin/unzip"))
-               (dtd    (string-append (assoc-ref %outputs "out")
-                                      "/xml/dtd/docbook")))
-           (mkdir-p dtd)
-           (invoke unzip source "-d" dtd)))))))
+                "0wkp5rvnqj0ghxia0558mnn4c7s3n501j99q2isp3sp0ci069w1h"))))))
 
 (define-public docbook-xsl
   (package