summary refs log tree commit diff
path: root/gnu/packages/web.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-01-25 22:07:13 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-01-25 22:07:13 -0500
commit1a5302435ff0d2822b823f5a6fe01faa7a85c629 (patch)
treeac7810c88b560532f22d2bab2e59609cd7305c21 /gnu/packages/web.scm
parent3ff2ac4980dacf10087e4b42bd9fbc490591900c (diff)
parent070b8a893febd6e7d8b2b7c8c4dcebacf7845aa9 (diff)
downloadguix-1a5302435ff0d2822b823f5a6fe01faa7a85c629.tar.gz
Merge branch 'master' into staging.
With "conflicts" solved (all in favor of master except git) in:
	gnu/local.mk
	gnu/packages/databases.scm
	gnu/packages/glib.scm
	gnu/packages/gnome.scm
	gnu/packages/gnupg.scm
	gnu/packages/gnuzilla.scm
	gnu/packages/graphics.scm
	gnu/packages/gstreamer.scm
	gnu/packages/gtk.scm
	gnu/packages/linux.scm
	gnu/packages/machine-learning.scm
	gnu/packages/networking.scm
	gnu/packages/polkit.scm
	gnu/packages/pulseaudio.scm
	gnu/packages/rpc.scm
	gnu/packages/rust.scm
	gnu/packages/version-control.scm
	gnu/packages/w3m.scm
Diffstat (limited to 'gnu/packages/web.scm')
-rw-r--r--gnu/packages/web.scm1898
1 files changed, 917 insertions, 981 deletions
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 4beeaf8d7d..03aff6e8f2 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -19,7 +19,7 @@
 ;;; Copyright © 2016–2021 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
-;;; Copyright © 2017, 2018, 2020, 2021 Marius Bakke <marius@gnu.org>
+;;; Copyright © 2017, 2018, 2020, 2021, 2022 Marius Bakke <marius@gnu.org>
 ;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017 Petter <petter@mykolab.ch>
 ;;; Copyright © 2017, 2021 Pierre Langlois <pierre.langlois@gmx.com>
@@ -40,17 +40,21 @@
 ;;; Copyright © 2019, 2020 Florian Pelz <pelzflorian@pelzflorian.de>
 ;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
 ;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
-;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2020, 2021 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2018, 2019, 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 ;;; Copyright © 2020, 2021 Paul Garlick <pgarlick@tourbillion-technology.com>
 ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
 ;;; Copyright © 2020, 2021 Ryan Prior <rprior@protonmail.com>
 ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
+;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2021 la snesne <lasnesne@lagunposprasihopre.org>
 ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
 ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
 ;;; Copyright © 2021 Jack Hill <jackhill@jackhill.us>
+;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2021 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
+;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -240,8 +244,7 @@
                           "postcollector")))
              #t)))))
     (inputs
-     `(("http-parser" ,http-parser)
-       ("qtbase" ,qtbase-5)))
+     (list http-parser qtbase-5))
     (home-page "https://github.com/azadkuh/qhttp/")
     (synopsis "Qt-based HTTP Library")
     (description
@@ -252,20 +255,17 @@
 (define-public httpd
   (package
     (name "httpd")
-    (version "2.4.48")
+    (version "2.4.52")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://apache/httpd/httpd-"
                                  version ".tar.bz2"))
              (sha256
               (base32
-               "0v4npxnvih5mlxx6dywwhhfs8xvgcckc0hxzwk3hi0g8nbkjdj0v"))))
+               "1jgmfbazc2n9dnl7axhahwppyq25bvbvwx0lqplq76by97fgf9q1"))))
     (build-system gnu-build-system)
-    (native-inputs `(("pcre" ,pcre "bin")))       ;for 'pcre-config'
-    (inputs `(("apr" ,apr)
-              ("apr-util" ,apr-util)
-              ("openssl" ,openssl)
-              ("perl" ,perl))) ; needed to run bin/apxs
+    (native-inputs (list `(,pcre "bin")))       ;for 'pcre-config'
+    (inputs (list apr apr-util openssl perl)) ; needed to run bin/apxs
     (arguments
      `(#:test-target "test"
        #:configure-flags (list "--enable-rewrite"
@@ -348,9 +348,9 @@ Interface} specification.")
        #:cargo-development-inputs
        (("rust-assert-cmd" ,rust-assert-cmd-1))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)))
+     (list pkg-config))
     (inputs
-     `(("openssl" ,openssl)))
+     (list openssl))
     (home-page "https://github.com/Y2Z/monolith")
     (synopsis "Command line tool for saving web pages as a single HTML file")
     (description
@@ -368,24 +368,20 @@ the same, being completely separated from the Internet.")
 (define-public nginx
   (package
     (name "nginx")
+    ;; Please update the nginx-documentation package together with this one!
     ;; Track the ‘mainline’ branch.  Upstream considers it more reliable than
     ;; ’stable’ and recommends that “in general you deploy the NGINX mainline
     ;; branch at all times” (https://www.nginx.com/blog/nginx-1-6-1-7-released/)
-    ;; Please update the nginx-documentation package together with this one!
-    (version "1.21.2")
+    (version "1.21.5")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://nginx.org/download/nginx-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "11ail85iw6mg8fxd2qnxhcghi0frjk5r70cfar83dms61rb1qxri"))))
+                "1fygvl19cch100d15k74666jcbc7xpz7v5m7ygqac6556gskn3xj"))))
     (build-system gnu-build-system)
-    (inputs `(("libxml2" ,libxml2)
-              ("libxslt" ,libxslt)
-              ("openssl" ,openssl)
-              ("pcre" ,pcre)
-              ("zlib" ,zlib)))
+    (inputs (list libxml2 libxslt openssl pcre zlib))
     (arguments
      `(#:tests? #f                      ; no test target
        #:phases
@@ -474,9 +470,9 @@ and as a proxy to reduce the load on back-end HTTP or mail servers.")
 
 (define-public nginx-documentation
   ;; This documentation should be relevant for the current nginx package.
-  (let ((version "1.21.2")
-        (revision 2764)
-        (changeset "bc9c5d11b67c"))
+  (let ((version "1.21.5")
+        (revision 2816)
+        (changeset "ae1d713a06e2"))
     (package
       (name "nginx-documentation")
       (version (simple-format #f "~A-~A-~A" version revision changeset))
@@ -488,7 +484,7 @@ and as a proxy to reduce the load on back-end HTTP or mail servers.")
                (file-name (string-append name "-" version))
                (sha256
                 (base32
-                 "05n72q9vqxx37dyw3yl7jssmpqkw3rwxa2y3m6s0c0ih0z2bx58n"))))
+                 "03j85wj6qb32q5xhq9nvcjzarq98802gaq6n3f7k85aqj731bml0"))))
       (build-system gnu-build-system)
       (arguments
        '(#:tests? #f                    ; no test suite
@@ -516,9 +512,7 @@ and as a proxy to reduce the load on back-end HTTP or mail servers.")
                  (copy-recursively "libxslt" output)
                  #t))))))
       (native-inputs
-       `(("libxml2" ,libxml2)
-         ("libxslt" ,libxslt)
-         ("nginx-xslscript" ,nginx-xslscript)))
+       (list libxml2 libxslt nginx-xslscript))
       (home-page "https://nginx.org")
       (synopsis "Documentation for the nginx web server")
       (description
@@ -807,7 +801,7 @@ programming language.")))
                  ;; The nginx source code is part of the module’s source.
                  (format #t "decompressing nginx source code~%")
                  (invoke "tar" "xvf" (assoc-ref inputs "nginx-sources")
-                         ;; This packages's LICENSE file would be
+                         ;; This package's LICENSE file would be
                          ;; overwritten with the one from nginx when
                          ;; unpacking the nginx source, so rename the nginx
                          ;; one when unpacking.
@@ -881,9 +875,8 @@ stream.  Remote control of the module is possible over HTTP.")
        ("pcre:bin" ,pcre "bin")
        ("zlib" ,zlib)))
     (native-inputs
-     `(("perl" ,perl) ; for tests
-       ("pkg-config" ,pkg-config)
-       ("which" ,which)))
+     (list perl ; for tests
+           pkg-config which))
     (home-page "https://www.lighttpd.net/")
     (synopsis "Lightweight HTTP and reverse proxy server")
     (description
@@ -911,9 +904,7 @@ CGI, authentication, output compression, URL rewriting and many more.")
     ;; Parallel building is not supported.
     (arguments `(#:parallel-build? #f))
     (native-inputs
-     `(("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)))
+     (list autoconf automake libtool))
     ;; This is an archived fork of the original home page, www.fastcgi.com.
     (home-page "https://fastcgi-archives.github.io/")
     (synopsis "Language-independent, high-performant extension to CGI")
@@ -950,11 +941,9 @@ APIs.")
                ((" -Werror") ""))
              #t)))))
     (native-inputs
-     `(("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("pkg-config" ,pkg-config)))
+     (list autoconf automake pkg-config))
     (inputs
-     `(("fcgi" ,fcgi)))
+     (list fcgi))
     (home-page "https://nginx.localdomain.pl/wiki/FcgiWrap")
     (synopsis "Simple server for running CGI applications over FastCGI")
     (description "Fcgiwrap is a simple server for running CGI applications
@@ -975,17 +964,15 @@ servers that may need it).")
         (base32 "1y1kn4929k299fbf6sw9lxcsdlq9fvq777p6yrzk591rr9xhkx8h"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-libwww" ,perl-libwww)
-       ("perl-module-build-tiny" ,perl-module-build-tiny)
-       ("perl-test-requires" ,perl-test-requires)))
+     (list perl-libwww perl-module-build-tiny perl-test-requires))
     (propagated-inputs
-     `(("perl-data-dump" ,perl-data-dump)
-       ("perl-http-date" ,perl-http-date)
-       ("perl-http-message" ,perl-http-message)
-       ("perl-http-parser-xs" ,perl-http-parser-xs)
-       ("perl-net-server" ,perl-net-server)
-       ("perl-plack" ,perl-plack)
-       ("perl-test-tcp" ,perl-test-tcp)))
+     (list perl-data-dump
+           perl-http-date
+           perl-http-message
+           perl-http-parser-xs
+           perl-net-server
+           perl-plack
+           perl-test-tcp))
     (home-page "https://metacpan.org/release/Starman")
     (synopsis "PSGI/Plack web server")
     (description "Starman is a PSGI perl web server that has unique features
@@ -1009,13 +996,12 @@ and UNIX socket support.")
     (arguments
      `(#:configure-flags
        (list  "--disable-plugin"         ;NPAPI plugins are obsolete nowadays.
-             (string-append "BIN_BASH=" (assoc-ref %build-inputs "bash")
-                            "/bin/bash")
+              (string-append "BIN_BASH="
+                             (search-input-file %build-inputs "/bin/bash"))
              (string-append "--with-jdk-home=" (assoc-ref %build-inputs "jdk")))))
     (outputs '("out" "doc"))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("zip" ,zip)))
+     (list pkg-config zip))
     (inputs
      `(("gtk+" ,gtk+)
        ("jdk" ,icedtea "jdk")))
@@ -1032,7 +1018,7 @@ libraries for working with JNLP applets.")
 (define-public jansson
   (package
     (name "jansson")
-    (version "2.12")
+    (version "2.13.1")
     (source (origin
              (method url-fetch)
              (uri
@@ -1040,7 +1026,7 @@ libraries for working with JNLP applets.")
                              version ".tar.bz2"))
              (sha256
               (base32
-               "1lp1mv8pjp5yziws66cy0dhpcam4bbjqhffk13v4vgdybp674pb4"))))
+               "1g8h18vh8gyxlwfmvdivdp1siad26ywj5zr4j4avgdyjg7wa147f"))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags '("--disable-static")))
@@ -1185,7 +1171,7 @@ project)
          (add-before 'check 'render-offscreen
            (lambda _ (setenv "QT_QPA_PLATFORM" "offscreen") #t)))))
     (inputs
-     `(("qtbase" ,qtbase-5)))
+     (list qtbase-5))
     (home-page "http://qjson.sourceforge.net")
     (synopsis "Library that maps JSON data to QVariant objects")
     (description "QJson is a Qt-based library that maps JSON data to
@@ -1209,8 +1195,7 @@ instances, while JSON's objects will be mapped to @code{QVariantMap}.")
                 "1b2jdqs526ac635yb2whm049spcsk7almnnr6r5b4yqhq922anw3"))))
     (build-system gnu-build-system)
     (inputs
-     `(("qca" ,qca)
-       ("qtbase" ,qtbase-5)))
+     (list qca qtbase-5))
     (arguments
      '(#:tests? #f                      ;FIXME: some tests are failing
        #:phases
@@ -1348,9 +1333,7 @@ efficiently.  It gives the application developer no more than 4 methods.")
                (invoke (string-append (assoc-ref outputs "out") "/bin/ktImportText")
                        "ec.tsv")))))))
    (inputs
-    `(("curl" ,curl)
-      ("make" ,gnu-make)
-      ("perl" ,perl)))
+    (list curl gnu-make perl))
    (home-page "https://github.com/marbl/Krona/wiki")
    (synopsis "Hierarchical data exploration with zoomable HTML5 pie charts")
    (description
@@ -1450,9 +1433,8 @@ parser written in ANSI C and a small validating JSON generator.")
      ;; doesn't use 'add_test', and it's unclear how to run the test suite.
      '(#:tests? #f))
 
-    (native-inputs `(("perl" ,perl)))             ; to build the HTML doc
-    (inputs `(("zlib" ,zlib)
-              ("openssl" ,openssl)))
+    (native-inputs (list perl))             ; to build the HTML doc
+    (inputs (list zlib openssl))
     (synopsis "WebSockets library written in C")
     (description
      "Libwebsockets is a library that allows C programs to establish client
@@ -1522,8 +1504,7 @@ other systems that want to manipulate WebAssembly files.")
         (base32 "1ww4fhl8qf12hkv6jaild8zzsygdspxm1gqpk2f63gv1xfi31wpm"))
        (patches (search-patches "websocketpp-fix-for-cmake-3.15.patch"))))
     (build-system cmake-build-system)
-    (inputs `(("boost" ,boost)
-              ("openssl" ,openssl)))
+    (inputs (list boost openssl))
     (arguments '(#:configure-flags '("-DBUILD_TESTS=ON")
                  #:phases
                  (modify-phases %standard-phases
@@ -1557,14 +1538,22 @@ high performance.")
     (build-system gnu-build-system)
     (arguments
      ;; Parallel builds don't reliably succeed.
-     `(#:parallel-build? #f))
+     `(#:parallel-build? #f
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-sphinx-error
+           ;; XXX: Remove in next version: fix applied upstream.  See
+           ;; <https://github.com/tatsuhiro-t/wslay/commit/43fda1207ea5977043630500e0c8e77b98b35320>.
+           (lambda _
+             (substitute* "doc/sphinx/conf.py.in"
+               (("add_stylesheet") "add_css_file")))))))
     (native-inputs
-     `(("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("cunit" ,cunit)                 ; for tests
-       ("libtool" ,libtool)
-       ("pkg-config" ,pkg-config)
-       ("python-sphinx" ,python-sphinx)))
+     (list autoconf
+           automake
+           cunit ; for tests
+           libtool
+           pkg-config
+           python-sphinx))
     (home-page "https://tatsuhiro-t.github.io/wslay/")
     (synopsis "C WebSocket library")
     (description "@code{Wslay} is an event-based C library for the WebSocket
@@ -1593,8 +1582,7 @@ perform the opening handshake in HTTP.")
        ;; For tests.
        ("python" ,python-wrapper)))
     (inputs
-     `(("libidn2" ,libidn2)
-       ("libunistring" ,libunistring)))
+     (list libidn2 libunistring))
     (home-page "https://github.com/rockdaboot/libpsl")
     (synopsis "C library for the Publix Suffix List")
     (description
@@ -1641,9 +1629,7 @@ UTS#46.")
                       (setenv "AUTOMAKE" "automake --foreign")
                       (invoke "autoreconf" "-vfi"))))))
     (native-inputs
-     `(("automake" ,automake)
-       ("autoconf" ,autoconf)
-       ("libtool" ,libtool)))
+     (list automake autoconf libtool))
     (synopsis "HTML validator and tidier")
     (description "HTML Tidy is a command-line tool and C library that can be
 used to validate and fix HTML data.")
@@ -1725,7 +1711,7 @@ and other data, for distribution on the web.")
              ;; (setenv "XML_DEBUG_CATALOG" "1")
              #t)))))
     (native-inputs
-     `(("perl" ,perl)))                 ; for tests
+     (list perl))                 ; for tests
     (home-page "https://tinyproxy.github.io/")
     (synopsis "Light-weight HTTP/HTTPS proxy daemon")
     (description "Tinyproxy is a light-weight HTTP/HTTPS proxy
@@ -1748,7 +1734,7 @@ unavailable.")
        (sha256
         (base32
          "05g09sg9qkkhnc2mxldm1w1xkxzs2ylybkjzs28w8ydbjc3pand2"))))
-    (native-inputs `(("texinfo" ,texinfo)))
+    (native-inputs (list texinfo))
     (build-system gnu-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
@@ -1786,10 +1772,9 @@ of people.")
      `(#:tests? #f)) ; FIXME: 2 out of 6 tests fail with "ImportError: No module
      ; named 'stubout'". The tests can be run by replacing the check phase with
      ; the command "python setup.py nosetests --verbosity=3".
-    (native-inputs `(; Required for tests:
-                     ("python-mox3" ,python-mox3)
-                     ("python-nose" ,python-nose)))
-    (propagated-inputs `(("python-numpy" ,python-numpy)))
+    (native-inputs (list ; Required for tests:
+                         python-mox3 python-nose))
+    (propagated-inputs (list python-numpy))
     (home-page "https://github.com/novnc/websockify")
     (synopsis "WebSockets support for any application/server")
     (description "Websockify translates WebSockets traffic to normal socket
@@ -1814,7 +1799,7 @@ directions.")
     (arguments
      `(#:configure-flags '("--with-gnutls")
        #:tests? #f))                         ; no test target
-    (native-inputs `(("flex" ,flex)))
+    (native-inputs (list flex))
     (inputs `(("gnutls" ,gnutls)
               ("libcrypt" ,libgcrypt)))
     (home-page "https://www.gedanken.org.uk/software/wwwoffle/")
@@ -1839,10 +1824,9 @@ changes, and much more.")
                 "07w1aq8y8wld43wmbk2q8134p3bfkp2vma78mmsfgw2jn1bh3xhd"))))
     (build-system gnu-build-system)
     (arguments '(#:configure-flags '("--enable-nss")))
-    (native-inputs `(("pkg-config" ,pkg-config)))
+    (native-inputs (list pkg-config))
     (propagated-inputs
-     `(("curl" ,curl)
-       ("nss" ,nss)))
+     (list curl nss))
     (home-page "https://sourceforge.net/projects/liboauth")
     (synopsis "C library implementing the OAuth API")
     (description
@@ -1886,14 +1870,14 @@ parse media stream properties.")
        (sha256
         (base32 "00x9gbmzc5cns0gnfag0hsphcr3cb33vbbb9s7ppvvd6bxz2z1mm"))))
     (build-system gnu-build-system)
-    (native-inputs `(("pkg-config" ,pkg-config)))
+    (native-inputs (list pkg-config))
     (inputs
-     `(("curl" ,curl)
-       ("cyrus-sasl" ,cyrus-sasl)
-       ("libquvi-scripts" ,libquvi-scripts)
-       ("lua" ,lua-5.1)
-       ("openssl" ,openssl)
-       ("zlib" ,zlib)))
+     (list curl
+           cyrus-sasl
+           libquvi-scripts
+           lua-5.1
+           openssl
+           zlib))
     (arguments
      ;; Lua provides no .pc file, so add CFLAGS/LIBS manually.
      '(#:configure-flags
@@ -1920,10 +1904,9 @@ URLs and extracting their actual media files.")
        (sha256
         (base32 "09lhl6dv5zpryasx7yjslfrcdcqlsbwapvd5lg7w6sm5x5n3k8ci"))))
     (build-system gnu-build-system)
-    (native-inputs `(("pkg-config" ,pkg-config)))
+    (native-inputs (list pkg-config))
     (inputs
-     `(("curl" ,curl)
-       ("libquvi" ,libquvi)))
+     (list curl libquvi))
     (home-page "http://quvi.sourceforge.net/")
     (synopsis "Media stream URL parser")
     (description "quvi is a command-line-tool suite to extract media files
@@ -1944,13 +1927,11 @@ from streaming URLs.  It is a command-line wrapper for the libquvi library.")
         (base32 "1k47gbgpp52049andr28y28nbwh9m36bbb0g8p0aka3pqlhjv72l"))))
     (build-system scons-build-system)
     (propagated-inputs
-     `(("apr" ,apr)
-       ("apr-util" ,apr-util)
-       ("openssl" ,openssl)))
+     (list apr apr-util openssl))
     (inputs
-     `(;; TODO: Fix build with gss.
-       ;;("gss" ,gss)
-       ("zlib" ,zlib)))
+     (list ;; TODO: Fix build with gss.
+           ;;("gss" ,gss)
+           zlib))
     (arguments
      `(#:scons-flags (list (string-append "APR=" (assoc-ref %build-inputs "apr"))
                            (string-append "APU=" (assoc-ref %build-inputs "apr-util"))
@@ -2031,9 +2012,7 @@ minimum to provide high performance operation.")
              (setenv "LIBSASS_VERSION" ,version)
              #t)))))
     (native-inputs
-     `(("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)))
+     (list autoconf automake libtool))
     (home-page "https://sass-lang.com/libsass")
     (synopsis "SASS Compiler, implemented as a C/C++ library")
     (description
@@ -2084,7 +2063,7 @@ stylesheets, you'll need to use another program that uses this library,
              (setenv "SASSC_VERSION" ,version)
              #t)))))
     (inputs
-     `(("libsass" ,libsass)))
+     (list libsass))
     (synopsis "CSS pre-processor")
     (description "SassC is a compiler written in C for the CSS pre-processor
 language known as SASS.")
@@ -2098,21 +2077,16 @@ language known as SASS.")
     (inherit sassc)
     (name "sassc")
     (inputs
-     `(("libsass" ,
-        (package
-          (inherit libsass)
-          (name "libsass")
-          (version "3.5.5")
-          (source
-           (origin
-             (method git-fetch)
-             (uri (git-reference
-                   (url "https://github.com/sass/libsass")
-                   (commit version)))
-             (file-name (git-file-name name version))
-             (sha256
-              (base32
-               "0830pjcvhzxh6yixj82x5k5r1xnadjqzi16kp53213icbly0r9ma"))))))))
+     (list (package (inherit libsass)
+                    (name "libsass")
+                    (version "3.5.5")
+                    (source (origin (method git-fetch)
+                                    (uri (git-reference (url
+                                                             "https://github.com/sass/libsass")
+                                                        (commit version)))
+                                    (file-name (git-file-name name version))
+                                    (sha256 (base32
+                                                    "0830pjcvhzxh6yixj82x5k5r1xnadjqzi16kp53213icbly0r9ma")))))))
     (properties '((hidden? . #t)))))
 
 
@@ -2129,13 +2103,10 @@ language known as SASS.")
         (base32 "05xcl7j65vakx7x79jqjikyw0nzf60bc2w6hhc0q5sklxq1ral4l"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-http-message" ,perl-http-message)
-       ("perl-module-build-tiny" ,perl-module-build-tiny)
-       ("perl-test-mocktime" ,perl-test-mocktime)
-       ("perl-try-tiny" ,perl-try-tiny)
-       ("perl-uri" ,perl-uri)))
+     (list perl-http-message perl-module-build-tiny perl-test-mocktime
+           perl-try-tiny perl-uri))
     (propagated-inputs
-     `(("perl-posix-strftime-compiler" ,perl-posix-strftime-compiler)))
+     (list perl-posix-strftime-compiler))
     (arguments `(#:tests? #f))          ; TODO: Timezone test failures
     (home-page "https://metacpan.org/release/Apache-LogFormat-Compiler")
     (synopsis "Compile a log format string to perl-code")
@@ -2164,8 +2135,7 @@ to perl-code, for faster generation of access_log lines.")
            ;; versions of perl-authen-sasl.
            (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t)))))
     (propagated-inputs
-     `(("perl-digest-hmac" ,perl-digest-hmac)
-       ("perl-gssapi" ,perl-gssapi)))
+     (list perl-digest-hmac perl-gssapi))
     (home-page "https://metacpan.org/release/Authen-SASL")
     (synopsis "SASL authentication framework")
     (description "Authen::SASL provides an SASL authentication framework.")
@@ -2186,12 +2156,9 @@ to perl-code, for faster generation of access_log lines.")
          "0j1rrld13cjk7ks92b5hv3xw4rfm2lvmksb4rlzd8mx0a0wj0rc5"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-http-request-ascgi" ,perl-http-request-ascgi)
-       ("perl-module-install" ,perl-module-install)))
+     (list perl-http-request-ascgi perl-module-install))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-data-visitor" ,perl-data-visitor)
-       ("perl-mro-compat" ,perl-mro-compat)))
+     (list perl-catalyst-runtime perl-data-visitor perl-mro-compat))
     (home-page "https://metacpan.org/release/Catalyst-Action-RenderView")
     (synopsis "Sensible default Catalyst action")
     (description "This Catalyst action implements a sensible default end
@@ -2211,20 +2178,19 @@ action, which will forward to the first available view.")
                 "086bykggzalbjfk0islac4b48g9s2ypj7y81d6ns1lq0aax1py6c"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-requires" ,perl-test-requires)
-       ("perl-module-install" ,perl-module-install)))
+     (list perl-test-requires perl-module-install))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-class-inspector" ,perl-class-inspector)
-       ("perl-config-general" ,perl-config-general)
-       ("perl-cpanel-json-xs" ,perl-cpanel-json-xs)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-moose" ,perl-moose)
-       ("perl-mro-compat" ,perl-mro-compat)
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)
-       ("perl-params-validate" ,perl-params-validate)
-       ("perl-uri-find" ,perl-uri-find)
-       ("perl-xml-simple" ,perl-xml-simple)))
+     (list perl-catalyst-runtime
+           perl-class-inspector
+           perl-config-general
+           perl-cpanel-json-xs
+           perl-libwww
+           perl-moose
+           perl-mro-compat
+           perl-namespace-autoclean
+           perl-params-validate
+           perl-uri-find
+           perl-xml-simple))
     (home-page "https://metacpan.org/release/Catalyst-Action-REST")
     (synopsis "Automated REST Method Dispatching")
     (description "This Action handles doing automatic method dispatching for
@@ -2249,19 +2215,12 @@ regular method.")
          "0i5ja7690fs9nhxcij6lw51j804sm8s06m5mvk1n8pi8jljrymvw"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-catalyst-plugin-authorization-roles"
-        ,perl-catalyst-plugin-authorization-roles)
-       ("perl-catalyst-plugin-session-state-cookie"
-        ,perl-catalyst-plugin-session-state-cookie)
-       ("perl-dbd-sqlite" ,perl-dbd-sqlite)
-       ("perl-module-install" ,perl-module-install)
-       ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst)))
+     (list perl-catalyst-plugin-authorization-roles
+           perl-catalyst-plugin-session-state-cookie perl-dbd-sqlite
+           perl-module-install perl-test-www-mechanize-catalyst))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-catalyst-plugin-authentication"
-        ,perl-catalyst-plugin-authentication)
-       ("perl-dbix-class" ,perl-dbix-class)
-       ("perl-catalyst-model-dbic-schema" ,perl-catalyst-model-dbic-schema)))
+     (list perl-catalyst-runtime perl-catalyst-plugin-authentication
+           perl-dbix-class perl-catalyst-model-dbic-schema))
     (home-page
      "https://metacpan.org/release/Catalyst-Authentication-Store-DBIx-Class")
     (synopsis "Storage class for Catalyst authentication using DBIx::Class")
@@ -2285,10 +2244,9 @@ DBIx::Class.")
          "0wfj4vnn2cvk6jh62amwlg050p37fcwdgrn9amcz24z6w4qgjqvz"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)))
+     (list perl-module-install))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-moose" ,perl-moose)))
+     (list perl-catalyst-runtime perl-moose))
     (home-page
      "https://metacpan.org/release/Catalyst-Component-InstancePerContext")
     (synopsis "Create only one instance of Moose component per context")
@@ -2309,24 +2267,23 @@ instance of a component on each request.")
         (base32 "1r8arq7sw37d0mjyfzkc3pg1a9plgydqbscryc8qpvba4swpljls"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-fatal" ,perl-test-fatal)))
+     (list perl-test-fatal))
     (propagated-inputs
-     `(("perl-catalyst-action-renderview" ,perl-catalyst-action-renderview)
-       ("perl-catalyst-plugin-configloader" ,perl-catalyst-plugin-configloader)
-       ("perl-catalyst-plugin-static-simple" ,perl-catalyst-plugin-static-simple)
-       ("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-config-general" ,perl-config-general)
-       ("perl-file-changenotify" ,perl-file-changenotify)
-       ("perl-file-copy-recursive" ,perl-file-copy-recursive)
-       ("perl-file-sharedir" ,perl-file-sharedir)
-       ("perl-module-install" ,perl-module-install)
-       ("perl-moose" ,perl-moose)
-       ("perl-moosex-emulate-class-accessor-fast"
-        ,perl-moosex-emulate-class-accessor-fast)
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)
-       ("perl-namespace-clean" ,perl-namespace-clean)
-       ("perl-path-class" ,perl-path-class)
-       ("perl-template-toolkit" ,perl-template-toolkit)))
+     (list perl-catalyst-action-renderview
+           perl-catalyst-plugin-configloader
+           perl-catalyst-plugin-static-simple
+           perl-catalyst-runtime
+           perl-config-general
+           perl-file-changenotify
+           perl-file-copy-recursive
+           perl-file-sharedir
+           perl-module-install
+           perl-moose
+           perl-moosex-emulate-class-accessor-fast
+           perl-namespace-autoclean
+           perl-namespace-clean
+           perl-path-class
+           perl-template-toolkit))
     (home-page "https://metacpan.org/release/Catalyst-Devel")
     (synopsis "Catalyst Development Tools")
     (description "The Catalyst-Devel distribution includes a variety of
@@ -2351,12 +2308,10 @@ modules.")
          "06jq1lmpq88rmp9zik5gqczg234xac0hiyc3l698iif7zsgcyb80"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-build" ,perl-module-build) ;needs Module::Build >= 0.4004
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)
-       ("perl-catalyst-runtime" ,perl-catalyst-runtime)))
+     (list perl-module-build ;needs Module::Build >= 0.4004
+           perl-namespace-autoclean perl-catalyst-runtime))
     (propagated-inputs
-     `(("perl-moose" ,perl-moose)
-       ("perl-text-simpletable" ,perl-text-simpletable)))
+     (list perl-moose perl-text-simpletable))
     (home-page "https://metacpan.org/release/Catalyst-DispatchType-Regex")
     (synopsis "Regex DispatchType for Catalyst")
     (description "Dispatch type managing path-matching behaviour using
@@ -2382,31 +2337,28 @@ when the dispatch type is first seen in your application.")
           "1spfjcjc0b9dv3k2gbanqj1m1cqzyxb32p76dhdwizzpbvpi3a96"))))
   (build-system perl-build-system)
   (native-inputs
-   `(("perl-dbd-sqlite" ,perl-dbd-sqlite)
-     ("perl-module-install" ,perl-module-install)
-     ("perl-test-exception" ,perl-test-exception)
-     ("perl-test-requires" ,perl-test-requires)))
+   (list perl-dbd-sqlite perl-module-install perl-test-exception
+         perl-test-requires))
   (propagated-inputs
-   `(("perl-carp-clan" ,perl-carp-clan)
-     ("perl-catalyst-component-instancepercontext"
-      ,perl-catalyst-component-instancepercontext)
-     ("perl-catalyst-runtime" ,perl-catalyst-runtime)
-     ("perl-catalystx-component-traits" ,perl-catalystx-component-traits)
-     ("perl-dbix-class" ,perl-dbix-class)
-     ("perl-dbix-class-cursor-cached" ,perl-dbix-class-cursor-cached)
-     ("perl-dbix-class-schema-loader" ,perl-dbix-class-schema-loader)
-     ("perl-hash-merge" ,perl-hash-merge)
-     ("perl-list-moreutils" ,perl-list-moreutils)
-     ("perl-module-runtime" ,perl-module-runtime)
-     ("perl-moose" ,perl-moose)
-     ("perl-moosex-markasmethods" ,perl-moosex-markasmethods)
-     ("perl-moosex-nonmoose" ,perl-moosex-nonmoose)
-     ("perl-moosex-types" ,perl-moosex-types)
-     ("perl-moosex-types-loadableclass" ,perl-moosex-types-loadableclass)
-     ("perl-namespace-autoclean" ,perl-namespace-autoclean)
-     ("perl-namespace-clean" ,perl-namespace-clean)
-     ("perl-tie-ixhash" ,perl-tie-ixhash)
-     ("perl-try-tiny" ,perl-try-tiny)))
+   (list perl-carp-clan
+         perl-catalyst-component-instancepercontext
+         perl-catalyst-runtime
+         perl-catalystx-component-traits
+         perl-dbix-class
+         perl-dbix-class-cursor-cached
+         perl-dbix-class-schema-loader
+         perl-hash-merge
+         perl-list-moreutils
+         perl-module-runtime
+         perl-moose
+         perl-moosex-markasmethods
+         perl-moosex-nonmoose
+         perl-moosex-types
+         perl-moosex-types-loadableclass
+         perl-namespace-autoclean
+         perl-namespace-clean
+         perl-tie-ixhash
+         perl-try-tiny))
   (home-page "https://metacpan.org/release/Catalyst-Model-DBIC-Schema")
   (synopsis "DBIx::Class::Schema Model Class")
   (description "This is a Catalyst Model for DBIx::Class::Schema-based
@@ -2427,10 +2379,8 @@ Models.")
          "0811rj45q4v2y8wka3wb9d5m4vbyhcmkvddf2wz4x69awzjbhgc7"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-datetime" ,perl-datetime)
-       ("perl-moose" ,perl-moose)
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)))
+     (list perl-catalyst-runtime perl-datetime perl-moose
+           perl-namespace-autoclean))
     (home-page "https://metacpan.org/release/Catalyst-Plugin-AccessLog")
     (synopsis "Request logging from within Catalyst")
     (description "This Catalyst plugin enables you to create \"access logs\"
@@ -2453,19 +2403,18 @@ for you.  It will work even with Catalyst debug logging turned off.")
          "0v6hb4r1wv3djrnqvnjcn3xx1scgqzx8nyjdg9lfc1ybvamrl0rn"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)))
+     (list perl-module-install))
     (propagated-inputs
-     `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
-       ("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-class-inspector" ,perl-class-inspector)
-       ("perl-moose" ,perl-moose)
-       ("perl-moosex-emulate-class-accessor-fast"
-        ,perl-moosex-emulate-class-accessor-fast)
-       ("perl-mro-compat" ,perl-mro-compat)
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)
-       ("perl-string-rewriteprefix" ,perl-string-rewriteprefix)
-       ("perl-test-exception" ,perl-test-exception)
-       ("perl-try-tiny" ,perl-try-tiny)))
+     (list perl-catalyst-plugin-session
+           perl-catalyst-runtime
+           perl-class-inspector
+           perl-moose
+           perl-moosex-emulate-class-accessor-fast
+           perl-mro-compat
+           perl-namespace-autoclean
+           perl-string-rewriteprefix
+           perl-test-exception
+           perl-try-tiny))
     (home-page "https://metacpan.org/release/Catalyst-Plugin-Authentication")
     (synopsis "Infrastructure plugin for the Catalyst authentication framework")
     (description "The authentication plugin provides generic user support for
@@ -2489,14 +2438,10 @@ system authorises them to do).")
          "0l83lkwmq0lngwh8b1rv3r719pn8w1gdbyhjqm74rnd0wbjl8h7f"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)
-       ("perl-test-exception" ,perl-test-exception)))
+     (list perl-module-install perl-test-exception))
     (propagated-inputs
-     `(("perl-catalyst-plugin-authentication"
-        ,perl-catalyst-plugin-authentication)
-       ("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-set-object" ,perl-set-object)
-       ("perl-universal-isa" ,perl-universal-isa)))
+     (list perl-catalyst-plugin-authentication perl-catalyst-runtime
+           perl-set-object perl-universal-isa))
     (home-page
      "https://metacpan.org/release/Catalyst-Plugin-Authorization-Roles")
     (synopsis "Role-based authorization for Catalyst")
@@ -2518,10 +2463,8 @@ authorization for Catalyst based on Catalyst::Plugin::Authentication.")
          "0llyj3v5nx9cx46jdbbvxf1lc9s9cxq5ml22xmx3wkb201r5qgaa"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
-       ("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-gd-securityimage" ,perl-gd-securityimage)
-       ("perl-http-date" ,perl-http-date)))
+     (list perl-catalyst-plugin-session perl-catalyst-runtime
+           perl-gd-securityimage perl-http-date))
     (home-page "https://metacpan.org/release/Catalyst-Plugin-Captcha")
     (synopsis "Captchas for Catalyst")
     (description "This plugin creates and validates Captcha images for
@@ -2542,13 +2485,10 @@ Catalyst.")
         (base32 "0w8r3bbxqnlykvra6sx3sh3wh8ylkj914xg5ql6nw11ddy56jaly"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-path-class" ,perl-path-class)
-       ("perl-module-install" ,perl-module-install)))
+     (list perl-path-class perl-module-install))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-config-any" ,perl-config-any)
-       ("perl-data-visitor" ,perl-data-visitor)
-       ("perl-mro-compat" ,perl-mro-compat)))
+     (list perl-catalyst-runtime perl-config-any perl-data-visitor
+           perl-mro-compat))
     (home-page "https://metacpan.org/release/Catalyst-Plugin-ConfigLoader")
     (synopsis "Load config files of various types")
     (description "This module will attempt to load find and load configuration
@@ -2569,18 +2509,15 @@ formats.")
         (base32 "0a451997zc2vjx7rvndgx1ldbrpic8sfbddyvncynh0zr8bhlqc5"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)
-       ("perl-test-deep" ,perl-test-deep)
-       ("perl-test-exception" ,perl-test-exception)))
+     (list perl-module-install perl-test-deep perl-test-exception))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-moose" ,perl-moose)
-       ("perl-moosex-emulate-class-accessor-fast"
-        ,perl-moosex-emulate-class-accessor-fast)
-       ("perl-mro-compat" ,perl-mro-compat)
-       ("perl-namespace-clean" ,perl-namespace-clean)
-       ("perl-object-signature" ,perl-object-signature)
-       ("perl-test-www-mechanize-psgi" ,perl-test-www-mechanize-psgi)))
+     (list perl-catalyst-runtime
+           perl-moose
+           perl-moosex-emulate-class-accessor-fast
+           perl-mro-compat
+           perl-namespace-clean
+           perl-object-signature
+           perl-test-www-mechanize-psgi))
     (home-page "https://metacpan.org/release/Catalyst-Plugin-Session")
     (synopsis "Catalyst generic session plugin")
     (description "This plugin links the two pieces required for session
@@ -2602,13 +2539,10 @@ management in web applications together: the state, and the store.")
          "1rvxbfnpf9x2pc2zgpazlcgdlr2dijmxgmcs0m5nazs0w6xikssb"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)))
+     (list perl-module-install))
     (propagated-inputs
-     `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
-       ("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-moose" ,perl-moose)
-       ("perl-mro-compat" ,perl-mro-compat)
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)))
+     (list perl-catalyst-plugin-session perl-catalyst-runtime perl-moose
+           perl-mro-compat perl-namespace-autoclean))
     (home-page
      "https://metacpan.org/release/Catalyst-Plugin-Session-State-Cookie")
     (synopsis "Maintain session IDs using cookies")
@@ -2633,13 +2567,12 @@ cookie mechanism.")
          "0x3j6zv3wr41jlwr6yb2jpmcx019ibyn11y8653ffnwhpzbpzsxs"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-cache-fastmmap" ,perl-cache-fastmmap)
-       ("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
-       ("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-moosex-emulate-class-accessor-fast"
-        ,perl-moosex-emulate-class-accessor-fast)
-       ("perl-mro-compat" ,perl-mro-compat)
-       ("perl-path-class" ,perl-path-class)))
+     (list perl-cache-fastmmap
+           perl-catalyst-plugin-session
+           perl-catalyst-runtime
+           perl-moosex-emulate-class-accessor-fast
+           perl-mro-compat
+           perl-path-class))
     (home-page
      "https://metacpan.org/release/Catalyst-Plugin-Session-Store-FastMmap")
     (synopsis "FastMmap session storage backend")
@@ -2662,11 +2595,9 @@ memory interprocess cache.  It is based on Cache::FastMmap.")
          "1b2ksz74cpigxqzf63rddar3vfmnbpwpdcbs11v0ml89pb8ar79j"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)))
+     (list perl-module-install))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-devel-stacktrace" ,perl-devel-stacktrace)
-       ("perl-mro-compat" ,perl-mro-compat)))
+     (list perl-catalyst-runtime perl-devel-stacktrace perl-mro-compat))
     (home-page "https://metacpan.org/release/Catalyst-Plugin-StackTrace")
     (synopsis "Stack trace on the Catalyst debug screen")
     (description "This plugin enhances the standard Catalyst debug screen by
@@ -2689,13 +2620,10 @@ number, file name, and code context surrounding the line number.")
          "0m4l627p2fvzr4i6sgdxhdvsx4wpa6qmaibsbxlg5x5yjs7k7drn"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)))
+     (list perl-module-install))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-mime-types" ,perl-mime-types)
-       ("perl-moose" ,perl-moose)
-       ("perl-moosex-types" ,perl-moosex-types)
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)))
+     (list perl-catalyst-runtime perl-mime-types perl-moose
+           perl-moosex-types perl-namespace-autoclean))
     (home-page "https://metacpan.org/release/Catalyst-Plugin-Static-Simple")
     (synopsis "Simple serving of static pages")
     (description "The Static::Simple plugin is designed to make serving static
@@ -2721,45 +2649,40 @@ MIME type directly to the browser, without being processed through Catalyst.")
          "001yk1i0xwn4v308qx15nvnp6v9qfdigdlvz1rgw5zpnq7kwnq1a"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-fatal" ,perl-test-fatal)))
+     (list perl-test-fatal))
     (propagated-inputs
-     `(("perl-cgi-simple" ,perl-cgi-simple)
-       ("perl-cgi-struct" ,perl-cgi-struct)
-       ("perl-class-c3-adopt-next" ,perl-class-c3-adopt-next)
-       ("perl-class-date" ,perl-class-date)
-       ("perl-class-load" ,perl-class-load)
-       ("perl-data-dump" ,perl-data-dump)
-       ("perl-http-body" ,perl-http-body)
-       ("perl-http-message" ,perl-http-message)
-       ("perl-json-maybexs" ,perl-json-maybexs)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-module-pluggable" ,perl-module-pluggable)
-       ("perl-moose" ,perl-moose)
-       ("perl-moosex-emulate-class-accessor-fast"
-        ,perl-moosex-emulate-class-accessor-fast)
-       ("perl-moosex-getopt" ,perl-moosex-getopt)
-       ("perl-moosex-methodattributes" ,perl-moosex-methodattributes)
-       ("perl-namespace-clean" ,perl-namespace-clean)
-       ("perl-path-class" ,perl-path-class)
-       ("perl-perlio-utf8-strict" ,perl-perlio-utf8_strict)
-       ("perl-plack" ,perl-plack)
-       ("perl-plack-middleware-fixmissingbodyinredirect"
-        ,perl-plack-middleware-fixmissingbodyinredirect)
-       ("perl-plack-middleware-methodoverride"
-        ,perl-plack-middleware-methodoverride)
-       ("perl-plack-middleware-removeredundantbody"
-        ,perl-plack-middleware-removeredundantbody)
-       ("perl-plack-middleware-reverseproxy"
-        ,perl-plack-middleware-reverseproxy)
-       ("perl-plack-test-externalserver" ,perl-plack-test-externalserver)
-       ("perl-safe-isa" ,perl-safe-isa)
-       ("perl-string-rewriteprefix" ,perl-string-rewriteprefix)
-       ("perl-text-simpletable" ,perl-text-simpletable)
-       ("perl-tree-simple" ,perl-tree-simple)
-       ("perl-tree-simple-visitorfactory" ,perl-tree-simple-visitorfactory)
-       ("perl-try-tiny" ,perl-try-tiny)
-       ("perl-uri" ,perl-uri)
-       ("perl-uri-ws" ,perl-uri-ws)))
+     (list perl-cgi-simple
+           perl-cgi-struct
+           perl-class-c3-adopt-next
+           perl-class-date
+           perl-class-load
+           perl-data-dump
+           perl-http-body
+           perl-http-message
+           perl-json-maybexs
+           perl-libwww
+           perl-module-pluggable
+           perl-moose
+           perl-moosex-emulate-class-accessor-fast
+           perl-moosex-getopt
+           perl-moosex-methodattributes
+           perl-namespace-clean
+           perl-path-class
+           perl-perlio-utf8_strict
+           perl-plack
+           perl-plack-middleware-fixmissingbodyinredirect
+           perl-plack-middleware-methodoverride
+           perl-plack-middleware-removeredundantbody
+           perl-plack-middleware-reverseproxy
+           perl-plack-test-externalserver
+           perl-safe-isa
+           perl-string-rewriteprefix
+           perl-text-simpletable
+           perl-tree-simple
+           perl-tree-simple-visitorfactory
+           perl-try-tiny
+           perl-uri
+           perl-uri-ws))
     (home-page "https://metacpan.org/release/Catalyst-Runtime")
     (synopsis "The Catalyst Framework Runtime")
     (description "Catalyst is a modern framework for making web applications.
@@ -2783,14 +2706,10 @@ run an application on the web, either by doing them itself, or by letting you
          "02kir63d5cs2ipj3fn1qlmmx3gqi1xqzrxfr4pv5vjhjgsm0zgx7"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-catalystx-roleapplicator" ,perl-catalystx-roleapplicator)
-       ("perl-http-message" ,perl-http-message)
-       ("perl-module-install" ,perl-module-install)))
+     (list perl-catalyst-runtime perl-catalystx-roleapplicator
+           perl-http-message perl-module-install))
     (propagated-inputs
-     `(("perl-moose" ,perl-moose)
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)
-       ("perl-uri" ,perl-uri)))
+     (list perl-moose perl-namespace-autoclean perl-uri))
     (home-page
      "https://metacpan.org/release/Catalyst-TraitFor-Request-ProxyBase")
     (synopsis "Replace request base with value passed by HTTP proxy")
@@ -2814,12 +2733,12 @@ replaced with the contents of the X-Request-Base header.")
          "1qgq6y9iwfbhbkbgpw9czang2ami6z8jk1zlagrzdisy4igqzkvs"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-module-install" ,perl-module-install)
-       ("perl-test-simple" ,perl-test-simple)
-       ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst)
-       ("perl-text-csv" ,perl-text-csv)
-       ("perl-xml-simple" ,perl-xml-simple)))
+     (list perl-catalyst-runtime
+           perl-module-install
+           perl-test-simple
+           perl-test-www-mechanize-catalyst
+           perl-text-csv
+           perl-xml-simple))
     (home-page "https://metacpan.org/release/Catalyst-View-Download")
     (synopsis "Download data in many formats")
     (description "The purpose of this module is to provide a method for
@@ -2841,12 +2760,9 @@ table based report in a variety of formats (CSV, HTML, etc.).")
          "1v4xkzazs743sc7cd1kxkbi99cf00a4dadyyancckcbpi9p3znn5"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)
-       ("perl-yaml" ,perl-yaml)))
+     (list perl-module-install perl-yaml))
     (inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-json-maybexs" ,perl-json-maybexs)
-       ("perl-mro-compat" ,perl-mro-compat)))
+     (list perl-catalyst-runtime perl-json-maybexs perl-mro-compat))
     (home-page "https://metacpan.org/release/Catalyst-View-JSON")
     (synopsis "Catalyst JSON view")
     (description "Catalyst::View::JSON is a Catalyst View handler that returns
@@ -2866,13 +2782,13 @@ stash data in JSON format.")
       (base32 "0jzgpkgq5pwq82zlb0nykdyk40dfpsyn9ilz91d0wpixgi9i5pr8"))))
   (build-system perl-build-system)
   (propagated-inputs
-   `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-     ("perl-class-accessor" ,perl-class-accessor)
-     ("perl-data-dump" ,perl-data-dump)
-     ("perl-mro-compat" ,perl-mro-compat)
-     ("perl-path-class" ,perl-path-class)
-     ("perl-template-timer" ,perl-template-timer)
-     ("perl-template-toolkit" ,perl-template-toolkit)))
+   (list perl-catalyst-runtime
+         perl-class-accessor
+         perl-data-dump
+         perl-mro-compat
+         perl-path-class
+         perl-template-timer
+         perl-template-toolkit))
   (home-page "https://metacpan.org/release/Catalyst-View-TT")
   (synopsis "Template View Class")
   (description "This module is a Catalyst view class for the Template
@@ -2893,16 +2809,14 @@ Toolkit.")
          "0iq4ci8m6g2c4g01fvdl568y7pjz28f3widk986v3pyhr7ll8j88"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-moose" ,perl-moose)
-       ("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-moosex-methodattributes" ,perl-moosex-methodattributes)))
+     (list perl-moose perl-catalyst-runtime perl-moosex-methodattributes))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-class-load" ,perl-class-load)
-       ("perl-moose" ,perl-moose)
-       ("perl-moosex-traits-pluggable" ,perl-moosex-traits-pluggable)
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)
-       ("perl-list-moreutils" ,perl-list-moreutils)))
+     (list perl-catalyst-runtime
+           perl-class-load
+           perl-moose
+           perl-moosex-traits-pluggable
+           perl-namespace-autoclean
+           perl-list-moreutils))
     (home-page "https://metacpan.org/release/CatalystX-Component-Traits")
     (synopsis "Trait Loading and Resolution for Catalyst Components")
     (description "Adds a \"COMPONENT\" in Catalyst::Component method to your
@@ -2926,9 +2840,7 @@ MooseX::Traits::Pluggable.")
          "0vwaapxn8g5hs2xp63c4dwv9jmapmji4272fakssvgc9frklg3p2"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-moose" ,perl-moose)
-       ("perl-moosex-relatedclassroles" ,perl-moosex-relatedclassroles)))
+     (list perl-catalyst-runtime perl-moose perl-moosex-relatedclassroles))
     (home-page "https://metacpan.org/release/CatalystX-RoleApplicator")
     (synopsis "Apply roles to Catalyst classes")
     (description "CatalystX::RoleApplicator applies roles to Catalyst
@@ -2950,13 +2862,10 @@ application classes.")
          "08jvibq4v8xjj0c3cr93h0w8w0c88ajwjn37xjy7ygxl9krlffp6"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)
-       ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst)))
+     (list perl-module-install perl-test-www-mechanize-catalyst))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-moose" ,perl-moose)
-       ("perl-namespace-autoclean" ,perl-namespace-autoclean)
-       ("starman" ,starman)))
+     (list perl-catalyst-runtime perl-moose perl-namespace-autoclean
+           starman))
     (home-page "https://metacpan.org/release/CatalystX-Script-Server-Starman")
     (synopsis "Catalyst development server with Starman")
     (description "This module provides a Catalyst extension to replace the
@@ -2976,11 +2885,9 @@ development server with Starman.")
         (base32 "1bxrpxv95js8yinicminxdg41xvd85haj2gvlywg3zqdb66smqy8"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-deep" ,perl-test-deep)
-       ("perl-test-nowarnings" ,perl-test-nowarnings)
-       ("perl-test-warn" ,perl-test-warn)))
+     (list perl-test-deep perl-test-nowarnings perl-test-warn))
     (propagated-inputs
-     `(("perl-html-parser" ,perl-html-parser)))
+     (list perl-html-parser))
     (home-page "https://metacpan.org/release/CGI")
     (synopsis "Handle Common Gateway Interface requests and responses")
     (description "CGI.pm is a stable, complete and mature solution for
@@ -3004,7 +2911,7 @@ headers.")
         (base32
          "163ixq9kninqq094z2rnkg9pv3bcmvjphlww4vksfrzhq3h9pjdf"))))
     (build-system perl-build-system)
-    (inputs `(("perl-cgi" ,perl-cgi)))
+    (inputs (list perl-cgi))
     (home-page
      "https://metacpan.org/release/CGI-FormBuilder")
     (synopsis
@@ -3030,8 +2937,8 @@ form-based applications.")
          "1xsl2pz1jrh127pq0b01yffnj4mnp9nvkp88h5mndrscq9hn8xa6"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-build" ,perl-module-build)))
-    (inputs `(("perl-cgi" ,perl-cgi)))
+     (list perl-module-build))
+    (inputs (list perl-cgi))
     (home-page
      "https://metacpan.org/release/CGI-Session")
     (synopsis
@@ -3054,10 +2961,8 @@ HTTP requests.")
         (base32 "13c7iwnnavky10ab87pi8jc1kqph03s0rhvj7myn7szhbfisc4gn"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-io-stringy" ,perl-io-stringy) ; for IO::Scalar
-       ("perl-module-build" ,perl-module-build)
-       ("perl-test-exception" ,perl-test-exception)
-       ("perl-test-nowarnings" ,perl-test-nowarnings)))
+     (list perl-io-stringy ; for IO::Scalar
+           perl-module-build perl-test-exception perl-test-nowarnings))
     (home-page "https://metacpan.org/release/CGI-Simple")
     (synopsis "CGI interface that is CGI.pm compliant")
     (description "CGI::Simple provides a relatively lightweight drop in
@@ -3079,7 +2984,7 @@ parameter parsing, file upload, cookie handling and header generation.")
          "0v4xq2qpryr7i6jngw1wpn8yr2kiib10yxp4aih90vfdznkqsgfi"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-deep" ,perl-test-deep)))
+     (list perl-test-deep))
     (home-page "https://metacpan.org/release/CGI-Struct")
     (synopsis "Build structures from CGI data")
     (description "This is a module for building structured data from CGI
@@ -3100,10 +3005,9 @@ inputs, in a manner reminiscent of how PHP does.")
          "0h6qqdg1yzqkdxp7hqlp0qa7d1y64nilgimxs79dys2ryjfpcknh"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-build" ,perl-module-build)))
+     (list perl-module-build))
     (propagated-inputs
-     `(("perl-datetime" ,perl-datetime)
-       ("perl-http-date" ,perl-http-date)))
+     (list perl-datetime perl-http-date))
     (home-page "https://metacpan.org/release/DateTime-Format-HTTP")
     (synopsis "Date conversion routines")
     (description "This module provides functions that deal with the date
@@ -3124,7 +3028,7 @@ formats used by the HTTP protocol.")
          "060jzf45dlwysw5wsm7av1wvpl06xgk415kwwpvv89r6wda3md5d"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-libwww" ,perl-libwww)))
+     (list perl-libwww))
     (home-page "https://metacpan.org/release/Digest-MD5-File")
     (synopsis "MD5 sums for files and urls")
     (description "Digest::MD5::File is a Perl extension for getting MD5 sums
@@ -3177,10 +3081,7 @@ with Encode::decode(locale => $string).")
          (add-after 'unpack 'set-env
            (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1"))))))
     (inputs
-     `(("perl-class-errorhandler" ,perl-class-errorhandler)
-       ("perl-html-parser" ,perl-html-parser)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-uri" ,perl-uri)))
+     (list perl-class-errorhandler perl-html-parser perl-libwww perl-uri))
     (home-page "https://metacpan.org/release/Feed-Find")
     (synopsis "Syndication feed auto-discovery")
     (description "@code{Feed::Find} implements feed auto-discovery for finding
@@ -3202,7 +3103,7 @@ RSS 0.91, RSS 1.0, RSS 2.0, Atom.")
                "0vmzw1mhv580flzkla80gvwfpficnhlbqr1dnlf9x50bw7n18k62"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-http-date" ,perl-http-date)))
+     (list perl-http-date))
     (license license:perl-license)
     (synopsis "Perl directory listing parser")
     (description
@@ -3225,17 +3126,17 @@ which can be used to parse directory listings.")
                 "perl-finance-quote-unuse-mozilla-ca.patch"))))
    (build-system perl-build-system)
    (propagated-inputs
-    `(("perl-cgi" ,perl-cgi)
-      ("perl-datetime" ,perl-datetime)
-      ("perl-html-parser" ,perl-html-parser)
-      ("perl-html-tableextract" ,perl-html-tableextract)
-      ("perl-html-tree" ,perl-html-tree)
-      ("perl-http-cookies" ,perl-http-cookies)
-      ("perl-http-message" ,perl-http-message)
-      ("perl-json" ,perl-json)
-      ("perl-libwww" ,perl-libwww)
-      ("perl-lwp-protocol-https" ,perl-lwp-protocol-https)
-      ("perl-uri" ,perl-uri)))
+    (list perl-cgi
+          perl-datetime
+          perl-html-parser
+          perl-html-tableextract
+          perl-html-tree
+          perl-http-cookies
+          perl-http-message
+          perl-json
+          perl-libwww
+          perl-lwp-protocol-https
+          perl-uri))
    (home-page "https://metacpan.org/release/Finance-Quote")
    (synopsis "Stock and mutual fund quotes")
    (description
@@ -3280,7 +3181,7 @@ described in RFC 2744.")
          "0axknss8c368r5i082yhkfj8mq0w4nglfrpcxcayyzzj13qimvzk"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-html-tree" ,perl-html-tree)))
+     (list perl-html-tree))
     (home-page "https://metacpan.org/release/HTML-Element-Extended")
     (synopsis "Manipulate tables of HTML::Element")
     (description
@@ -3301,11 +3202,8 @@ composed of HTML::Element style components.")
         (base32 "14i4ldyvdvhdhvfhh9kiq6z853q2f84biq8vcpv1k5w2r80wdiin"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-html-parser" ,perl-html-parser)
-       ("perl-html-tagset" ,perl-html-tagset)
-       ("perl-http-message" ,perl-http-message)
-       ("perl-lwp-mediatypes" ,perl-lwp-mediatypes)
-       ("perl-uri" ,perl-uri)))
+     (list perl-html-parser perl-html-tagset perl-http-message
+           perl-lwp-mediatypes perl-uri))
     (home-page "https://metacpan.org/release/HTML-Form")
     (synopsis "Perl class representing an HTML form element")
     (description "Objects of the HTML::Form class represents a single HTML
@@ -3328,14 +3226,14 @@ composed of HTML::Element style components.")
          "06p7w4zd42b2yh541mlzyqj40lwmvvn3fyqi8big4mf34la7m2jm"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-build" ,perl-module-build)
-       ("perl-test-cpan-meta" ,perl-test-cpan-meta)
-       ("perl-test-differences" ,perl-test-differences)
-       ("perl-test-eol" ,perl-test-eol)
-       ("perl-test-memory-cycle" ,perl-test-memory-cycle)
-       ("perl-test-notabs" ,perl-test-notabs)))
+     (list perl-module-build
+           perl-test-cpan-meta
+           perl-test-differences
+           perl-test-eol
+           perl-test-memory-cycle
+           perl-test-notabs))
     (inputs
-     `(("perl-html-parser" ,perl-html-parser)))
+     (list perl-html-parser))
     (home-page
      "https://metacpan.org/release/HTML-Scrubber")
     (synopsis
@@ -3357,9 +3255,7 @@ composed of HTML::Element style components.")
         (base32 "0lk02xpfxcg7ij4dvpsa4wjlzhmiizj0jfr3rwmdpbj69nvc93br"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-html-parser" ,perl-html-parser)
-       ("perl-html-tagset" ,perl-html-tagset)
-       ("perl-libwww" ,perl-libwww)))
+     (list perl-html-parser perl-html-tagset perl-libwww))
     (home-page "https://metacpan.org/release/HTML-Lint")
     (synopsis "Check for HTML errors in a string or file")
     (description "HTML::Lint is a pure-Perl HTML parser and checker for
@@ -3380,8 +3276,7 @@ syntactic legitmacy.")
          "01jimmss3q68a89696wmclvqwb2ybz6xgabpnbp6mm6jcni82z8a"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-html-element-extended" ,perl-html-element-extended)
-       ("perl-html-parser" ,perl-html-parser)))
+     (list perl-html-element-extended perl-html-parser))
     (home-page "https://metacpan.org/release/HTML-TableExtract")
     (synopsis "Extract contents from HTML tables")
     (description
@@ -3403,12 +3298,9 @@ in tables within an HTML document, either as text or encoded element trees.")
          "1gyvm4qlwm9y6hczkpnrdfl303ggbybr0nqxdjw09hii8yw4sdzh"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-build" ,perl-module-build)
-       ("perl-test-fatal" ,perl-test-fatal)))
+     (list perl-module-build perl-test-fatal))
     (propagated-inputs
-     `(("perl-html-parser" ,perl-html-parser)
-       ("perl-html-tagset" ,perl-html-tagset)
-       ("perl-libwww" ,perl-libwww)))
+     (list perl-html-parser perl-html-tagset perl-libwww))
     (home-page "https://metacpan.org/release/HTML-Tree")
     (synopsis "Work with HTML in a DOM-like tree structure")
     (description "This distribution contains a suite of modules for
@@ -3429,8 +3321,7 @@ representing, creating, and extracting information from HTML syntax trees.")
                "12v05ywlnsi9lc17z32k9jxx3sj1viy7y1wpl7n4az76v7hwfa7c"))))
     (build-system perl-build-system)
     (inputs
-     `(("perl-html-tagset" ,perl-html-tagset)
-       ("perl-http-message" ,perl-http-message)))
+     (list perl-html-tagset perl-http-message))
     (license license:perl-license)
     (synopsis "Perl HTML parser class")
     (description
@@ -3473,7 +3364,7 @@ kinds of HTML parsing operations.")
                 "17qjw8swj2q4b1ic285pndgrkmvpsqw0j68nhqzpk1daydhsyiv5"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-cgi" ,perl-cgi)))
+     (list perl-cgi))
     (home-page "https://metacpan.org/release/HTML-Template")
     (synopsis "HTML-like templates")
     (description
@@ -3500,10 +3391,9 @@ you to separate design from the data.")
          "15vj488i62mdp4ps9k77h39prj70i7anb6b0j8nm7l9vbdc2q3gw"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-deep" ,perl-test-deep)))
+     (list perl-test-deep))
     (propagated-inputs
-     `(("perl-file-temp" ,perl-file-temp)
-       ("perl-http-message" ,perl-http-message))) ;For HTTP::Headers
+     (list perl-file-temp perl-http-message)) ;For HTTP::Headers
     (home-page "https://metacpan.org/release/HTTP-Body")
     (synopsis "HTTP Body Parser")
     (description "HTTP::Body parses chunks of HTTP POST data and supports
@@ -3524,13 +3414,9 @@ and multipart/form-data.")
         (base32 "0jk0ps4i67dhhhwaxwwa9nkv3n6n5w44xlnwyzvk59735pwvyjh0"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-deep" ,perl-test-deep)
-       ("perl-test-requires" ,perl-test-requires)
-       ("perl-time-mock" ,perl-time-mock)
-       ("perl-uri" ,perl-uri)))
+     (list perl-test-deep perl-test-requires perl-time-mock perl-uri))
     (inputs
-     `(("perl-time-local" ,perl-time-local)
-       ("perl-http-date" ,perl-http-date)))
+     (list perl-time-local perl-http-date))
     (home-page "https://metacpan.org/release/HTTP-CookieJar")
     (synopsis "Minimalist HTTP user agent cookie jar")
     (description "This module implements a minimalist HTTP user agent cookie
@@ -3551,7 +3437,7 @@ jar in conformance with RFC 6265 <http://tools.ietf.org/html/rfc6265>.")
                "13rnz3233vbsfariya4njiyfaj6k94j6bvlyh3dmfmh24hpqgx77"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-http-message" ,perl-http-message)))
+     (list perl-http-message))
     (license license:perl-license)
     (synopsis "Perl HTTP cookie jars")
     (description
@@ -3574,8 +3460,7 @@ object knows about.")
                "1hmd2isrkilf0q0nkxms1q64kikjmcw9imbvrjgky6kh89vqdza3"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-http-message" ,perl-http-message)
-       ("perl-lwp-mediatypes" ,perl-lwp-mediatypes)))
+     (list perl-http-message perl-lwp-mediatypes))
     (license license:perl-license)
     (synopsis "Perl simple http server class")
     (description
@@ -3618,7 +3503,7 @@ used by the HTTP protocol (and then some more).")
        (base32
         "0z77nflj8zdcfg70kc93glq5kmd6qxn2nf7h70x4xhfg25wkvr1q"))))
     (build-system perl-build-system)
-    (native-inputs `(("perl-cgi" ,perl-cgi)))
+    (native-inputs (list perl-cgi))
     (home-page "https://metacpan.org/release/HTTP-Lite")
     (synopsis "Lightweight HTTP implementation")
     (description "@code{HTTP::Lite} is a stand-alone lightweight
@@ -3647,13 +3532,10 @@ processing of request data as it arrives.")
                "04lih0fn89jpyk74c4aq1rzq18h8v4zd3x0lik2r9dl8sdqd2q6h"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-try-tiny" ,perl-try-tiny)))
+     (list perl-try-tiny))
     (propagated-inputs
-     `(("perl-encode-locale" ,perl-encode-locale)
-       ("perl-http-date" ,perl-http-date)
-       ("perl-io-html" ,perl-io-html)
-       ("perl-lwp-mediatypes" ,perl-lwp-mediatypes)
-       ("perl-uri" ,perl-uri)))
+     (list perl-encode-locale perl-http-date perl-io-html
+           perl-lwp-mediatypes perl-uri))
     (license license:perl-license)
     (synopsis "Perl HTTP style message")
     (description
@@ -3674,7 +3556,7 @@ processing of request data as it arrives.")
                "05p053vjs5g91v5cmjnny7a3xzddz5k7vnjw81wfh01ilqg9qwhw"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-http-message" ,perl-http-message)))
+     (list perl-http-message))
     (license license:perl-license)
     (synopsis "Perl http content negotiation")
     (description
@@ -3700,8 +3582,7 @@ fields in the request.")
          "0idwq3jk595xil65lmxz128ha7s3r2n5zknisddpgwnqrghs3igq"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-http-message" ,perl-http-message)
-       ("perl-uri" ,perl-uri)))
+     (list perl-http-message perl-uri))
     (home-page "https://metacpan.org/release/HTTP-Parser")
     (synopsis "Parse HTTP/1.1 requests")
     (description "This is an HTTP request parser.  It takes chunks of text as
@@ -3724,7 +3605,7 @@ supported.")
          "02d84xq1mm53c7jl33qyb7v5w4372vydp74z6qj0vc96wcrnhkkr"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)))
+     (list perl-module-install))
     (home-page "https://metacpan.org/release/HTTP-Parser-XS")
     (synopsis "Fast HTTP request parser")
     (description "HTTP::Parser::XS is a fast, primitive HTTP request/response
@@ -3745,8 +3626,7 @@ parser.")
          "1smwmiarwcgq7vjdblnb6ldi2x1s5sk5p15p7xvm5byiqq3znnwl"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-class-accessor" ,perl-class-accessor)
-       ("perl-http-message" ,perl-http-message)))
+     (list perl-class-accessor perl-http-message))
     (home-page "https://metacpan.org/release/HTTP-Request-AsCGI")
     (synopsis "Set up a CGI environment from an HTTP::Request")
     (description "This module provides a convenient way to set up a CGI
@@ -3767,7 +3647,7 @@ environment from an HTTP::Request.")
          "0k6bg7k6mjixfzxdkkdrhqvaqmdhjszx0zsk8g0bimiby6j9z4yq"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-cgi" ,perl-cgi)))
+     (list perl-cgi))
     (arguments
      ;; See the discussion of a related tests issue at
      ;; https://lists.gnu.org/archive/html/guix-devel/2015-01/msg00346.html
@@ -3802,11 +3682,8 @@ http-based UI to your existing tools.")
          "11wkxxqj3ff84rgj9q2gzkdgscwp3fzj205846k9ycqinlpsmgfx"))))
     (build-system perl-build-system)
     (inputs
-     `(("perl-http-cookiejar" ,perl-http-cookiejar)
-       ("perl-io-socket-ip" ,perl-io-socket-ip)
-       ("perl-io-socket-ssl" ,perl-io-socket-ssl)
-       ("perl-mozilla-ca" ,perl-mozilla-ca)
-       ("perl-net-ssleay" ,perl-net-ssleay)))
+     (list perl-http-cookiejar perl-io-socket-ip perl-io-socket-ssl
+           perl-mozilla-ca perl-net-ssleay))
     (home-page "https://metacpan.org/release/HTTP-Tiny")
     (synopsis "HTTP/1.1 client")
     (description "This is a very simple HTTP/1.1 client, designed for doing
@@ -3830,8 +3707,7 @@ It supports proxies and redirection.  It also correctly resumes after EINTR.")
          "199sa722amvwhq0czjfb7psj3hbqmvni5vxkrm579r5943pg0rax"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-file-which" ,perl-file-which)
-       ("perl-ipc-run3" ,perl-ipc-run3)))
+     (list perl-file-which perl-ipc-run3))
     (home-page "https://metacpan.org/release/HTTP-Tinyish")
     (synopsis "@code{HTTP::Tiny} compatible HTTP client wrappers")
     (description
@@ -3874,7 +3750,7 @@ algorithm specified in section 8.2.2.1 of the draft standard.")
        (sha256
         (base32 "0ihlpxrkq1xrvhnq52nhghanskic718ch8kpp642afgq72i4b6l4"))))
     (build-system perl-build-system)
-    (native-inputs `(("perl-module-build" ,perl-module-build)))
+    (native-inputs (list perl-module-build))
     (home-page "https://metacpan.org/release/IO-Socket-IP")
     (synopsis "Family-neutral IP socket supporting both IPv4 and IPv6")
     (description "This module provides a protocol-independent way to use IPv4
@@ -3884,21 +3760,19 @@ and IPv6 sockets, intended as a replacement for IO::Socket::INET.")
 (define-public perl-io-socket-ssl
   (package
     (name "perl-io-socket-ssl")
-    (version "2.066")
+    (version "2.068")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://cpan/authors/id/S/SU/SULLR/"
                                   "IO-Socket-SSL-" version ".tar.gz"))
               (sha256
                (base32
-                "1kgbws7dwp2hh16qid7169dfkhmcwg7dz9ffbm6k0id5h53hciqd"))
-              (patches (search-patches
-                        "perl-io-socket-ssl-openssl-1.0.2f-fix.patch"))))
+                "1ycgzg1l7p07y5wc0vzgnj122vm51p5aqpi4s56pp0piaq0gq824"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-net-ssleay" ,perl-net-ssleay)
-       ;; for IDN support
-       ("perl-uri" ,perl-uri)))
+     (list perl-net-ssleay
+           ;; for IDN support
+           perl-uri))
     (synopsis "Nearly transparent SSL encapsulation for IO::Socket::INET")
     (description
      "IO::Socket::SSL makes using SSL/TLS much easier by wrapping the
@@ -3923,22 +3797,20 @@ select or poll.")
                "0869hn711d6fd6yil8p88wij6p1zdrbnycy7p9p176q39ajd7l61"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-fatal" ,perl-test-fatal)
-       ("perl-test-needs" ,perl-test-needs)
-       ("perl-test-requiresinternet" ,perl-test-requiresinternet)))
+     (list perl-test-fatal perl-test-needs perl-test-requiresinternet))
     (propagated-inputs
-     `(("perl-encode-locale" ,perl-encode-locale)
-       ("perl-file-listing" ,perl-file-listing)
-       ("perl-html-parser" ,perl-html-parser)
-       ("perl-http-cookies" ,perl-http-cookies)
-       ("perl-http-daemon" ,perl-http-daemon)
-       ("perl-http-date" ,perl-http-date)
-       ("perl-http-message" ,perl-http-message)
-       ("perl-http-negotiate" ,perl-http-negotiate)
-       ("perl-net-http" ,perl-net-http)
-       ("perl-try-tiny" ,perl-try-tiny)
-       ("perl-uri" ,perl-uri)
-       ("perl-www-robotrules" ,perl-www-robotrules)))
+     (list perl-encode-locale
+           perl-file-listing
+           perl-html-parser
+           perl-http-cookies
+           perl-http-daemon
+           perl-http-date
+           perl-http-message
+           perl-http-negotiate
+           perl-net-http
+           perl-try-tiny
+           perl-uri
+           perl-www-robotrules))
     (license license:perl-license)
     (synopsis "Perl modules for the WWW")
     (description
@@ -3965,10 +3837,9 @@ help you implement simple HTTP servers.")
          "176f6vbk1018i0y7xj9d406ndbjgwzan2j9nihxnsahzg2vr2vz2"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-libwww" ,perl-libwww)
-       ("perl-uri" ,perl-uri)))
+     (list perl-libwww perl-uri))
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)))
+     (list perl-module-install))
     (home-page "https://metacpan.org/release/LWP-Online")
     (synopsis "Checks whether your process has access to the web")
     (description "This module attempts to answer, as accurately as it can, one
@@ -3993,7 +3864,7 @@ not have DNS.  We might not have a network card at all!")
                "1n8rg6csv3dsvymg06cmxipimr6cb1g9r903ghm1qsmiv89cl6wg"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-fatal" ,perl-test-fatal)))
+     (list perl-test-fatal))
     (license license:perl-license)
     (synopsis "Perl module to guess the media type for a file or a URL")
     (description
@@ -4017,12 +3888,9 @@ exists it is used instead.")
     (build-system perl-build-system)
     (native-inputs
      ;; For tests.
-     `(("perl-test-requiresinternet" ,perl-test-requiresinternet)))
+     (list perl-test-requiresinternet))
     (propagated-inputs
-     `(("perl-io-socket-ssl" ,perl-io-socket-ssl)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-mozilla-ca" ,perl-mozilla-ca)
-       ("perl-net-http" ,perl-net-http)))
+     (list perl-io-socket-ssl perl-libwww perl-mozilla-ca perl-net-http))
     (home-page "https://metacpan.org/release/LWP-Protocol-https")
     (synopsis "HTTPS support for LWP::UserAgent")
     (description "The LWP::Protocol::https module provides support for using
@@ -4043,7 +3911,7 @@ https schemed URLs with LWP.")
          "1hw7wy7f82kl61xjwkgmhv1ixgg56dhgfr45wxn6ahc0qys5mkix"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-libwww" ,perl-libwww)))
+     (list perl-libwww))
     (home-page "https://metacpan.org/release/LWP-UserAgent-Cached")
     (synopsis "Simple caching for LWP::UserAgent")
     (description "LWP::UserAgent::Cached is an LWP::UserAgent subclass with
@@ -4065,7 +3933,7 @@ instead of making an HTTP request.")
          "0lyvbpjng7yfvyha9rp2y2c6liz5hhplmd2grc8jlsfkih7dbn06"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-libwww" ,perl-libwww)))
+     (list perl-libwww))
     (home-page "https://metacpan.org/release/LWP-UserAgent-Determined")
     (synopsis "Virtual browser that retries errors")
     (description "LWP::UserAgent::Determined works just like LWP::UserAgent,
@@ -4089,10 +3957,10 @@ and retry a few times.")
         "0gfhw3jbs25yya2dryv8xvyn9myngcfcmsybj7gkq62fnznil16c"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-libwww" ,perl-libwww)
-       ;; Users should instead make sure SSL_ca_path is set properly.
-       ;; ("perl-mozilla-ca" ,perl-mozilla-ca)
-       ("perl-net-dns" ,perl-net-dns)))
+     (list perl-libwww
+           ;; Users should instead make sure SSL_ca_path is set properly.
+           ;; ("perl-mozilla-ca" ,perl-mozilla-ca)
+           perl-net-dns))
     (home-page "https://metacpan.org/release/LWPx-ParanoidAgent")
     (synopsis "Security enhanced subclass of LWP::UserAgent")
     (description "@code{LWPx::ParanoidAgent} is a class subclassing
@@ -4119,28 +3987,26 @@ is limited to http and https.")
                  "perl-net-amazon-s3-moose-warning.patch"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-libwww" ,perl-libwww)
-       ("perl-test-exception" ,perl-test-exception)))
+     (list perl-libwww perl-test-exception))
     (propagated-inputs
-     `(("perl-data-stream-bulk" ,perl-data-stream-bulk)
-       ("perl-datetime-format-http" ,perl-datetime-format-http)
-       ("perl-digest-hmac" ,perl-digest-hmac)
-       ("perl-digest-md5-file" ,perl-digest-md5-file)
-       ("perl-file-find-rule" ,perl-file-find-rule)
-       ("perl-http-date" ,perl-http-date)
-       ("perl-http-message" ,perl-http-message)
-       ("perl-lwp-useragent-determined" ,perl-lwp-useragent-determined)
-       ("perl-mime-types" ,perl-mime-types)
-       ("perl-moose" ,perl-moose)
-       ("perl-moosex-strictconstructor" ,perl-moosex-strictconstructor)
-       ("perl-moosex-types-datetime-morecoercions"
-        ,perl-moosex-types-datetime-morecoercions)
-       ("perl-path-class" ,perl-path-class)
-       ("perl-regexp-common" ,perl-regexp-common)
-       ("perl-term-encoding" ,perl-term-encoding)
-       ("perl-term-progressbar-simple" ,perl-term-progressbar-simple)
-       ("perl-uri" ,perl-uri)
-       ("perl-xml-libxml" ,perl-xml-libxml)))
+     (list perl-data-stream-bulk
+           perl-datetime-format-http
+           perl-digest-hmac
+           perl-digest-md5-file
+           perl-file-find-rule
+           perl-http-date
+           perl-http-message
+           perl-lwp-useragent-determined
+           perl-mime-types
+           perl-moose
+           perl-moosex-strictconstructor
+           perl-moosex-types-datetime-morecoercions
+           perl-path-class
+           perl-regexp-common
+           perl-term-encoding
+           perl-term-progressbar-simple
+           perl-uri
+           perl-xml-libxml))
     (home-page "https://metacpan.org/release/Net-Amazon-S3")
     (synopsis "Perl interface to Amazon S3")
     (description "This module provides a Perlish interface to Amazon S3.")
@@ -4160,8 +4026,7 @@ is limited to http and https.")
                "1i7fk6q1iaxzgf82mjd5hg77hvy7dbb79488cijg16dyfrds6nip"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-io-socket-ssl" ,perl-io-socket-ssl)
-       ("perl-uri" ,perl-uri)))
+     (list perl-io-socket-ssl perl-uri))
     (license license:perl-license)
     (synopsis "Perl low-level HTTP connection (client)")
     (description
@@ -4212,7 +4077,7 @@ or to multiple server ports.")
          "001a6dcfahf7kkyirqkc8jd4fh4fkal7n7vm9c4dblqrvmdc8abv"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-io-socket-ssl" ,perl-io-socket-ssl)))
+     (list perl-io-socket-ssl))
     (home-page "https://metacpan.org/release/Net-SMTP-SSL")
     (synopsis "SSL support for Net::SMTP")
     (description "SSL support for Net::SMTP.")
@@ -4232,22 +4097,21 @@ or to multiple server ports.")
          "081jg0xddzpg2anmqi9i6d7vs6c8z7k557bf8xl6vgb3h95pin5w"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-requires" ,perl-test-requires)
-       ("perl-file-sharedir-install" ,perl-file-sharedir-install)))
+     (list perl-test-requires perl-file-sharedir-install))
     (propagated-inputs
-     `(("perl-apache-logformat-compiler" ,perl-apache-logformat-compiler)
-       ("perl-devel-stacktrace" ,perl-devel-stacktrace)
-       ("perl-devel-stacktrace-ashtml" ,perl-devel-stacktrace-ashtml)
-       ("perl-file-sharedir" ,perl-file-sharedir)
-       ("perl-hash-multivalue" ,perl-hash-multivalue)
-       ("perl-http-body" ,perl-http-body)
-       ("perl-http-message" ,perl-http-message)
-       ("perl-http-tiny" ,perl-http-tiny)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-stream-buffered" ,perl-stream-buffered)
-       ("perl-test-tcp" ,perl-test-tcp)
-       ("perl-try-tiny" ,perl-try-tiny)
-       ("perl-uri" ,perl-uri)))
+     (list perl-apache-logformat-compiler
+           perl-devel-stacktrace
+           perl-devel-stacktrace-ashtml
+           perl-file-sharedir
+           perl-hash-multivalue
+           perl-http-body
+           perl-http-message
+           perl-http-tiny
+           perl-libwww
+           perl-stream-buffered
+           perl-test-tcp
+           perl-try-tiny
+           perl-uri))
     (home-page "https://metacpan.org/release/Plack")
     (synopsis "Perl Superglue for Web frameworks and servers (PSGI toolkit)")
     (description "Plack is a set of tools for using the PSGI stack.  It
@@ -4271,10 +4135,9 @@ WSGI.")
          "0xf2visi16hgwgyp9q0cjr10ikbn474hjia5mj8mb2scvbkrbni8"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)
-       ("perl-test-requires" ,perl-test-requires)))
+     (list perl-module-install perl-test-requires))
     (propagated-inputs
-     `(("perl-plack" ,perl-plack)))
+     (list perl-plack))
     (home-page "https://metacpan.org/release/Plack-Middleware-Deflater")
     (synopsis "Compress response body with Gzip or Deflate")
     (description
@@ -4300,9 +4163,8 @@ servers.")
          "14dkrmccq7a5vpymx5dv8032gfcvhsw2i6v5sh3c4ym5ymlx08kc"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-html-parser" ,perl-html-parser) ;for HTML::Entities
-       ("perl-http-message" ,perl-http-message)
-       ("perl-plack" ,perl-plack)))     ;for Plack::Test
+     (list perl-html-parser ;for HTML::Entities
+           perl-http-message perl-plack))     ;for Plack::Test
     (home-page
      "https://metacpan.org/release/Plack-Middleware-FixMissingBodyInRedirect")
     (synopsis "Plack::Middleware which sets body for redirect response")
@@ -4324,9 +4186,9 @@ already set.")
         (base32 "1wdmmav3rbhv49zpw311zrxxqmg1fz3f3q9src0ypgs8zcp5myyv"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-build" ,perl-module-build)))
+     (list perl-module-build))
     (propagated-inputs
-     `(("perl-plack" ,perl-plack)))
+     (list perl-plack))
     (home-page "https://metacpan.org/release/Plack-Middleware-MethodOverride")
     (synopsis "Override REST methods to Plack apps via POST")
     (description "This middleware allows for POST requests that pretend to be
@@ -4349,7 +4211,7 @@ can say what method it actually meant.")
         (base32 "0zh83001rn5aqwpc1pn3di2h3ibzlf2dvkmkv05hnadpss9mzm40"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-plack" ,perl-plack)))
+     (list perl-plack))
     (home-page
      "https://metacpan.org/release/Plack-Middleware-RemoveRedundantBody")
     (synopsis "Plack::Middleware which removes body for HTTP response")
@@ -4371,9 +4233,9 @@ required.")
         (base32 "0a512n62pnk5ayj3zdzyj50iy1qi8nwh6ygks2h7nrh7gp9k2jc7"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)))
+     (list perl-module-install))
     (propagated-inputs
-     `(("perl-plack" ,perl-plack)))
+     (list perl-plack))
     (home-page "https://metacpan.org/release/Plack-Middleware-ReverseProxy")
     (synopsis "Supports app to run as a reverse proxy backend")
     (description "Plack::Middleware::ReverseProxy resets some HTTP headers,
@@ -4394,7 +4256,7 @@ and stop fake requests using @code{enable_if} directive in your app.psgi.")
         (base32 "1l1yj1l25679x7cbpd27ii7s1f1ajpkspif9xqnl21hczrbmrbsv"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-plack" ,perl-plack)))
+     (list perl-plack))
     (home-page "https://metacpan.org/release/Plack-Test-ExternalServer")
     (synopsis "Run HTTP tests on external live servers")
     (description "This module allows your to run your Plack::Test tests
@@ -4415,7 +4277,7 @@ either mocked HTTP or a locally spawned server.")
         (base32 "0mvv9rqwrwlcfh8qrs0s47p85rhlnw15d4gbpyi802bddp0c6lry"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-test-sharedfork" ,perl-test-sharedfork)))
+     (list perl-test-sharedfork))
     (arguments `(#:tests? #f))          ;related to signaling in t/05_sigint.t
     (home-page "https://metacpan.org/release/Test-TCP")
     (synopsis "Testing TCP programs")
@@ -4435,13 +4297,13 @@ either mocked HTTP or a locally spawned server.")
         (base32 "1jsywlbxhqw39ij7s8vmgff5vys58vlfaq27072awacnxc65aal4"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-carp-assert-more" ,perl-carp-assert-more)
-       ("perl-html-form" ,perl-html-form)
-       ("perl-html-lint" ,perl-html-lint)
-       ("perl-http-server-simple" ,perl-http-server-simple)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-test-longstring" ,perl-test-longstring)
-       ("perl-www-mechanize" ,perl-www-mechanize)))
+     (list perl-carp-assert-more
+           perl-html-form
+           perl-html-lint
+           perl-http-server-simple
+           perl-libwww
+           perl-test-longstring
+           perl-www-mechanize))
     (home-page "https://metacpan.org/release/Test-WWW-Mechanize")
     (synopsis "Testing-specific WWW::Mechanize subclass")
     (description "Test::WWW::Mechanize is a subclass of the Perl module
@@ -4461,21 +4323,20 @@ WWW::Mechanize that incorporates features for web application testing.")
         (base32 "1cdc2q16vs6fb335pzaislz2rx1ph9acaxyp7v5hv9xbwwddwfqq"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
-       ("perl-catalyst-plugin-session-state-cookie"
-        ,perl-catalyst-plugin-session-state-cookie)
-       ("perl-module-install" ,perl-module-install)
-       ("perl-test-exception" ,perl-test-exception)
-       ("perl-test-pod" ,perl-test-pod)
-       ("perl-test-utf8" ,perl-test-utf8)))
+     (list perl-catalyst-plugin-session
+           perl-catalyst-plugin-session-state-cookie
+           perl-module-install
+           perl-test-exception
+           perl-test-pod
+           perl-test-utf8))
     (propagated-inputs
-     `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
-       ("perl-class-load" ,perl-class-load)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-moose" ,perl-moose)
-       ("perl-namespace-clean" ,perl-namespace-clean)
-       ("perl-test-www-mechanize" ,perl-test-www-mechanize)
-       ("perl-www-mechanize" ,perl-www-mechanize)))
+     (list perl-catalyst-runtime
+           perl-class-load
+           perl-libwww
+           perl-moose
+           perl-namespace-clean
+           perl-test-www-mechanize
+           perl-www-mechanize))
     (home-page "https://metacpan.org/release/Test-WWW-Mechanize-Catalyst")
     (synopsis "Test::WWW::Mechanize for Catalyst")
     (description "The Test::WWW::Mechanize::Catalyst module meshes the
@@ -4497,10 +4358,9 @@ testing of Catalyst applications without needing to start up a web server.")
          "0fsh2i05kf1kfavv2r9kmnjl7qlyqrd11ikc0qcqzzxsqzzjkg9r"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-pod" ,perl-test-pod)))
+     (list perl-test-pod))
     (propagated-inputs
-     `(("perl-plack" ,perl-plack)
-       ("perl-test-www-mechanize" ,perl-test-www-mechanize)))
+     (list perl-plack perl-test-www-mechanize))
     (home-page "https://metacpan.org/release/Test-WWW-Mechanize-PSGI")
     (synopsis "Test PSGI programs using WWW::Mechanize")
     (description "PSGI is a specification to decouple web server environments
@@ -4513,18 +4373,18 @@ applications.")
 (define-public perl-uri
   (package
     (name "perl-uri")
-    (version "1.76")
+    (version "5.05")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://cpan/authors/id/O/OA/OALDERS/"
                                  "URI-" version ".tar.gz"))
              (sha256
               (base32
-               "0gj1aj18k43kmzc3y1zhj5giinf8rksacf757r475xfna0fqxjdj"))))
+               "1v3r3ck67w272kzfgm1nd3wb41av1hlnza56vkxxj1i7s3917hd5"))))
     (build-system perl-build-system)
     (native-inputs
      ;; For tests.
-     `(("perl-test-needs" ,perl-test-needs)))
+     (list perl-test-needs))
     (license license:perl-license)
     (synopsis "Perl Uniform Resource Identifiers (absolute and relative)")
     (description
@@ -4536,21 +4396,19 @@ and updated by RFC 2732.")
 (define-public perl-uri-fetch
   (package
     (name "perl-uri-fetch")
-    (version "0.13")
+    (version "0.15")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/"
                                   "URI-Fetch-" version ".tar.gz"))
               (sha256
                (base32
-                "0rw6xiqm70s218aii9id3hf8j3pz6n22xnwd8v9m1ff2bnh63c0d"))))
+                "0355rnw3xbgfwy9fgs6zrjmrsychzmwpkc9jcd9mrbkd9kr3k7rp"))))
     (build-system perl-build-system)
     (arguments
      `(#:tests? #f)) ; Tests require internet connection to succeed
     (inputs
-     `(("perl-class-errorhandler" ,perl-class-errorhandler)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-uri" ,perl-uri)))
+     (list perl-class-errorhandler perl-libwww perl-uri))
     (home-page "https://metacpan.org/release/URI-Fetch")
     (synopsis "Smart URI fetching/caching")
     (description "@code{URI::Fetch} is a smart client for fetching HTTP pages,
@@ -4572,9 +4430,9 @@ and time-saving way.")
          "1mk3jv8x0mcq3ajrn9garnxd0jc7sw4pkwqi88r5apqvlljs84z2"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-module-build" ,perl-module-build)))
+     (list perl-module-build))
     (propagated-inputs
-     `(("perl-uri" ,perl-uri)))
+     (list perl-uri))
     (home-page "https://metacpan.org/release/URI-Find")
     (synopsis "Find URIs in arbitrary text")
     (description "This module finds URIs and URLs (according to what URI.pm
@@ -4597,7 +4455,7 @@ URI::Find::Schemeless.  For a command-line interface, urifind is provided.")
          "1vs1wm80sq685944g1l4a0fxcbccc00c0f9648yabdmcf90hwsvf"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-uri" ,perl-uri)))
+     (list perl-uri))
     (home-page "https://metacpan.org/release/URI-ws")
     (synopsis "WebSocket support for URI package")
     (description "With this module, the URI package provides the same set of
@@ -4617,12 +4475,10 @@ methods for WebSocket URIs as it does for HTTP URIs.")
                 "1phibcmam2hklrddzj79l43va1gcqpyszbw21ynxq53ynmhjvbk8"))))
     (build-system perl-build-system)
     (inputs
-     `(("perl-uri" ,perl-uri)))
+     (list perl-uri))
     (native-inputs
-     `(("perl-test-pod-coverage" ,perl-test-pod-coverage)
-       ("perl-test-pod" ,perl-test-pod)
-       ("perl-module-install" ,perl-module-install)
-       ("perl-json" ,perl-json)))
+     (list perl-test-pod-coverage perl-test-pod perl-module-install
+           perl-json))
     (home-page "https://metacpan.org/release/URI-Template")
     (synopsis "Object for handling URI templates")
     (description "This perl module provides a wrapper around URI templates as described in
@@ -4655,8 +4511,8 @@ RFC 6570.")
                                               (getenv "PERL5LIB")))
                        #t)))))
     (native-inputs
-     `(("perl-module-install" ,perl-module-install)))
-    (inputs `(("curl" ,curl)))
+     (list perl-module-install))
+    (inputs (list curl))
     (synopsis "Perl extension interface for libcurl")
     (description
      "This is a Perl extension interface for the libcurl file downloading
@@ -4677,20 +4533,17 @@ library.")
         (base32 "0cb14m1vhaf0mgn2fqwi5hm72xhfi77hpq2g57swgy0w83x7m27b"))))
     (build-system perl-build-system)
     (native-inputs                      ;only for tests
-     `(("perl-cgi" ,perl-cgi)
-       ("perl-test-deep" ,perl-test-deep)
-       ("perl-test-fatal" ,perl-test-fatal)
-       ("perl-test-output" ,perl-test-output)
-       ("perl-test-warnings" ,perl-test-warnings)))
+     (list perl-cgi perl-test-deep perl-test-fatal perl-test-output
+           perl-test-warnings))
     (propagated-inputs
-     `(("perl-html-form" ,perl-html-form)
-       ("perl-html-parser" ,perl-html-parser)
-       ("perl-html-tree" ,perl-html-tree)
-       ("perl-http-message" ,perl-http-message)
-       ("perl-http-server-simple" ,perl-http-server-simple)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-test-warn" ,perl-test-warn)
-       ("perl-uri" ,perl-uri)))
+     (list perl-html-form
+           perl-html-parser
+           perl-html-tree
+           perl-http-message
+           perl-http-server-simple
+           perl-libwww
+           perl-test-warn
+           perl-uri))
     (home-page "https://metacpan.org/release/WWW-Mechanize")
     (synopsis "Web browsing in a Perl object")
     (description "WWW::Mechanize is a Perl module for stateful programmatic
@@ -4710,24 +4563,24 @@ web browsing, used for automating interaction with websites.")
                 "1yxplx1q1qk2fvnzqrbk01lz26fy1lyhay51a3ky7q3jgh9p01rb"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-class-errorhandler" ,perl-class-errorhandler)
-       ("perl-datetime" ,perl-datetime)
-       ("perl-datetime-format-mail" ,perl-datetime-format-mail)
-       ("perl-datetime-format-w3cdtf" ,perl-datetime-format-w3cdtf)
-       ("perl-feed-find" ,perl-feed-find)
-       ("perl-module-install" ,perl-module-install)
-       ("perl-module-pluggable" ,perl-module-pluggable)
-       ("perl-uri-fetch" ,perl-uri-fetch)
-       ("perl-test-simple" ,perl-test-simple)
-       ("perl-xml-atom" ,perl-xml-atom)
-       ("perl-xml-rss" ,perl-xml-rss)))
+     (list perl-class-errorhandler
+           perl-datetime
+           perl-datetime-format-mail
+           perl-datetime-format-w3cdtf
+           perl-feed-find
+           perl-module-install
+           perl-module-pluggable
+           perl-uri-fetch
+           perl-test-simple
+           perl-xml-atom
+           perl-xml-rss))
     (inputs
-     `(("perl-data-page" ,perl-data-page)
-       ("perl-libwww" ,perl-libwww)
-       ("perl-uri" ,perl-uri)
-       ("perl-uri-template" ,perl-uri-template)
-       ("perl-xml-feed" ,perl-xml-feed)
-       ("perl-xml-libxml" ,perl-xml-libxml)))
+     (list perl-data-page
+           perl-libwww
+           perl-uri
+           perl-uri-template
+           perl-xml-feed
+           perl-xml-libxml))
     (home-page "https://metacpan.org/release/WWW-OpenSearch")
     (synopsis "Search A9 OpenSearch compatible engines")
     (description
@@ -4749,7 +4602,7 @@ http://opensearch.a9.com} compatible search engines.")
                "07m50dp5n5jxv3m93i55qvnd67a6g7cvbvlik115kmc8lbkh5da6"))))
     (build-system perl-build-system)
     (propagated-inputs
-     `(("perl-uri" ,perl-uri)))
+     (list perl-uri))
     (license license:perl-license)
     (synopsis "Perl database of robots.txt-derived permissions")
     (description
@@ -4763,24 +4616,30 @@ their web site.")
 (define-public python-feedparser
   (package
     (name "python-feedparser")
-    (version "6.0.2")
+    (version "6.0.8")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "feedparser" version ".tar.gz"))
        (sha256
-        (base32
-         "0x0hm9brh3j71645pydvlkrwxaaca9dnwd7xahwjyjaz882s200v"))))
+        (base32 "0qcnkyjjfj5gg5rhd1j4zzlqx5h34bma18zwgj68q95b0l543q2w"))))
     (build-system python-build-system)
+    (propagated-inputs
+     (list python-sgmllib3k))
     (arguments
-     '(#:tests? #f))
-    (home-page
-     "https://github.com/kurtmckee/feedparser")
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+             (when tests?
+               (add-installed-pythonpath inputs outputs)
+               (invoke "python" "tests/runtests.py")))))))
+    (home-page "https://github.com/kurtmckee/feedparser")
     (synopsis "Parse feeds in Python")
     (description
      "Universal feed parser which handles RSS 0.9x, RSS 1.0, RSS 2.0,
 CDF, Atom 0.3, and Atom 1.0 feeds.")
-    (license (list license:bsd-2 ; source code
+    (license (list license:bsd-2           ; source code
                    license:freebsd-doc)))) ; documentation
 
 (define-public python2-feedparser
@@ -4808,8 +4667,8 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
                    license:freebsd-doc)))) ; documentation
 
 (define-public guix-data-service
-  (let ((commit "df2a0a73f1f35ea53ba6c07a6ad4c5347ba12b8f")
-        (revision "27"))
+  (let ((commit "f1d8d76c4d685bc5e938f495c762984fe2564371")
+        (revision "28"))
     (package
       (name "guix-data-service")
       (version (string-append "0.0.1-" revision "." (string-take commit 7)))
@@ -4821,7 +4680,7 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
                 (file-name (git-file-name name version))
                 (sha256
                  (base32
-                  "1ss1prr98zdjkm97w24rd04lfnnvcw6xs0gwxqgd40briqisaa5g"))))
+                  "16ys402pvrzxm8kvhss4fhgfzbcxh70jndi50cpgz80qb510x3iq"))))
       (build-system gnu-build-system)
       (arguments
        '(#:modules ((guix build utils)
@@ -4880,23 +4739,23 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
                  #t)))
            (delete 'strip))))           ; As the .go files aren't compatible
       (inputs
-       `(("guix" ,guix)
-         ("guile-fibers" ,guile-fibers)
-         ("guile-json" ,guile-json-4)
-         ("guile-email" ,guile-email)
-         ("guile-prometheus" ,guile-prometheus)
-         ("guile-squee" ,guile-squee)
-         ("ephemeralpg" ,ephemeralpg)
-         ("util-linux" ,util-linux)
-         ("postgresql" ,postgresql-13)
-         ("sqitch" ,sqitch)))
+       (list guix
+             guile-fibers
+             guile-json-4
+             guile-email
+             guile-prometheus
+             guile-squee
+             ephemeralpg
+             util-linux
+             postgresql-13
+             sqitch))
       (native-inputs
-       `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))
-         ("autoconf" ,autoconf)
-         ("automake" ,automake)
-         ("emacs-minimal" ,emacs-minimal)
-         ("emacs-htmlize" ,emacs-htmlize)
-         ("pkg-config" ,pkg-config)))
+       (list (car (assoc-ref (package-native-inputs guix) "guile"))
+             autoconf
+             automake
+             emacs-minimal
+             emacs-htmlize
+             pkg-config))
       (synopsis "Store and provide data about GNU Guix")
       (description
        "The Guix Data Service stores data about GNU Guix, and provides this
@@ -4924,9 +4783,7 @@ PostgreSQL database.")
      `(#:tests? #f))         ;tests require bundling googletest sources
     ;; The release tarball lacks the generated files.
     (native-inputs
-     `(("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)))
+     (list autoconf automake libtool))
     (home-page "https://github.com/google/gumbo-parser")
     (synopsis "HTML5 parsing library")
     (description
@@ -4992,14 +4849,14 @@ embedded_plugins =
      `(("pkg-config" ,pkg-config)
        ("python" ,python-wrapper)))
     (inputs
-     `(("jansson" ,jansson)
-       ("libxml2" ,libxml2)
-       ("libyaml" ,libyaml)
-       ("openssl" ,openssl)
-       ("pcre" ,pcre)
-       ("zlib" ,zlib)
-       ;; For plugins.
-       ("python" ,python)))
+     (list jansson
+           libxml2
+           libyaml
+           openssl
+           pcre
+           zlib
+           ;; For plugins.
+           python))
     (home-page "https://uwsgi-docs.readthedocs.org/")
     (synopsis "Application container server")
     (description
@@ -5027,12 +4884,12 @@ It uses the uwsgi protocol for all the networking/interprocess communications.")
            (delete-file-recursively "modules")
            #t))))
     (inputs
-     `(("oniguruma" ,oniguruma)))
+     (list oniguruma))
     (native-inputs
-     `(;; TODO fix gems to generate documentation
-       ;;("ruby" ,ruby)
-       ;;("bundler" ,bundler)
-       ("valgrind" ,valgrind)))
+     (list ;; TODO fix gems to generate documentation
+           ;;("ruby" ,ruby)
+           ;;("bundler" ,bundler)
+           valgrind))
     (build-system gnu-build-system)
     (home-page "https://stedolan.github.io/jq/")
     (synopsis "Command-line JSON processor")
@@ -5084,13 +4941,17 @@ fast and flexible way of exploring HTML from the terminal.")
         (base32 "0bqizz69hxk8rn4z57asz1d45vizl1rj6i5k3rzxn2x3qcik514h"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
-     `(("gobject-introspection" ,gobject-introspection)
-       ;; For check phase.
-       ("glib-networking" ,glib-networking)
-       ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
-       ("pkg-config" ,pkg-config)))
+     (list gobject-introspection
+           ;; For check phase.
+           glib-networking gsettings-desktop-schemas pkg-config))
     (inputs
-     `(("libsoup" ,libsoup)))
+     `(("libsoup" ,libsoup-minimal-2)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'set-home-for-tests
+           (lambda _
+             (setenv "HOME" "/tmp"))))))
     (home-page "https://gitlab.com/groups/uhttpmock")
     (synopsis "Library for mocking web service APIs which use HTTP or HTTPS")
     (description
@@ -5188,9 +5049,7 @@ libraries.")
          "1n2794y2l0c8nv8z2pxwfnbn882987ifmxjv60zdxkhcndhswarj"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("pkg-config" ,pkg-config)
-       ("perl" ,perl)))                 ;for test harness
+     (list netsurf-buildsystem pkg-config perl))                 ;for test harness
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/projects/libparserutils/")
     (synopsis "Parser building library")
@@ -5214,13 +5073,13 @@ C.  It is developed as part of the NetSurf project.")
        (patches (search-patches "hubbub-sort-entities.patch"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("pkg-config" ,pkg-config)
-       ("doxygen" ,doxygen)
-       ("json-c" ,json-c-0.12)      ; check whether json-c-0.12 can be removed
-       ("perl" ,perl)))
+     (list netsurf-buildsystem
+           pkg-config
+           doxygen
+           json-c-0.12 ; check whether json-c-0.12 can be removed
+           perl))
     (propagated-inputs
-     `(("libparserutils" ,libparserutils))) ;for libhubbub.pc
+     (list libparserutils)) ;for libhubbub.pc
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/projects/hubbub/")
     (synopsis "HTML5 compliant parsing library")
@@ -5331,18 +5190,18 @@ NetSurf project.")
        ("perl-yaml-tiny" ,perl-yaml-tiny)
        ("po4a" ,po4a)))
     (propagated-inputs
-     `(("perl-cgi-formbuilder" ,perl-cgi-formbuilder)
-       ("perl-cgi-session" ,perl-cgi-session)
-       ("perl-html-parser" ,perl-html-parser)
-       ("perl-html-scrubber" ,perl-html-scrubber)
-       ("perl-html-template" ,perl-html-template)
-       ("perl-json" ,perl-json)
-       ("perl-mail-sendmail" ,perl-mail-sendmail)
-       ("perl-text-markdown-discount" ,perl-text-markdown-discount)
-       ("perl-timedate" ,perl-timedate)
-       ("perl-uri" ,perl-uri)
-       ("perl-xml-simple" ,perl-xml-simple)
-       ("perl-yaml-libyaml" ,perl-yaml-libyaml)))
+     (list perl-cgi-formbuilder
+           perl-cgi-session
+           perl-html-parser
+           perl-html-scrubber
+           perl-html-template
+           perl-json
+           perl-mail-sendmail
+           perl-text-markdown-discount
+           perl-timedate
+           perl-uri
+           perl-xml-simple
+           perl-yaml-libyaml))
     (home-page "https://ikiwiki.info/")
     (synopsis "Wiki compiler, capable of generating HTML")
     (description
@@ -5365,9 +5224,7 @@ commenting.")
          "0p0c2q9lsj4vs97aa7vjllfhw33zv3dpysdkjblzhib6dpfs2alv"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("pkg-config" ,pkg-config)
-       ("check" ,check-0.14)))          ;for tests
+     (list netsurf-buildsystem pkg-config check-0.14))          ;for tests
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/projects/libwapcaplet/")
     (synopsis "String internment library")
@@ -5388,15 +5245,18 @@ developed as part of the Netsurf project.")
                            "libcss-" version "-src.tar.gz"))
        (sha256
         (base32
-         "1p66sdiiqm7w4jkq23hsf08khsnmq93hshh9f9m8sbirjdpf3p6j"))))
+         "1p66sdiiqm7w4jkq23hsf08khsnmq93hshh9f9m8sbirjdpf3p6j"))
+       (modules '((guix build utils)))
+       (snippet
+        '(begin
+           ;; This can be removed with the next release.
+           (substitute* "src/select/computed.c"
+             (("css_unit unit;") "css_unit unit = CSS_UNIT_PX;"))))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("pkg-config" ,pkg-config)
-       ("perl" ,perl)))
+     (list netsurf-buildsystem pkg-config perl))
     (propagated-inputs                  ;needed for libcss.pc
-     `(("libparserutils" ,libparserutils)
-       ("libwapcaplet" ,libwapcaplet)))
+     (list libparserutils libwapcaplet))
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/projects/libcss/")
     (synopsis "CSS parser and selection library")
@@ -5419,18 +5279,17 @@ written in C.  It is developed as part of the NetSurf project.")
          "0jpg5hx3y0mdxk5szd47dyijqimd2321brbqk2620pp5f4j0gvlq"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("pkg-config" ,pkg-config)
-       ("perl" ,perl)                   ;for test harness
-       ("perl-libxml" ,perl-libxml)
-       ("perl-switch" ,perl-switch)
-       ("perl-xml-xpath" ,perl-xml-xpath)))
+     (list netsurf-buildsystem
+           pkg-config
+           perl ;for test harness
+           perl-libxml
+           perl-switch
+           perl-xml-xpath))
     (inputs
-     `(("libparserutils" ,libparserutils)
-       ("libwapcaplet" ,libwapcaplet)))
+     (list libparserutils libwapcaplet))
     (propagated-inputs
-     `(("expat" ,expat)                 ;needed for headers and linking
-       ("hubbub" ,hubbub)))             ;for libdom.pc
+     (list expat ;needed for headers and linking
+           hubbub))             ;for libdom.pc
     (arguments
      `(#:tests? #f                 ;TODO: re-enable. tests take a looong time.
        ,@netsurf-buildsystem-arguments))
@@ -5455,13 +5314,11 @@ developed as part of the NetSurf project.")
          "10bpkmvfpydj74im3r6kqm9vnvgib6afy0alx71q5n0w5yawy39c"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("pkg-config" ,pkg-config)
-       ("gperf" ,gperf-3.0)))
+     (list netsurf-buildsystem pkg-config gperf-3.0))
     (inputs
-     `(("libwapcaplet" ,libwapcaplet)))
+     (list libwapcaplet))
     (propagated-inputs
-     `(("libdom" ,libdom)))             ;for libsvgtiny.pc
+     (list libdom))             ;for libsvgtiny.pc
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/projects/libsvgtiny/")
     (synopsis "Library for parsing SVG files")
@@ -5486,7 +5343,7 @@ project.")
          "0krjg69a2amxjsahdgm3wmy9ngnyr3gfs2a1zhdlbvb0z1jr7i3r"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)))
+     (list netsurf-buildsystem))
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/projects/libnsbmp/")
     (synopsis "Decoding library for BMP and ICO files")
@@ -5509,7 +5366,7 @@ written in C.  It is developed as part of the NetSurf project.")
          "0jwshypgmx16xlsbx3d8njk8a5khazlplca5mxd3rdbhrlsabbly"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)))
+     (list netsurf-buildsystem))
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/projects/libnsgif/")
     (synopsis "Decoding library for GIF files")
@@ -5532,11 +5389,11 @@ C.  It is developed as part of the NetSurf project.")
          "1l2k0kdv9iv18svhv360vszjavhl4g09cp8a8yb719pgsylxr67w"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("pkg-config" ,pkg-config)
-       ("check" ,check)                 ; For tests
-       ("bison" ,bison)
-       ("flex" ,flex)))
+     (list netsurf-buildsystem
+           pkg-config
+           check ; For tests
+           bison
+           flex))
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/")
     (synopsis "Logging library")
@@ -5560,7 +5417,7 @@ client applications.  It is developed as part of the NetSurf project.")
          "1w5fyy2i60a3v3if3iqcn9sy9sycx6966rcx53v85gja6hb6a33r"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)))
+     (list netsurf-buildsystem))
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/")
     (synopsis "Utility library for NetSurf")
@@ -5583,7 +5440,7 @@ developed as part of the NetSurf project.")
          "02q28n5i6fwqcz1nn167rb71k1q95mx38mfah6zi1lvqrc2q5ifk"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)))
+     (list netsurf-buildsystem))
     (arguments netsurf-buildsystem-arguments)
     (home-page "https://www.netsurf-browser.org/")
     (synopsis "Library to generate a static Public Suffix List")
@@ -5606,9 +5463,7 @@ Public Suffix List.  It is developed as part of the NetSurf project.")
          "1cqwgwca49jvmijwiyaab2bwxicgxdrnlpinf8kp3nha02nm73ad"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("bison" ,bison)
-       ("flex" ,flex)))
+     (list netsurf-buildsystem bison flex))
     (arguments
      (substitute-keyword-arguments netsurf-buildsystem-arguments
        ((#:make-flags flags)
@@ -5638,14 +5493,14 @@ w3c webidl files and a binding configuration file.")
                                 "netsurf-message-timestamp.patch"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
-     `(("netsurf-buildsystem" ,netsurf-buildsystem)
-       ("nsgenbind" ,nsgenbind)
-       ("libidn" ,libidn)               ;only for tests
-       ("check" ,check)
-       ("perl" ,perl)
-       ("perl-html-parser" ,perl-html-parser)
-       ("pkg-config" ,pkg-config)
-       ("xxd" ,xxd)))
+     (list netsurf-buildsystem
+           nsgenbind
+           libidn ;only for tests
+           check
+           perl
+           perl-html-parser
+           pkg-config
+           xxd))
     (inputs
      `(("curl" ,curl)
        ("gtk+" ,gtk+)
@@ -5719,7 +5574,7 @@ w3c webidl files and a binding configuration file.")
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* '("test/bloom.c" "test/hashtable.c")
                (("/usr/share/dict/words")
-                (string-append (assoc-ref inputs "miscfiles") "/share/web2")))
+                (search-input-file inputs "/share/web2")))
              #t))
          (add-after 'install 'install-more
            (lambda* (#:key outputs #:allow-other-keys)
@@ -5776,10 +5631,7 @@ handling many of the web standards in use today.")
                (with-directory-excursion man
                  (invoke "gzip" "elvi.1sr"))))))))
     (inputs
-     `(("perl" ,perl)
-       ("perl-www-opensearch" ,perl-www-opensearch)
-       ("perl-html-parser" ,perl-html-parser)
-       ("perl-libwww" ,perl-libwww)))
+     (list perl perl-www-opensearch perl-html-parser perl-libwww))
     (synopsis "Unix command line interface to the www")
     (description "Surfraw (Shell Users' Revolutionary Front Rage Against the Web)
 provides a unix command line interface to a variety of popular www search engines
@@ -5790,28 +5642,29 @@ and similar services.")
 (define-public darkhttpd
   (package
     (name "darkhttpd")
-    (version "1.12")
+    (version "1.13")
     (source
      (origin
-       (method url-fetch)
-       (uri (string-append "https://unix4lyfe.org/darkhttpd/darkhttpd-"
-                           version ".tar.bz2"))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/emikulic/darkhttpd")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
        (sha256
-        (base32
-         "0185wlyx4iqiwfigp1zvql14zw7gxfacncii3d15yaxk4av1f155"))))
+        (base32 "0w11xq160q9yyffv4mw9ncp1n0dl50d9plmwxb0yijaaxls9i4sk"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:make-flags '("CC=gcc")
+     `(#:make-flags
+       (list (string-append "CC=" ,(cc-for-target)))
        #:tests? #f ; No test suite
        #:phases
        (modify-phases %standard-phases
-         (delete 'configure)
+         (delete 'configure)            ; no configure script
          (replace 'install
            (lambda* (#:key outputs #:allow-other-keys)
              (install-file "darkhttpd"
                            (string-append (assoc-ref outputs "out")
-                                          "/bin"))
-             #t)))))
+                                          "/bin")))))))
     (synopsis "Simple static web server")
     (description "darkhttpd is a simple static web server.  It is
 standalone and does not need inetd or ucspi-tcp.  It does not need any
@@ -5822,27 +5675,25 @@ config files---you only have to specify the www root.")
 (define-public goaccess
   (package
     (name "goaccess")
-    (version "1.5.1")
+    (version "1.5.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://tar.goaccess.io/goaccess-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "03wp75n1krv8g643q00gcv1ikmzwwh8jjqmph0wxww1bwrw7whc8"))
+                "12hwmd9cn7yy7vj92110skjaslpxkn05msb9wj228qmjjf9jzkm0"))
               (modules '((guix build utils)))
               (snippet '(begin
                           (substitute* "src/error.h"
                             (("__DATE__") "\"1970-01-01\"")
-                            (("__TIME__") "\"00:00:00\""))
-                          #t))))
+                            (("__TIME__") "\"00:00:00\""))))))
     (build-system gnu-build-system)
     (inputs
      ;; TODO: Add dependency on geoip-tools.
-     `(("glib" ,glib)
-       ("ncurses" ,ncurses)))
+     (list glib ncurses))
     (native-inputs
-     `(("pkg-config" ,pkg-config)))
+     (list pkg-config))
     (home-page "https://goaccess.io")
     (synopsis "Analyze Web server logs in real time")
     (description
@@ -5855,14 +5706,14 @@ on the fly.")
 (define-public hitch
   (package
     (name "hitch")
-    (version "1.7.0")
+    (version "1.7.2")
     (home-page "https://hitch-tls.org/")
     (source (origin
               (method url-fetch)
               (uri (string-append home-page "source/hitch-" version ".tar.gz"))
               (sha256
                (base32
-                "1i75giwyr66ip8xsvk3gg5xdbxnmcabgxz8dqi06c58mw7qzhzn9"))))
+                "118p3a8wjvr0yhldpd1zm7d2cmgaw4vmyz9ib8m64z18qsz5rmnw"))))
     (build-system gnu-build-system)
     (arguments
      `(#:phases (modify-phases %standard-phases
@@ -5894,10 +5745,10 @@ on the fly.")
        ("curl" ,curl)
        ("egrep" ,grep)
        ("lsof" ,lsof)
+       ("procps" ,procps)
        ("python" ,python)))
     (inputs
-     `(("libev" ,libev)
-       ("openssl" ,openssl)))
+     (list libev openssl))
     (synopsis "Scalable TLS proxy")
     (description
      "Hitch is a performant TLS proxy based on @code{libev}.  It terminates
@@ -5947,43 +5798,41 @@ tools like SSH (Secure Shell) to reach the outside world.")
 (define-public stunnel
   (package
   (name "stunnel")
-  (version "5.59")
+  (version "5.61")
   (source
     (origin
       (method url-fetch)
       (uri (string-append "https://www.stunnel.org/downloads/stunnel-"
                           version ".tar.gz"))
       (sha256
-       (base32 "17yf2n47j5hw2y9527mrkx3j7q9jk5vvg46m3hgp1wg8dggpcxqk"))))
+       (base32 "0yjx07r5wc987s4z0wm37381fa3az2s4mrhyjxypx3rd92k0rsli"))))
   (build-system gnu-build-system)
+  (arguments
+   (list #:configure-flags
+         #~(list (string-append "--with-ssl="
+                                #$(this-package-input "openssl")))
+         #:phases
+         #~(modify-phases %standard-phases
+             (add-after 'unpack 'patch-output-directories
+               (lambda _
+                 ;; Some (not all) Makefiles have a hard-coded incorrect docdir.
+                 (substitute* (list "Makefile.in"
+                                    "doc/Makefile.in"
+                                    "tools/Makefile.in")
+                   (("/doc/stunnel")
+                    (string-append "/doc/" #$name "-" #$version)))))
+             (add-after 'install 'prune-documentation
+               (lambda _
+                 (let* ((doc (string-append #$output "/share/doc/"
+                                            #$name "-" #$version)))
+                   (for-each delete-file (find-files doc "^INSTALL"))))))))
   (native-inputs
    ;; For tests.
-   `(("iproute" ,iproute)
-     ("netcat" ,netcat)
-     ("procps" ,procps)))
-  (inputs `(("openssl" ,openssl)))
-  (arguments
-   `(#:configure-flags
-     (list (string-append "--with-ssl=" (assoc-ref %build-inputs "openssl")))
-     #:phases
-     (modify-phases %standard-phases
-       (add-after 'unpack 'patch-output-directories
-         (lambda _
-           ;; Some (not all) Makefiles have a hard-coded incorrect docdir.
-           (substitute* (list "Makefile.in"
-                              "doc/Makefile.in"
-                              "tools/Makefile.in")
-             (("/doc/stunnel")
-              (string-append "/doc/" ,name "-" ,version)))
-           #t))
-       (add-before 'check 'patch-tests
-         (lambda _
-           (substitute* "tests/make_test"
-             (("/bin/sh ")
-              (string-append (which "sh") " ")))
-           ;; test requires networking
-           (delete-file "tests/recipes/055_socket_closed")
-           #t)))))
+   (list iproute
+         netcat
+         procps
+         python))
+  (inputs (list openssl))
   (home-page "https://www.stunnel.org")
   (synopsis "TLS proxy for clients or servers")
   (description "Stunnel is a proxy designed to add TLS encryption
@@ -5997,30 +5846,29 @@ deployments.")
   (package
     (name "varnish")
     (home-page "https://varnish-cache.org/")
-    (version "7.0.0")
+    (version "7.0.1")
     (source (origin
               (method url-fetch)
               (uri (string-append home-page "_downloads/varnish-" version ".tgz"))
               (sha256
                (base32
-                "11z0pa618lh925ih67wmp1gqk7i46l486j4spjy71g1n3w5mqylc"))))
+                "0q265fzarz5530g8lasvfpgks8z1kq1yh7rn88bn2qfly3pmpry4"))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")
                                (string-append "CC=" ,(cc-for-target))
                                ;; Use absolute path of GCC so it's found at runtime.
                                (string-append "PTHREAD_CC="
-                                              (assoc-ref %build-inputs "gcc")
-                                              "/bin/gcc")
+                                              (search-input-file %build-inputs
+                                                                 "/bin/gcc"))
                                "--localstatedir=/var")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'use-absolute-file-names
-           (lambda* (#:key inputs #:allow-other-keys)
-             (let* ((bash (assoc-ref inputs "bash-minimal"))
-                    (sh (string-append bash "/bin/sh"))
-                    (coreutils (assoc-ref inputs "coreutils"))
-                    (rm (string-append coreutils "/bin/rm")))
+           (lambda* (#:key native-inputs inputs #:allow-other-keys)
+             (let* ((inpts (or native-inputs inputs))
+                    (sh (search-input-file inpts "/bin/sh"))
+                    (rm (search-input-file inpts "/bin/rm")))
                (substitute* '("bin/varnishtest/vtc_varnish.c"
                               "bin/varnishtest/vtc_process.c"
                               "bin/varnishtest/vtc_haproxy.c"
@@ -6050,17 +5898,15 @@ deployments.")
                  ;; Make sure 'crti.o' et.al is found.
                  `("LIBRARY_PATH" ":" prefix (,LIBRARY_PATH)))))))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("python-sphinx" ,python-sphinx)
-       ("rst2man" ,python-docutils)))
+     (list pkg-config python-sphinx python-docutils))
     (inputs
-     `(("bash-minimal" ,bash-minimal)
-       ("coreutils" ,coreutils)
-       ("jemalloc" ,jemalloc)
-       ("ncurses" ,ncurses)
-       ("pcre2" ,pcre2)
-       ("python" ,python)
-       ("readline" ,readline)))
+     (list bash-minimal
+           coreutils
+           jemalloc
+           ncurses
+           pcre2
+           python
+           readline))
     (synopsis "Web application accelerator")
     (description
      "Varnish is a high-performance HTTP accelerator.  It acts as a caching
@@ -6086,18 +5932,15 @@ configuration language.")
                 "0qq5g6bbd1a1ml1wk8jj9z39a899jzqbf7aizr3pvyz0f4kz8mis"))))
     (build-system gnu-build-system)
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-
-       ;; For bootstrapping.
-       ("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)
-
-       ;; For generating manuals.
-       ("rst2man" ,python-docutils)))
+     (list pkg-config
+           ;; For bootstrapping.
+           autoconf
+           automake
+           libtool
+           ;; For generating manuals.
+           python-docutils))
     (inputs
-     `(("python" ,python)
-       ("varnish" ,varnish)))
+     (list python varnish))
     (synopsis "Collection of Varnish modules")
     (description
      "This package provides a collection of modules (@dfn{vmods}) for the Varnish
@@ -6124,10 +5967,7 @@ additional capabilities.")
      `(#:configure-flags '("--with-loadavg")
        #:tests? #f))                    ; no tests
     (native-inputs
-     `(("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)
-       ("pkg-config" ,pkg-config)))
+     (list autoconf automake libtool pkg-config))
     (home-page "https://github.com/openSUSE/xinetd")
     (synopsis "Internet services daemon")
     (description "@code{xinetd}, a more secure replacement for @code{inetd},
@@ -6140,7 +5980,7 @@ used to start services with both privileged and non-privileged port numbers.")
 (define-public tidy-html
   (package
     (name "tidy-html")
-    (version "5.7.28")
+    (version "5.8.0")
     (source
      (origin
        (method git-fetch)
@@ -6150,7 +5990,7 @@ used to start services with both privileged and non-privileged port numbers.")
        (file-name (git-file-name name version))
        (sha256
         (base32
-         "01k5sqwgcsr26i8031v1yr2r8qcy9a5w7sj800660haszgfbjz2f"))))
+         "1vd50q6xqxvidaclinsm89p6r0494wj72j1gpk32vkkhhx15cddz"))))
     (build-system cmake-build-system)
     (outputs '("out"
                "static"))               ; 1.3MiB of .a files
@@ -6173,7 +6013,7 @@ used to start services with both privileged and non-privileged port numbers.")
                          (find-files lib "\\.a$"))
                #t))))))
     (native-inputs
-     `(("libxslt" ,libxslt)))
+     (list libxslt))
     (home-page "http://www.html-tidy.org/")
     (synopsis "HTML Tidy with HTML5 support")
     (description
@@ -6234,11 +6074,8 @@ functions of Tidy.")
                  `("PATH" ":" prefix (,mbed)))))))))
     (inputs
      ;; TODO: package "hiawatha-monitor", an optional dependency of "hiawatha".
-     `(("libxslt" ,libxslt)
-       ("libxml2" ,libxml2)
-       ("mbedtls-apache" ,mbedtls-for-hiawatha)
-       ("nghttp2" ,nghttp2 "lib")
-       ("zlib" ,zlib)))
+     (list libxslt libxml2 mbedtls-for-hiawatha
+           `(,nghttp2 "lib") zlib))
     (home-page "https://www.hiawatha-webserver.org")
     (synopsis "Webserver with focus on security")
     (description
@@ -6260,11 +6097,8 @@ exploit attempts.")
          "1dc92lnk846hpilslrqnr63x55cxll4qx88gif8fm521gv9cbyvr"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-decorator" ,python-decorator)
-       ("python-flask" ,python-flask)
-       ("python-itsdangerous" ,python-itsdangerous)
-       ("python-markupsafe" ,python-markupsafe)
-       ("python-six" ,python-six)))
+     (list python-decorator python-flask python-itsdangerous
+           python-markupsafe python-six))
     (home-page "https://github.com/Runscope/httpbin")
     (synopsis "HTTP request and response service")
     (description "Testing an HTTP Library can become difficult sometimes.
@@ -6286,9 +6120,7 @@ JSON-encoded.")
          "1y0v2v7xpzpyd4djwp7ad8ifnlxp8r1y6dfbxg5ckzvllkgridn5"))))
     (build-system python-build-system)
     (propagated-inputs
-     `(("python-six" ,python-six)
-       ("python-httpbin" ,python-httpbin)
-       ("python-pytest" ,python-pytest)))
+     (list python-six python-httpbin python-pytest))
     (home-page
      "https://github.com/kevin1024/pytest-httpbin")
     (synopsis
@@ -6372,13 +6204,13 @@ message stream (in a web server that is per connection).")
 (define-public python-httpretty
   (package
     (name "python-httpretty")
-    (version "1.0.5")
+    (version "1.1.4")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "httpretty" version))
        (sha256
-        (base32 "1dg0nfl7i9kjnq98ww98x2afzav4mpgiwzvjc43ily1x9my94g75"))))
+        (base32 "0s1vjdaf3pk2xd0hvi5f7p3jm2rgwpbc734jdp9r50m1smfhxpi0"))))
     (build-system python-build-system)
     (arguments
      `(#:tests? #f  ; Tests require network access.
@@ -6387,16 +6219,15 @@ message stream (in a web server that is per connection).")
          (replace 'check
            (lambda* (#:key tests? #:allow-other-keys)
              (when tests?
-               (invoke "nosetests"))
-             #t)))))
+               (invoke "nosetests")))))))
     (native-inputs
-     `(("python-coverage" ,python-coverage)
-       ("python-eventlet" ,python-eventlet)
-       ("python-nose" ,python-nose)
-       ("python-rednose" ,python-rednose)
-       ("python-requests" ,python-requests)
-       ("python-sure" ,python-sure)
-       ("python-tornado" ,python-tornado)))
+     (list python-coverage
+           python-eventlet
+           python-nose
+           python-rednose
+           python-requests
+           python-sure
+           python-tornado))
     (home-page "https://httpretty.readthedocs.io")
     (synopsis "HTTP client mock for Python")
     (description "@code{httpretty} is a helper for faking web requests,
@@ -6465,17 +6296,15 @@ command-line arguments or read from stdin.")
                       "not test_get_item_with_kwargs"
                       " and not test_ia")))))))
     (propagated-inputs
-     `(("python-requests" ,python-requests)
-       ("python-jsonpatch" ,python-jsonpatch-0.4)
-       ("python-docopt" ,python-docopt)
-       ("python-clint" ,python-clint)
-       ("python-six" ,python-six)
-       ("python-schema" ,python-schema-0.5)
-       ("python-backports-csv" ,python-backports-csv)))
+     (list python-requests
+           python-jsonpatch-0.4
+           python-docopt
+           python-clint
+           python-six
+           python-schema-0.5
+           python-backports-csv))
     (native-inputs
-     `(("python-pytest" ,python-pytest)
-       ("python-pytest-capturelog" ,python-pytest-capturelog)
-       ("python-responses" ,python-responses)))
+     (list python-pytest python-pytest-capturelog python-responses))
     (home-page "https://github.com/jjjake/internetarchive")
     (synopsis "Command-line interface to archive.org")
     (description "@code{ia} is a command-line tool for using
@@ -6497,12 +6326,12 @@ internetarchive python module for programmatic access to archive.org.")
            "0zlkzqnpz7a4iavsq5vaz0nf5nr7qm5znpg1vlpz6rwnx6hikjdb"))))
       (build-system python-build-system)
       (propagated-inputs
-       `(("python-docopt" ,python-docopt)
-         ("python-pygments" ,python-pygments)
-         ("python-requests" ,python-requests)
-         ("python-nose" ,python-nose)
-         ("python-lxml" ,python-lxml)
-         ("python-pyaml" ,python-pyaml)))
+       (list python-docopt
+             python-pygments
+             python-requests
+             python-nose
+             python-lxml
+             python-pyaml))
       (inputs
        `(("test-clf"
           ,(origin
@@ -6589,10 +6418,8 @@ Instagram and YouTube.")
          "1j97dc9a4yhpscwadhv5dxp7036pnrxiaky18l8ddr3pvxdjvkxs"))))
     (build-system python-build-system)
     (inputs
-     `(("python-beautifulsoup4" ,python-beautifulsoup4)
-       ("python-dnspython" ,python-dnspython)
-       ("python-pyxdg" ,python-pyxdg)
-       ("python-requests" ,python-requests)))
+     (list python-beautifulsoup4 python-dnspython python-pyxdg
+           python-requests))
     (native-inputs
      `(("gettext" ,gettext-minimal)
        ("python-pytest" ,python-pytest)
@@ -6602,9 +6429,8 @@ Instagram and YouTube.")
      `(#:phases
        (modify-phases %standard-phases
          (replace 'check
-           (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+           (lambda* (#:key tests? #:allow-other-keys)
              (when tests?
-               (add-installed-pythonpath inputs outputs)
                (invoke "py.test" "tests")))))))
     (home-page "https://linkchecker.github.io/linkchecker/")
     (synopsis "Check websites for broken links")
@@ -6645,14 +6471,14 @@ file links.")
         ("rust-percent-encoding" ,rust-percent-encoding-2)
         ("rust-url" ,rust-url-2))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)))
+     (list pkg-config))
     (inputs
-     `(("atk" ,atk)
-       ("cairo" ,cairo)
-       ("gdk-pixbuf" ,gdk-pixbuf)
-       ("gtk+" ,gtk+)
-       ("libressl" ,libressl)
-       ("pango" ,pango)))
+     (list atk
+           cairo
+           gdk-pixbuf
+           gtk+
+           libressl
+           pango))
     (home-page "https://git.sr.ht/~julienxx/castor")
     (synopsis "Graphical client for plain-text protocols")
     (description
@@ -6661,6 +6487,92 @@ Rust with GTK.  It currently supports the Gemini, Gopher and Finger
 protocols.")
     (license license:expat)))
 
+(define-public clearsilver
+  (package
+    (name "clearsilver")
+    (version "0.11.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/blong42/clearsilver/")
+             (commit "fbe4926ba9a756163fd1539ff6eee3522cf1f5d8")))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "02ad43gmqwy7wmh71mh5pk6gl1lax76sjnf42sknj0ijdga170kl"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:tests? #false ;there is not test target and tests are run during build
+      #:configure-flags
+      '(list "--disable-java" "--disable-python")
+      #:phases
+      '(modify-phases %standard-phases
+         (add-after 'unpack 'prepare-streamhtmlparser
+           (lambda* (#:key inputs #:allow-other-keys)
+             (copy-recursively (assoc-ref inputs "streamhtmlparser")
+                               (string-append (getcwd) "/streamhtmlparser"))
+             (for-each make-file-writable
+                       (find-files "streamhtmlparser" "."
+                                   #:directories? #t))))
+         (add-after 'unpack 'pre-bootstrap
+           (lambda _
+             ;; We don't need the Java stuff
+             (substitute* "configure.in"
+               (("AC_JNI_INCLUDE_DIR") ""))
+
+             ;; This script will call /bin/sh, so it's easier to just
+             ;; bootstrap manually.
+             (delete-file "autogen.sh")
+             (substitute* "rules.mk.in"
+               (("@PTHREAD_LIBS@") "-lpthread")
+               (("@PTHREAD_CFLAGS@") "")
+               (("@PTHREAD_CC@") "gcc"))
+
+             ;; The GNU variadic macros actually work, whereas the C99
+             ;; implementation fails to build.
+             (substitute* "util/neo_misc.h"
+               (("#define USE_C99_VARARG_MACROS") "#define USE_GNUC_VARARG_MACROS"))
+
+             (setenv "CFLAGS" "-fPIC")
+
+             ;; This directory is created some time during the build, but the
+             ;; early libtool processes assume the directory exists.  When
+             ;; they are run first they copy the libraries themselves to the
+             ;; file "libs" instead of moving them into the directory.
+             (mkdir-p "libs")))
+         (add-after 'build 'build-documentation
+           (lambda _ (invoke "make" "man")))
+         (add-after 'install 'install-streamhtmlparser
+           (lambda* (#:key make-flags parallel-build? #:allow-other-keys)
+             (with-directory-excursion "streamhtmlparser"
+               (apply invoke "make" "-j" (if parallel-build?
+                                             (number->string (parallel-job-count))
+                                             "1")
+                      "install" make-flags)))))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("libtool" ,libtool)
+       ("python" ,python-2)
+       ("streamhtmlparser"
+        ,(let ((commit "551109ac02a31957a0e776416774c7b515b4b7c7"))
+           (origin
+             (method git-fetch)
+             (uri (git-reference
+                   (url "https://github.com/google/streamhtmlparser/")
+                   (commit commit)))
+             (file-name (git-file-name "streamhtmlparser" commit))
+             (sha256
+              (base32
+               "0bmrdakk930q3m8fmq0xcy7n7cdvlk1xma4z9204919hvb1gk9md")))))))
+    (home-page "https://github.com/blong42/clearsilver")
+    (synopsis "CGI kit and HTML templating system")
+    (description
+     "This package includes Clearsilver, the CGI kit and HTML templating
+system.")
+    (license license:bsd-3)))
+
 (define-public python-py-ubjson
   (package
     (name "python-py-ubjson")
@@ -6700,8 +6612,7 @@ encoder/decoder based on the draft-12 specification for UBJSON.")
                   #t))))
     (build-system ant-build-system)
     (inputs
-     `(("java-commons-daemon" ,java-commons-daemon)
-       ("java-ecj" ,java-ecj)))
+     (list java-commons-daemon java-ecj))
     (arguments
      `(#:build-target "deploy"
        #:tests? #f; requires downloading some files.
@@ -7199,8 +7110,7 @@ infrastructure")))
        #:source-dir "jetty-util-ajax/src/main/java"
        #:tests? #f)); require junit 5
     (inputs
-     `(("java-eclipse-jetty-util" ,java-eclipse-jetty-util)
-       ("java-javaee-servletapi" ,java-javaee-servletapi)))))
+     (list java-eclipse-jetty-util java-javaee-servletapi))))
 
 (define-public java-eclipse-jetty-servlet
   (package
@@ -7275,10 +7185,10 @@ container.")))
              (chdir "jetty-xml")
              #t)))))
     (inputs
-     `(("java-eclipse-jetty-util" ,java-eclipse-jetty-util)))
+     (list java-eclipse-jetty-util))
     (native-inputs
-     `(("java-eclipse-jetty-io" ,java-eclipse-jetty-io)
-       ,@(package-native-inputs java-eclipse-jetty-util)))))
+     (modify-inputs (package-native-inputs java-eclipse-jetty-util)
+       (prepend java-eclipse-jetty-io)))))
 
 (define-public java-eclipse-jetty-xml-9.2
   (package
@@ -7321,14 +7231,14 @@ container.")))
              (chdir "jetty-webapp")
              #t)))))
     (inputs
-     `(("java-eclipse-jetty-util" ,java-eclipse-jetty-util)
-       ("java-eclipse-jetty-http" ,java-eclipse-jetty-http)
-       ("java-eclipse-jetty-io" ,java-eclipse-jetty-io)
-       ("java-eclipse-jetty-server" ,java-eclipse-jetty-server)
-       ("java-eclipse-jetty-servlet" ,java-eclipse-jetty-servlet)
-       ("java-eclipse-jetty-security" ,java-eclipse-jetty-security)
-       ("java-eclipse-jetty-xml" ,java-eclipse-jetty-xml)
-       ("java-javaee-servletapi" ,java-javaee-servletapi)))))
+     (list java-eclipse-jetty-util
+           java-eclipse-jetty-http
+           java-eclipse-jetty-io
+           java-eclipse-jetty-server
+           java-eclipse-jetty-servlet
+           java-eclipse-jetty-security
+           java-eclipse-jetty-xml
+           java-javaee-servletapi))))
 
 (define-public java-eclipse-jetty-webapp-9.2
   (package
@@ -7389,9 +7299,7 @@ container.")))
                    (find-files "." ".*.properties"))))
              #t)))))
     (native-inputs
-     `(("java-junit" ,java-junit)
-       ("java-hamcrest-core" ,java-hamcrest-core)
-       ("java-gson" ,java-gson)))
+     (list java-junit java-hamcrest-core java-gson))
     (home-page "https://jsoup.org")
     (synopsis "HTML parser")
     (description "Jsoup is a Java library for working with real-world HTML.  It
@@ -7420,7 +7328,7 @@ best of DOM, CSS, and jQuery-like methods.")
        ;; Tests all fail with InstantiationException from mockito
        #:tests? #f))
     (propagated-inputs
-     `(("java-commons-codec" ,java-commons-codec)))
+     (list java-commons-codec))
     (home-page "https://github.com/mttkay/signpost")
     (synopsis "Lightweight client-side OAuth library for Java")
     (description "Signpost is the easy and intuitive solution for signing
@@ -7482,10 +7390,9 @@ based on this library, allowing Perl programmers to easily validate HTML.")
                  "-L" (assoc-ref inputs "tidyp") "/lib")))
              #t)))))
     (inputs
-     `(("perl-libwww" ,perl-libwww)
-       ("tidyp" ,tidyp)))
+     (list perl-libwww tidyp))
     (native-inputs
-     `(("perl-test-exception" ,perl-test-exception)))
+     (list perl-test-exception))
     (home-page "https://metacpan.org/release/HTML-Tidy")
     (synopsis "(X)HTML validation in a Perl object")
     (description "@code{HTML::Tidy} is an HTML checker in a handy dandy
@@ -7575,7 +7482,7 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.")
 (define-public nghttp2
   (package
     (name "nghttp2")
-    (version "1.41.0")
+    (version "1.44.0")
     (source
      (origin
        (method url-fetch)
@@ -7584,16 +7491,14 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.")
                            "nghttp2-" version ".tar.xz"))
        (sha256
         (base32
-         "1hk77vngjmvvzb5y1gi1aqwf6qywrc7yak08zvzb7x81qs6mphmb"))))
+         "0p9wvva4g8hwj55x19rbyvnq2dbsnf65rphhxnpqs7ll54xlg6an"))))
     (build-system gnu-build-system)
     (outputs (list "out"
                    "lib"))              ; only libnghttp2
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-
-       ;; Required by tests.
-       ("cunit" ,cunit)
-       ("tzdata" ,tzdata-for-tests)))
+     (list pkg-config
+           ;; Required by tests.
+           cunit python tzdata-for-tests))
     (inputs
      ;; Required to build the tools (i.e. without ‘--enable-lib-only’).
      `(("c-ares" ,c-ares)
@@ -7612,7 +7517,10 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.")
              "--enable-app"             ; build all the tools
              "--enable-hpack-tools"     ; ...all the tools
              "--disable-examples"
-             "--disable-static")        ; don't bother building .a files
+             "--disable-static"         ; don't bother building .a files
+             ,@(if (%current-target-system)
+                   '("--disable-python-bindings")
+                   '()))
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'break-circular-reference
@@ -7661,7 +7569,7 @@ compressed JSON header blocks.
 (define-public hpcguix-web
   (package
     (name "hpcguix-web")
-    (version "0.1.0")
+    (version "0.2.0")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -7670,7 +7578,7 @@ compressed JSON header blocks.
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "02lz5k1hhkwfz3nr3lsd69icsz6n0q82z047d3svi09qpxw6y0cj"))))
+                "1l856d1vr63ns1sp9fm6v97p71mx00769k6lwzqzppsb9clksnwp"))))
     (build-system gnu-build-system)
     (arguments
      `(#:modules ((guix build gnu-build-system)
@@ -7694,9 +7602,10 @@ compressed JSON header blocks.
                     (git      (assoc-ref inputs "guile-git"))
                     (bs       (assoc-ref inputs "guile-bytestructures"))
                     (json     (assoc-ref inputs "guile-json"))
+                    (zlib     (assoc-ref inputs "guile-zlib"))
                     (guile-cm (assoc-ref inputs
                                          "guile-commonmark"))
-                    (deps (list guile gcrypt git bs guile-cm guix json))
+                    (deps (list guile gcrypt git bs zlib guile-cm guix json))
                     (effective
                      (read-line
                       (open-pipe* OPEN_READ
@@ -7721,15 +7630,15 @@ compressed JSON header blocks.
      `(("autoconf" ,autoconf)
        ("automake" ,automake)
        ("uglify-js" ,uglify-js)
-       ("pkg-config" ,pkg-config)))
+       ("pkg-config" ,pkg-config)
+       ("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))))
     (inputs
      `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))
        ("guix" ,guix)
-       ("bash-minimal" ,bash-minimal)))           ;for 'wrap-program'
-    (propagated-inputs
-     `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))
+       ("guile-zlib" ,guile-zlib)
        ("guile-commonmark" ,guile-commonmark)
-       ("guile-json" ,guile-json-4)))
+       ("guile-json" ,guile-json-4)
+       ("bash-minimal" ,bash-minimal)))
     (home-page "https://github.com/UMCUGenetics/hpcguix-web")
     (synopsis "Web interface for cluster deployments of Guix")
     (description "Hpcguix-web provides a web interface to the list of packages
@@ -7750,8 +7659,7 @@ instructions on how to use Guix in a shared HPC environment.")
                 "09a0gm67nml86qby1k1gh7rdxamnrnzwr6l9r5iiq94favjs0xrl"))))
     (build-system gnu-build-system)
     (inputs
-     `(("libressl" ,libressl)
-       ("zlib" ,zlib)))
+     (list libressl zlib))
     (home-page "https://www.httrack.com/")
     (synopsis "Easy-to-use offline browser utility")
     (description "HTTrack allows you to download a World Wide Web site from
@@ -7769,23 +7677,23 @@ HTTrack is fully configurable, and has an integrated help system.")
 (define-public buku
   (package
     (name "buku")
-    (version "4.5")
+    (version "4.6")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "buku" version))
-       (file-name (git-file-name name version))
        (sha256
-        (base32 "1bk3h2ya34a5livyf6p7kawh50ikbix5szsq2rkb8cp5bwrzsj5i"))))
+        (base32 "1n4d1mkjyvzdxbyq067p1p9skb3iwx0msd86nzr224dlqrfh9675"))))
     (build-system python-build-system)
     (arguments
-     `(#:tests? #f))                    ;FIXME: many tests need network access
+     `(#:tests? #f                     ; FIXME: many tests need network access
+       #:phases
+       (modify-phases %standard-phases
+         ;; XXX: missing inputs, e.g. python-flask-admin
+         (delete 'sanity-check))))
     (inputs
-     `(("python-beautifulsoup4" ,python-beautifulsoup4)
-       ("python-certifi" ,python-certifi)
-       ("python-cryptography" ,python-cryptography)
-       ("python-html5lib" ,python-html5lib)
-       ("python-urllib3" ,python-urllib3)))
+     (list python-beautifulsoup4 python-certifi python-cryptography
+           python-flask python-html5lib python-urllib3))
     (home-page "https://github.com/jarun/buku")
     (synopsis "Bookmark manager")
     (description
@@ -7839,8 +7747,7 @@ Anonip can also be uses as a Python module in your own Python application.")
          "0kckcwvqklavd855np9aq5js6mg84isrlwchr504yigwma0sm7hm"))))
     (build-system go-build-system)
     (propagated-inputs
-     `(("go-github-com-robfig-cron" ,go-github-com-robfig-cron)
-       ("go-golang-org-x-time" ,go-golang-org-x-time)))
+     (list go-github-com-robfig-cron go-golang-org-x-time))
     (arguments
      `(#:import-path "github.com/tsileo/poussetaches"))
     (home-page "https://github.com/tsileo/poussetaches")
@@ -7911,7 +7818,7 @@ of the DOM tree
            (lambda _
              (chdir "Build"))))))
     (inputs
-     `(("freetype" ,freetype)))
+     (list freetype))
     (home-page "https://github.com/libRocket/libRocket") ; http://librocket.com/ is down.
     (synopsis "HTML/CSS user interface library")
     (description "libRocket is a C++ user interface package based on the HTML
@@ -7930,39 +7837,35 @@ solution for any project's interface needs:
     (license license:expat)))
 
 (define-public gmnisrv
-  (let ((commit "32854b79c73b278bf33eb5123abf1c36abdc7c01")
-        (revision "2"))
-    (package
-      (name "gmnisrv")
-      (version (git-version "0" revision commit))
-      (home-page "https://git.sr.ht/~sircmpwn/gmnisrv")
-      (source (origin
-                (method git-fetch)
-                (uri (git-reference
-                      (url home-page)
-                      (commit commit)))
-                (sha256
-                 (base32
-                  "0lbb3ablwkdcgm1cjr1hikr55y8gpl420nh8b8g9wn4abhm2xgr9"))
-                (file-name (git-file-name name version))))
-      (build-system gnu-build-system)
-      (arguments
-       `(#:tests? #f ; no check target
-         #:configure-flags (list "--sysconfdir=/etc"
-                                 (string-append "--with-mimedb="
-                                                (assoc-ref %build-inputs "mailcap")
-                                                "/etc/mime.types"))
-         #:make-flags (list (string-append "CC=" ,(cc-for-target)))))
-      (inputs
-       `(("mailcap" ,mailcap)
-         ("openssl" ,openssl)))
-      (native-inputs
-       `(("pkg-config" ,pkg-config)
-         ("scdoc" ,scdoc)))
-      (synopsis "Simple Gemini protocol server")
-      (description "gmnisrv is a simple Gemini protocol server written in C.")
-      (license (list license:gpl3+
-                     license:bsd-3))))) ;; for ini.c and ini.h
+  (package
+    (name "gmnisrv")
+    (version "1.0")
+    (home-page "https://git.sr.ht/~sircmpwn/gmnisrv")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url home-page)
+             (commit version)))
+       (sha256
+        (base32 "115r1dw9k08r2nvygy8ll21qvsc5kmzi5jcqm7g7r8q8hifxglap"))
+       (file-name (git-file-name name version))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f                      ;no check target
+       #:configure-flags (list "--sysconfdir=/etc"
+                               (string-append "--with-mimedb="
+                                              (assoc-ref %build-inputs "mailcap")
+                                              "/etc/mime.types"))
+       #:make-flags (list (string-append "CC=" ,(cc-for-target)))))
+    (inputs
+     (list mailcap openssl))
+    (native-inputs
+     (list pkg-config scdoc))
+    (synopsis "Simple Gemini protocol server")
+    (description "gmnisrv is a simple Gemini protocol server written in C.")
+    (license (list license:gpl3+
+                   license:bsd-3)))) ;; for ini.c and ini.h
 
 (define-public libzim
   (package
@@ -7988,8 +7891,7 @@ solution for any project's interface needs:
        ("xapian" ,xapian)
        ("zstd" ,zstd "lib")))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("googletest" ,googletest)))
+     (list pkg-config googletest))
     (home-page "https://wiki.openzim.org/wiki/Main_Page")
     (synopsis "Reference implementation of the ZIM specification")
     (description "The openZIM project proposes offline storage solutions for
@@ -8026,15 +7928,15 @@ for ZIM files.")
                                "/bin/aria2c\"")))
              #t)))))
     (inputs
-     `(("aria2" ,aria2)
-       ("curl" ,curl)
-       ("icu4c" ,icu4c)
-       ("libmicrohttpd" ,libmicrohttpd)
-       ("libzim" ,libzim)
-       ("pugixml" ,pugixml)
-       ("xapian" ,xapian)
-       ("zlib" ,zlib)
-       ("zstd" ,zstd "lib")))
+     (list aria2
+           curl
+           icu4c
+           libmicrohttpd
+           libzim
+           pugixml
+           xapian
+           zlib
+           `(,zstd "lib")))
     (native-inputs
      `(("mustache" ,(origin
                       (method git-fetch)
@@ -8097,19 +7999,19 @@ It contains the code shared by all Kiwix ports.")
                  `("QTWEBENGINEPROCESS_PATH" = (,qt-process-path)))
                #t))))))
     (inputs
-     `(("curl" ,curl)
-       ("icu4c" ,icu4c)
-       ("kiwix-lib" ,kiwix-lib)
-       ("libmicrohttpd" ,libmicrohttpd)
-       ("libzim" ,libzim)
-       ("pugixml" ,pugixml)
-       ("qtbase" ,qtbase-5)
-       ("qtdeclarative" ,qtdeclarative)
-       ("qtwebchannel" ,qtwebchannel)
-       ("qtwebengine" ,qtwebengine)
-       ("xapian" ,xapian)
-       ("zlib" ,zlib)
-       ("zstd" ,zstd "lib")))
+     (list curl
+           icu4c
+           kiwix-lib
+           libmicrohttpd
+           libzim
+           pugixml
+           qtbase-5
+           qtdeclarative
+           qtwebchannel
+           qtwebengine
+           xapian
+           zlib
+           `(,zstd "lib")))
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("qmake" ,qtbase-5)))
@@ -8119,6 +8021,42 @@ It contains the code shared by all Kiwix ports.")
 offline (such as Wikipedia), without any access to Internet.")
     (license license:gpl3)))
 
+(define-public kiwix-tools
+  (package
+    (name "kiwix-tools")
+    (version "3.1.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://download.kiwix.org/release/"
+                                  "kiwix-tools/kiwix-tools-" version ".tar.xz"))
+              (sha256
+               (base32
+                "1npf9ddhpkmx97gxmvmwmi8a69md8kh2szimd9rpg6ggd4big03a"))))
+    (build-system meson-build-system)
+    (inputs
+     (list curl
+           icu4c
+           kiwix-lib
+           libmicrohttpd
+           libzim
+           pugixml
+           xapian
+           zlib
+           `(,zstd "lib")))
+    (native-inputs
+     (list pkg-config))
+    (home-page "https://wiki.kiwix.org/wiki/Software")
+    (synopsis "Kiwix command line tools")
+    (description "The Kiwix tools are a collection of Kiwix-related command line
+tools:
+@itemize
+@item kiwix-manage: Manage XML based library of ZIM files
+@item kiwix-read: Read ZIM file content
+@item kiwix-search: Fulltext search in ZIM files
+@item kiwix-serve: HTTP daemon serving ZIM files
+@end itemize\n")
+    (license license:gpl3+)))
+
 (define-public uriparser
   (let ((commit "25dddb16cf044a7df27884e7ad3911baaaca3d7c")
         (revision "1"))
@@ -8135,9 +8073,7 @@ offline (such as Wikipedia), without any access to Internet.")
                  (base32
                   "1ffzia679axcsccx2fxjpxhb0i5xc42zxn446x6c1170w6v69qf6"))))
       (build-system cmake-build-system)
-      (native-inputs `(("gtest" ,googletest)
-                       ("doxygen" ,doxygen)
-                       ("graphviz" ,graphviz)))
+      (native-inputs (list googletest doxygen graphviz))
       (synopsis "Strictly RFC 3986 compliant URI parsing and handling library")
       (description "uriparser is a strictly RFC 3986 compliant URI parsing and
 handling library written in C89 (\"ANSI C\").  uriparser is fast and supports