gnu: irssi: Update to 0.8.20 [fixes CVE-2016-{7044,7045}].
[jackhill/guix/guix.git] / gnu / packages / web.scm
CommitLineData
29a2ccd3 1;;; GNU Guix --- Functional package management for GNU
be6bfa7d 2;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
29a2ccd3 3;;; Copyright © 2013 Aljosha Papsch <misc@rpapsch.de>
bb8afbf5 4;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
5fb205c6 5;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
e6f0ca2f 6;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
38012ed5 7;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
7b158c4e 8;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
d8f1c074 9;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
67c2fc01 10;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
ec672946 11;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
6c277c89 12;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
7ffbbea0 13;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
bd9fe0f0 14;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
0ee23de9 15;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
01497dfe 16;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
797a5cf5 17;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net>
29a2ccd3
AP
18;;;
19;;; This file is part of GNU Guix.
20;;;
21;;; GNU Guix is free software; you can redistribute it and/or modify it
22;;; under the terms of the GNU General Public License as published by
23;;; the Free Software Foundation; either version 3 of the License, or (at
24;;; your option) any later version.
25;;;
26;;; GNU Guix is distributed in the hope that it will be useful, but
27;;; WITHOUT ANY WARRANTY; without even the implied warranty of
28;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
29;;; GNU General Public License for more details.
30;;;
31;;; You should have received a copy of the GNU General Public License
32;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
33
34(define-module (gnu packages web)
c9d512fa 35 #:use-module (ice-9 match)
b5b73a82 36 #:use-module ((guix licenses) #:prefix l:)
29a2ccd3
AP
37 #:use-module (guix packages)
38 #:use-module (guix download)
833efa0d 39 #:use-module (guix git-download)
18cb3df8 40 #:use-module (guix cvs-download)
b8ae816b 41 #:use-module (guix utils)
29a2ccd3 42 #:use-module (guix build-system gnu)
7ffbbea0 43 #:use-module (guix build-system glib-or-gtk)
c2337213
LC
44 #:use-module (guix build-system perl)
45 #:use-module (guix build-system cmake)
a359c9c1 46 #:use-module (guix build-system r)
0ee23de9 47 #:use-module (guix build-system trivial)
38e62c81 48 #:use-module (gnu packages)
29a2ccd3 49 #:use-module (gnu packages apr)
99828fa7 50 #:use-module (gnu packages documentation)
b777d784 51 #:use-module (gnu packages docbook)
833efa0d 52 #:use-module (gnu packages autotools)
ce0614dd 53 #:use-module (gnu packages compression)
bb470bd3 54 #:use-module (gnu packages cyrus-sasl)
f643a6e9 55 #:use-module (gnu packages databases)
22df7001
EB
56 #:use-module (gnu packages bison)
57 #:use-module (gnu packages flex)
9fe938c1 58 #:use-module (gnu packages mit-krb5)
57c2680e 59 #:use-module (gnu packages gd)
488e8863 60 #:use-module (gnu packages gettext)
7ffbbea0
RS
61 #:use-module (gnu packages glib)
62 #:use-module (gnu packages gnome)
22df7001
EB
63 #:use-module (gnu packages gperf)
64 #:use-module (gnu packages gtk)
488e8863 65 #:use-module (gnu packages icu4c)
22df7001 66 #:use-module (gnu packages image)
bb470bd3 67 #:use-module (gnu packages lua)
ce0614dd 68 #:use-module (gnu packages base)
bd9fe0f0 69 #:use-module (gnu packages perl)
ed865936 70 #:use-module (gnu packages python)
c9ea41ff 71 #:use-module (gnu packages pcre)
bb470bd3 72 #:use-module (gnu packages pkg-config)
ec672946 73 #:use-module (gnu packages valgrind)
b777d784 74 #:use-module (gnu packages xml)
d22d72fc 75 #:use-module (gnu packages curl)
38012ed5 76 #:use-module (gnu packages perl)
cc2b77df 77 #:use-module (gnu packages texinfo)
ec672946 78 #:use-module (gnu packages textutils)
a359c9c1
RW
79 #:use-module (gnu packages tls)
80 #:use-module (gnu packages statistics))
29a2ccd3
AP
81
82(define-public httpd
83 (package
84 (name "httpd")
25a814ce 85 (version "2.4.23")
29a2ccd3
AP
86 (source (origin
87 (method url-fetch)
88 (uri (string-append "mirror://apache/httpd/httpd-"
89 version ".tar.bz2"))
90 (sha256
91 (base32
25a814ce 92 "0n2yx3gjlpr4kgqx845fj6amnmg25r2l6a7rzab5hxnpmar985hc"))))
29a2ccd3 93 (build-system gnu-build-system)
74c8b174 94 (native-inputs `(("pcre" ,pcre "bin"))) ;for 'pcre-config'
29a2ccd3
AP
95 (inputs `(("apr" ,apr)
96 ("apr-util" ,apr-util)
97 ("openssl" ,openssl)
50b7a6a0 98 ("perl" ,perl))) ; needed to run bin/apxs
29a2ccd3
AP
99 (arguments
100 `(#:test-target "test"
101 #:configure-flags (list "--enable-rewrite"
102 "--enable-userdir"
103 "--enable-vhost-alias"
104 "--enable-ssl"
105 "--enable-mime-magic"
106 (string-append "--sysconfdir="
107 (assoc-ref %outputs "out")
108 "/etc/httpd"))))
109 (synopsis "Featureful HTTP server")
110 (description
111 "The Apache HTTP Server Project is a collaborative software development
112effort aimed at creating a robust, commercial-grade, featureful, and
35b9e423
EB
113freely-available source code implementation of an HTTP (Web) server. The
114project is jointly managed by a group of volunteers located around the world,
115using the Internet and the Web to communicate, plan, and develop the server
116and its related documentation.")
29a2ccd3
AP
117 (license l:asl2.0)
118 (home-page "https://httpd.apache.org/")))
c9ea41ff 119
c9d512fa
MW
120(define-public nginx
121 (package
122 (name "nginx")
c095330a 123 (version "1.10.1")
c9d512fa
MW
124 (source (origin
125 (method url-fetch)
126 (uri (string-append "http://nginx.org/download/nginx-"
127 version ".tar.gz"))
128 (sha256
129 (base32
c095330a 130 "00d8hxj8453c7989qd7z4f1mjp0k3ib8k29i1qyf11b4ar35ilqz"))))
c9d512fa
MW
131 (build-system gnu-build-system)
132 (inputs `(("pcre" ,pcre)
133 ("openssl" ,openssl)
134 ("zlib" ,zlib)))
135 (arguments
136 `(#:tests? #f ; no test target
137 #:phases
a71c315b 138 (modify-phases %standard-phases
3a4de6b2 139 (add-before 'configure 'patch-/bin/sh
a71c315b
DT
140 (lambda _
141 (substitute* "auto/feature"
142 (("/bin/sh") (which "bash")))))
3a4de6b2 143 (replace 'configure
a71c315b
DT
144 (lambda* (#:key outputs #:allow-other-keys)
145 (let ((flags
146 (list (string-append "--prefix=" (assoc-ref outputs "out"))
147 "--with-http_ssl_module"
148 "--with-pcre-jit"
149 "--with-ipv6"
150 "--with-debug"
151 ;; Even when not cross-building, we pass the
152 ;; --crossbuild option to avoid customizing for the
153 ;; kernel version on the build machine.
154 ,(let ((system "Linux") ; uname -s
155 (release "2.6.32") ; uname -r
156 ;; uname -m
157 (machine (match (or (%current-target-system)
158 (%current-system))
159 ("x86_64-linux" "x86_64")
160 ("i686-linux" "i686")
4788deea
MW
161 ("mips64el-linux" "mips64")
162 ;; Prevent errors when querying
163 ;; this package on unsupported
164 ;; platforms, e.g. when running
165 ;; "guix package --search="
166 (_ "UNSUPPORTED"))))
a71c315b
DT
167 (string-append "--crossbuild="
168 system ":" release ":" machine)))))
169 (setenv "CC" "gcc")
170 (format #t "environment variable `CC' set to `gcc'~%")
171 (format #t "configure flags: ~s~%" flags)
59446b20 172 (zero? (apply system* "./configure" flags)))))
3a4de6b2 173 (add-after 'install 'fix-root-dirs
59446b20
DT
174 (lambda* (#:key outputs #:allow-other-keys)
175 ;; 'make install' puts things in strange places, so we need to
176 ;; clean it up ourselves.
177 (let* ((out (assoc-ref outputs "out"))
178 (share (string-append out "/share/nginx")))
179 ;; This directory is empty, so get rid of it.
180 (rmdir (string-append out "/logs"))
181 ;; Example configuration and HTML files belong in
182 ;; /share.
183 (mkdir-p share)
184 (rename-file (string-append out "/conf")
185 (string-append share "/conf"))
186 (rename-file (string-append out "/html")
187 (string-append share "/html"))))))))
c9d512fa
MW
188 (home-page "http://nginx.org")
189 (synopsis "HTTP and reverse proxy server")
190 (description
191 "Nginx (\"engine X\") is a high-performance web and reverse proxy server
192created by Igor Sysoev. It can be used both as a standalone web server
193and as a proxy to reduce the load on back-end HTTP or mail servers.")
194 ;; Almost all of nginx is distributed under the bsd-2 license.
195 ;; The exceptions are:
196 ;; * The 'nginx-http-push' module is covered by the expat license.
197 ;; * The 'nginx-development-kit' module is mostly covered by bsd-3,
198 ;; except for two source files which are bsd-4 licensed.
199 (license (list l:bsd-2 l:expat l:bsd-3 l:bsd-4))))
200
a641b579
EB
201(define-public starman
202 (package
203 (name "starman")
654116c1 204 (version "0.4014")
a641b579
EB
205 (source
206 (origin
207 (method url-fetch)
208 (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/"
209 "Starman-" version ".tar.gz"))
210 (sha256
211 (base32
654116c1 212 "1sbb5rb3vs82rlh1fjkgkcmj5pj62b4y9si4ihh45sl9m8c2qxx5"))))
a641b579
EB
213 (build-system perl-build-system)
214 (native-inputs
215 `(("perl-libwww" ,perl-libwww)
216 ("perl-module-build-tiny" ,perl-module-build-tiny)
217 ("perl-test-requires" ,perl-test-requires)))
218 (propagated-inputs
219 `(("perl-data-dump" ,perl-data-dump)
220 ("perl-http-date" ,perl-http-date)
221 ("perl-http-message" ,perl-http-message)
222 ("perl-http-parser-xs" ,perl-http-parser-xs)
223 ("perl-net-server" ,perl-net-server)
224 ("perl-plack" ,perl-plack)
225 ("perl-test-tcp" ,perl-test-tcp)))
226 (home-page "http://search.cpan.org/dist/Starman")
227 (synopsis "PSGI/Plack web server")
228 (description "Starman is a PSGI perl web server that has unique features
229such as high performance, preforking, signal support, superdaemon awareness,
230and UNIX socket support.")
231 (license (package-license perl))))
232
2b0bba49
RW
233(define-public jansson
234 (package
235 (name "jansson")
236 (version "2.7")
237 (source (origin
238 (method url-fetch)
239 (uri
240 (string-append "http://www.digip.org/jansson/releases/jansson-"
241 version ".tar.gz"))
242 (sha256
243 (base32
538884cc
EF
244 "1mvq9p85khsl818i4vbszyfab0fd45mdrwrxjkzw05mk1xcyc1br"))
245 (patches (search-patches "jansson-CVE-2016-4425.patch"))))
2b0bba49
RW
246 (build-system gnu-build-system)
247 (home-page "http://www.digip.org/jansson/")
248 (synopsis "JSON C library")
249 (description
250 "Jansson is a C library for encoding, decoding and manipulating JSON
251data.")
252 (license l:expat)))
253
f6ad09ae
LC
254(define-public json-c
255 (package
256 (name "json-c")
257 (version "0.12")
258 (source (origin
259 (method url-fetch)
a124bbd2
SB
260 (uri (string-append
261 "https://s3.amazonaws.com/json-c_releases/releases/json-c-"
262 version ".tar.gz"))
f6ad09ae
LC
263 (sha256
264 (base32
265 "0gwzic3ifg2d0w32ya3agpxh8i083cgvf7kmc51cnbgqnfr02300"))
266 (modules '((guix build utils)))
267 (snippet
268 '(begin
269 ;; Somehow 'config.h.in' is older than
270 ;; 'aclocal.m4', which would trigger a rule to
271 ;; run 'autoheader'.
272 (set-file-time "config.h.in"
273 (stat "aclocal.m4"))
274
275 ;; Don't try to build with -Werror.
276 (substitute* (find-files "." "Makefile\\.in")
277 (("-Werror") ""))))))
278 (build-system gnu-build-system)
279 (arguments '(#:parallel-build? #f
280 #:parallel-tests? #f))
281 (home-page "https://github.com/json-c/json-c/wiki")
282 (synopsis "JSON implementation in C")
283 (description
284 "JSON-C implements a reference counting object model that allows you to
285easily construct JSON objects in C, output them as JSON formatted strings and
286parse JSON formatted strings back into the C representation of JSON objects.")
287 (license l:x11)))
288
bd9fe0f0
BW
289(define-public krona-tools
290 (package
291 (name "krona-tools")
9712ef8d 292 (version "2.7")
bd9fe0f0
BW
293 (source (origin
294 (method url-fetch)
295 (uri (string-append
296 "https://github.com/marbl/Krona/releases/download/v"
297 version "/KronaTools-" version ".tar"))
298 (sha256
299 (base32
9712ef8d 300 "0wvgllcqscsfb4xc09y3fqhx8i38pmr4w55vjs5y79wx56n710iq"))))
bd9fe0f0
BW
301 (build-system perl-build-system)
302 (arguments
5d52ac74 303 `(#:phases
bd9fe0f0
BW
304 (modify-phases %standard-phases
305 ;; There is no configure or build steps.
306 (delete 'configure)
9712ef8d 307 (delete 'build)
bd9fe0f0
BW
308 ;; Install script "install.pl" expects the build directory to remain
309 ;; after installation, creating symlinks etc., so re-implement it
310 ;; here.
311 (replace 'install
312 (lambda* (#:key outputs #:allow-other-keys)
313 (let ((bin (string-append (assoc-ref outputs "out") "/bin"))
314 (perl (string-append (assoc-ref outputs "out")
5d52ac74 315 "/lib/perl5/site_perl/krona-tools/lib")))
bd9fe0f0
BW
316 (mkdir-p bin)
317 (for-each
318 (lambda (script)
319 (let* ((executable (string-append "scripts/" script ".pl")))
320 ;; Prefix executables with 'kt' as install script does.
321 (copy-file executable (string-append bin "/kt" script))))
322 '("ClassifyBLAST"
323 "GetContigMagnitudes"
9712ef8d
BW
324 "GetLCA"
325 "GetTaxIDFromAcc"
326 "GetTaxInfo"
bd9fe0f0
BW
327 "ImportBLAST"
328 "ImportDiskUsage"
329 "ImportEC"
330 "ImportFCP"
331 "ImportGalaxy"
332 "ImportKrona"
333 "ImportMETAREP-BLAST"
334 "ImportMETAREP-EC"
335 "ImportMGRAST"
336 "ImportPhymmBL"
337 "ImportRDP"
338 "ImportRDPComparison"
339 "ImportTaxonomy"
340 "ImportText"
341 "ImportXML"))
9712ef8d
BW
342 (for-each
343 (lambda (directory)
344 (copy-recursively directory
345 (string-append perl "/../" directory)))
346 (list "data" "img" "taxonomy" "src"))
bd9fe0f0
BW
347 (install-file "lib/KronaTools.pm" perl))))
348 (add-after 'install 'wrap-program
349 (lambda* (#:key inputs outputs #:allow-other-keys)
350 (let* ((out (assoc-ref outputs "out"))
351 (path (getenv "PERL5LIB")))
352 (for-each
353 (lambda (executable)
354 (wrap-program executable
355 `("PERL5LIB" ":" prefix
5d52ac74
BW
356 (,(string-append out "/lib/perl5/site_perl/krona-tools/lib")))))
357 (find-files (string-append out "/bin/") ".*")))))
358 (delete 'check)
359 (add-after 'wrap-program 'check
360 (lambda* (#:key inputs outputs #:allow-other-keys)
361 (with-directory-excursion "data"
362 (zero? (system* (string-append (assoc-ref outputs "out") "/bin/ktImportText")
363 "ec.tsv"))))))))
bd9fe0f0
BW
364 (inputs
365 `(("perl" ,perl)))
366 (home-page "https://github.com/marbl/Krona/wiki")
367 (synopsis "Hierarchical data exploration with zoomable HTML5 pie charts")
368 (description
369 "Krona is a flexible tool for exploring the relative proportions of
370hierarchical data, such as metagenomic classifications, using a radial,
371space-filling display. It is implemented using HTML5 and JavaScript, allowing
372charts to be explored locally or served over the Internet, requiring only a
373current version of any major web browser.")
374 (license l:bsd-3)))
375
ccb8da26
RW
376(define-public rapidjson
377 (package
378 (name "rapidjson")
379 (version "1.0.2")
380 (source (origin
381 (method url-fetch)
382 (uri (string-append
383 "https://github.com/miloyip/rapidjson/archive/v"
384 version ".tar.gz"))
385 (file-name (string-append name "-" version ".tar.gz"))
386 (sha256
387 (base32
c5c4c4b4
LC
388 "0rl6s0vg5y1dhh9vfl1lqay3sxf69sxjh0czxrjmasn7ng91wwf3"))
389 (modules '((guix build utils)))
390 (snippet
391 ;; Building with GCC 4.8 with -Werror was fine, but 4.9.3
392 ;; complains in new ways, so turn of -Werror.
393 '(substitute* (find-files "." "^CMakeLists\\.txt$")
394 (("-Werror") "")))))
ccb8da26
RW
395 (build-system cmake-build-system)
396 (home-page "https://github.com/miloyip/rapidjson")
397 (synopsis "JSON parser/generator for C++ with both SAX/DOM style API")
398 (description
399 "RapidJSON is a fast JSON parser/generator for C++ with both SAX/DOM
400style API.")
401 (license l:expat)))
402
d8f1c074
ED
403(define-public libyajl
404 (package
405 (name "libyajl")
406 (version "2.1.0")
407 (source (origin
408 (method url-fetch)
409 (uri (string-append "https://github.com/lloyd/yajl/"
410 "archive/" version ".tar.gz"))
411 (file-name (string-append name "-" version ".tar.gz"))
412 (sha256
413 (base32
414 "0nmcqpaiq4pv7dymyg3n3jsd57yhp5npxl26a1hzw3m3lmj37drz"))))
415 (build-system cmake-build-system)
416 (home-page "https://lloyd.github.io/yajl/")
417 (synopsis "C library for parsing JSON")
418 (description
419 "Yet Another JSON Library (YAJL) is a small event-driven (SAX-style) JSON
420parser written in ANSI C and a small validating JSON generator.")
421 (license l:isc)))
422
833efa0d
LC
423(define-public libwebsockets
424 (package
425 (name "libwebsockets")
c2337213 426 (version "1.3")
833efa0d
LC
427 (source (origin
428 ;; The project does not publish tarballs, so we have to take
429 ;; things from Git.
430 (method git-fetch)
431 (uri (git-reference
432 (url "git://git.libwebsockets.org/libwebsockets")
433 (commit (string-append "v" version
c2337213 434 "-chrome37-firefox30"))))
833efa0d
LC
435 (sha256
436 (base32
c2337213 437 "12fqh2d2098mgf0ls19p9lzibpsqhv7mc5rn1yvrbfnazmcr40g4"))
833efa0d
LC
438 (file-name (string-append name "-" version))))
439
c2337213 440 (build-system cmake-build-system)
833efa0d 441 (arguments
c2337213
LC
442 ;; XXX: The thing lacks a 'make test' target, because CMakeLists.txt
443 ;; doesn't use 'add_test', and it's unclear how to run the test suite.
444 '(#:tests? #f))
833efa0d 445
c2337213 446 (native-inputs `(("perl" ,perl))) ; to build the HTML doc
833efa0d
LC
447 (inputs `(("zlib" ,zlib)
448 ("openssl" ,openssl)))
449 (synopsis "WebSockets library written in C")
450 (description
35b9e423 451 "Libwebsockets is a library that allows C programs to establish client
833efa0d
LC
452and server WebSockets connections---a protocol layered above HTTP that allows
453for efficient socket-like bidirectional reliable communication channels.")
454 (home-page "http://libwebsockets.org/")
455
456 ;; This is LGPLv2.1-only with extra exceptions specified in 'LICENSE'.
457 (license l:lgpl2.1)))
458
488e8863
EB
459(define-public libpsl
460 (package
461 (name "libpsl")
8ac32b57 462 (version "0.14.0")
488e8863
EB
463 (source (origin
464 (method url-fetch)
465 (uri (string-append "https://github.com/rockdaboot/libpsl/"
6c277c89
EF
466 "releases/download/libpsl-" version
467 "/libpsl-" version ".tar.gz"))
488e8863
EB
468 (sha256
469 (base32
8ac32b57 470 "1yrfkwjw5b9y9qb4xqw7g0hk0wdscay701c1wkg8fp7lxny99iz8"))))
488e8863 471 (build-system gnu-build-system)
6c277c89
EF
472 (inputs
473 `(("icu4c" ,icu4c)
474 ("python-2" ,python-2)))
488e8863
EB
475 (home-page "https://github.com/rockdaboot/libpsl")
476 (synopsis "C library for the Publix Suffix List")
477 (description
478 "A \"public suffix\" is a domain name under which Internet users can
479directly register own names.
480
481Browsers and other web clients can use it to avoid privacy-leaking
482\"supercookies\", avoid privacy-leaking \"super domain\" certificates, domain
483highlighting parts of the domain in a user interface, and sorting domain lists
484by site.
485
486Libpsl has built-in PSL data for fast access, allows to load PSL data from
487files, checks if a given domain is a public suffix, provides immediate cookie
488domain verification, finds the longest public part of a given domain, finds
489the shortest private part of a given domain, works with international
490domains (UTF-8 and IDNA2008 Punycode), is thread-safe, and handles IDNA2008
e881752c 491UTS#46.")
488e8863
EB
492 (license l:x11)))
493
18cb3df8
DT
494(define-public tidy
495 (package
496 (name "tidy")
497 (version "20091223")
498 (source (origin
499 (method cvs-fetch)
500 (uri (cvs-reference
501 (root-directory
502 ":pserver:anonymous@tidy.cvs.sourceforge.net:/cvsroot/tidy")
503 (module "tidy")
504 (revision "2009-12-23")))
505 (sha256
506 (base32
4d853910 507 "14dsnmirjcrvwsffqp3as70qr6bbfaig2fv3zvs5g7005jrsbvpb"))
fc1adab1 508 (patches (search-patches "tidy-CVE-2015-5522+5523.patch"))))
18cb3df8
DT
509 (build-system gnu-build-system)
510 (arguments
5294768c
DT
511 '(#:phases (alist-cons-after
512 'unpack 'bootstrap
18cb3df8
DT
513 (lambda* (#:key inputs #:allow-other-keys)
514 ;; configure.in and Makefile.am aren't in the root of the
515 ;; source tree.
516 (copy-recursively "build/gnuauto" ".")
517 (setenv "AUTOMAKE" "automake --foreign")
518 (zero? (system* "autoreconf" "-vfi")))
519 %standard-phases)))
520 (native-inputs
521 `(("automake" ,automake)
522 ("autoconf" ,autoconf)
523 ("libtool" ,libtool)))
524 (synopsis "HTML validator and tidier")
525 (description "HTML Tidy is a command-line tool and C library that can be
526used to validate and fix HTML data.")
527 (home-page "http://tidy.sourceforge.net/")
528 (license (l:x11-style "file:///include/tidy.h"))))
529
8142aff3 530(define-public tinyproxy
c9ea41ff 531 (package
8142aff3 532 (name "tinyproxy")
b5076461 533 (version "1.8.4")
8142aff3
EB
534 (source (origin
535 (method url-fetch)
b5076461
EF
536 (uri (string-append "https://github.com/tinyproxy/tinyproxy/"
537 "releases/download/" version "/tinyproxy-"
538 version ".tar.xz"))
8142aff3
EB
539 (sha256
540 (base32
b5076461 541 "002hi97687czhfkwsjkr174yvlp10224qi6gd5s53z230bgls7x4"))))
8142aff3
EB
542 (build-system gnu-build-system)
543 (arguments
544 `(#:configure-flags
545 (list
546 ;; For the log file, etc.
547 "--localstatedir=/var")
548 #:phases
549 (alist-cons-before
550 'build 'pre-build
551 (lambda* (#:key inputs #:allow-other-keys #:rest args)
552 ;; Uncommenting the next two lines may assist in debugging
553 ;; (substitute* "docs/man5/Makefile" (("a2x") "a2x -v"))
554 ;; (setenv "XML_DEBUG_CATALOG" "1")
555 #t)
556 %standard-phases)))
557 ;; All of the below are used to generate the documentation
558 ;; (Should they be propagated inputs of asciidoc ??)
559 (native-inputs `(("asciidoc" ,asciidoc)
e881752c 560 ("libxml2" ,libxml2)
8142aff3
EB
561 ("docbook-xml" ,docbook-xml)
562 ("docbook-xsl" ,docbook-xsl)
563 ("libxslt" ,libxslt)))
b5076461 564 (home-page "https://tinyproxy.github.io/")
8142aff3
EB
565 (synopsis "Light-weight HTTP/HTTPS proxy daemon")
566 (description "Tinyproxy is a light-weight HTTP/HTTPS proxy
567daemon. Designed from the ground up to be fast and yet small, it is an ideal
568solution for use cases such as embedded deployments where a full featured HTTP
569proxy is required, but the system resources for a larger proxy are
570unavailable.")
571 (license l:gpl2+)))
572
573(define-public polipo
574 (package
575 (name "polipo")
576 (version "1.1.1")
577 (source
578 (origin
579 (method url-fetch)
580 (uri (string-append
581 "http://www.pps.univ-paris-diderot.fr/~jch/software/files/polipo/polipo-"
582 version ".tar.gz"))
583 (sha256
584 (base32
585 "05g09sg9qkkhnc2mxldm1w1xkxzs2ylybkjzs28w8ydbjc3pand2"))))
586 (native-inputs `(("texinfo" ,texinfo)))
587 (build-system gnu-build-system)
588 (arguments
9bd259d8
TGR
589 `(#:phases (modify-phases %standard-phases
590 (delete 'configure))
8142aff3
EB
591 #:make-flags (let ((out (assoc-ref %outputs "out")))
592 (list (string-append "PREFIX=" out)
593 (string-append "LOCAL_ROOT="
594 out "/share/polipo/www")
595 "CC=gcc"))
596 ;; No 'check' target.
597 #:tests? #f))
598 (home-page "http://www.pps.univ-paris-diderot.fr/~jch/software/polipo/")
599 (synopsis "Small caching web proxy")
600 (description
601 "Polipo is a small caching web proxy (web cache, HTTP proxy, and proxy
602server). It was primarily designed to be used by one person or a small group
603of people.")
604 (license l:expat)))
605
606(define-public libyaml
607 (package
608 (name "libyaml")
e00df583 609 (version "0.1.6")
8142aff3
EB
610 (source
611 (origin
612 (method url-fetch)
613 (uri (string-append
614 "http://pyyaml.org/download/libyaml/yaml-"
615 version ".tar.gz"))
0d567b55 616 (patches (search-patches "libyaml-CVE-2014-9130.patch"))
8142aff3
EB
617 (sha256
618 (base32
e00df583 619 "0j9731s5zjb8mjx7wzf6vh7bsqi38ay564x6s9nri2nh9cdrg9kx"))))
8142aff3
EB
620 (build-system gnu-build-system)
621 (home-page "http://pyyaml.org/wiki/LibYAML")
622 (synopsis "YAML 1.1 parser and emitter written in C")
623 (description
624 "LibYAML is a YAML 1.1 parser and emitter written in C.")
625 (license l:expat)))
626
627(define-public libquvi-scripts
628 (package
629 (name "libquvi-scripts")
630 (version "0.4.21")
631 (source
632 (origin
633 (method url-fetch)
634 (uri (string-append
de67e922
LF
635 "mirror://sourceforge/quvi/" (version-major+minor version) "/"
636 name "/" name "-" version ".tar.xz"))
8142aff3
EB
637 (sha256
638 (base32 "0d0giry6bb57pnidymvdl7i5x9bq3ljk3g4bs294hcr5mj3cq0kw"))))
639 (build-system gnu-build-system)
640 (home-page "http://quvi.sourceforge.net/")
641 (synopsis "Media stream URL parser")
642 (description "This package contains support scripts called by libquvi to
643parse media stream properties.")
644 (license l:lgpl2.1+)))
645
646(define-public libquvi
647 (package
648 (name "libquvi")
649 (version "0.4.1")
650 (source
651 (origin
652 (method url-fetch)
653 (uri (string-append
de67e922
LF
654 "mirror://sourceforge/quvi/" (version-major+minor version) "/" name "/"
655 name "-" version ".tar.xz"))
8142aff3
EB
656 (sha256
657 (base32 "00x9gbmzc5cns0gnfag0hsphcr3cb33vbbb9s7ppvvd6bxz2z1mm"))))
658 (build-system gnu-build-system)
659 (native-inputs `(("pkg-config" ,pkg-config)))
660 (inputs
661 `(("curl" ,curl)
662 ("cyrus-sasl" ,cyrus-sasl)
663 ("libquvi-scripts" ,libquvi-scripts)
664 ("lua" ,lua-5.1)
665 ("openssl" ,openssl)
666 ("zlib" ,zlib)))
667 (arguments
668 ;; Lua provides no .pc file, so add CFLAGS/LIBS manually.
669 '(#:configure-flags
670 (let ((lua (assoc-ref %build-inputs "lua")))
671 (list
672 (string-append "liblua_CFLAGS=-I" lua "/include")
673 (string-append "liblua_LIBS=-L" lua "/libs -llua")))))
674 (home-page "http://quvi.sourceforge.net/")
675 (synopsis "Media stream URL parser")
676 (description "libquvi is a library with a C API for parsing media stream
677URLs and extracting their actual media files.")
678 (license l:lgpl2.1+)))
679
680(define-public quvi
681 (package
682 (name "quvi")
683 (version "0.4.2")
684 (source
685 (origin
686 (method url-fetch)
687 (uri (string-append
de67e922
LF
688 "mirror://sourceforge/" name "/" (version-major+minor version)
689 "/" name "/" name "-" version ".tar.xz"))
8142aff3
EB
690 (sha256
691 (base32 "09lhl6dv5zpryasx7yjslfrcdcqlsbwapvd5lg7w6sm5x5n3k8ci"))))
692 (build-system gnu-build-system)
693 (native-inputs `(("pkg-config" ,pkg-config)))
694 (inputs
695 `(("curl" ,curl)
696 ("libquvi" ,libquvi)))
697 (home-page "http://quvi.sourceforge.net/")
698 (synopsis "Media stream URL parser")
699 (description "quvi is a command-line-tool suite to extract media files
700from streaming URLs. It is a command-line wrapper for the libquvi library.")
701 (license l:lgpl2.1+)))
702
ed865936
MW
703(define-public serf
704 (package
705 (name "serf")
706 (version "1.3.8")
707 (source
708 (origin
709 (method url-fetch)
6d22653e 710 (uri (string-append "https://archive.apache.org/dist/serf/serf-"
ed865936
MW
711 version ".tar.bz2"))
712 (sha256
88b6b125 713 (base32 "14155g48gamcv5s0828bzij6vr14nqmbndwq8j8f9g6vcph0nl70"))
fc1adab1
AK
714 (patches (search-patches "serf-comment-style-fix.patch"
715 "serf-deflate-buckets-test-fix.patch"))
88b6b125 716 (patch-flags '("-p0"))))
ed865936
MW
717 (build-system gnu-build-system)
718 (native-inputs
719 `(("scons" ,scons)
720 ("python" ,python-2)))
721 (propagated-inputs
722 `(("apr" ,apr)
723 ("apr-util" ,apr-util)
724 ("openssl" ,openssl)))
725 (inputs
726 `(;; TODO: Fix build with gss.
727 ;;("gss" ,gss)
728 ("zlib" ,zlib)))
729 (arguments
730 `(#:phases
731 ;; TODO: Add scons-build-system and use it here.
732 (modify-phases %standard-phases
733 (delete 'configure)
734 (add-after 'unpack 'scons-propagate-environment
735 (lambda _
736 ;; By design, SCons does not, by default, propagate
737 ;; environment variables to subprocesses. See:
738 ;; <http://comments.gmane.org/gmane.linux.distributions.nixos/4969>
739 ;; Here, we modify the SConstruct file to arrange for
740 ;; environment variables to be propagated.
741 (substitute* "SConstruct"
742 (("^env = Environment\\(")
743 "env = Environment(ENV=os.environ, "))))
ed865936
MW
744 (replace 'build
745 (lambda* (#:key inputs outputs #:allow-other-keys)
746 (let ((out (assoc-ref outputs "out"))
747 (apr (assoc-ref inputs "apr"))
748 (apr-util (assoc-ref inputs "apr-util"))
749 (openssl (assoc-ref inputs "openssl"))
750 ;;(gss (assoc-ref inputs "gss"))
751 (zlib (assoc-ref inputs "zlib")))
752 (zero? (system* "scons"
753 (string-append "APR=" apr)
754 (string-append "APU=" apr-util)
755 (string-append "OPENSSL=" openssl)
756 ;;(string-append "GSSAPI=" gss)
757 (string-append "ZLIB=" zlib)
758 (string-append "PREFIX=" out))))))
759 (replace 'check (lambda _ (zero? (system* "scons" "check"))))
760 (replace 'install (lambda _ (zero? (system* "scons" "install")))))))
6d22653e 761 (home-page "https://serf.apache.org/")
ed865936
MW
762 (synopsis "High-performance asynchronous HTTP client library")
763 (description
764 "serf is a C-based HTTP client library built upon the Apache Portable
765Runtime (APR) library. It multiplexes connections, running the read/write
766communication asynchronously. Memory copies and transformations are kept to a
767minimum to provide high performance operation.")
768 ;; Most of the code is covered by the Apache License, Version 2.0, but the
769 ;; bundled CuTest framework uses a different non-copyleft license.
770 (license (list l:asl2.0 (l:non-copyleft "file://test/CuTest-README.txt")))))
771
385a44be
DT
772(define-public sassc
773 ;; libsass must be statically linked and it isn't included in the sassc
774 ;; release tarballs, hence this odd package recipe.
775 (let* ((version "3.2.5")
776 (libsass
777 (origin
778 (method url-fetch)
779 (uri (string-append
780 "https://github.com/sass/libsass/archive/"
781 version ".tar.gz"))
782 (file-name (string-append "libsass-" version ".tar.gz"))
783 (sha256
784 (base32
785 "1x25k6p1s1yzsdpzb7bzh8japilmi1mk3z96q66pycbinj9z9is4")))))
786 (package
787 (name "sassc")
788 (version version)
789 (source (origin
790 (method url-fetch)
791 (uri (string-append "https://github.com/sass/sassc/archive/"
792 version ".tar.gz"))
793 (file-name (string-append "sassc-" version ".tar.gz"))
794 (sha256
795 (base32
796 "1xf3w75w840rj0nx375rxi7mcv1ngqqq8p3zrzjlyx8jfpnldmv5"))))
797 (build-system gnu-build-system)
798 (arguments
799 `(#:make-flags '("CC=gcc")
800 #:test-target "test"
801 #:phases
802 (modify-phases %standard-phases
803 (delete 'configure)
804 (add-after 'unpack 'unpack-libsass-and-set-path
805 (lambda* (#:key inputs #:allow-other-keys)
806 (and (zero? (system* "tar" "xvf" (assoc-ref inputs "libsass")))
807 (begin
808 (setenv "SASS_LIBSASS_PATH"
809 (string-append (getcwd) "/libsass-" ,version))
810 #t))))
811 (replace 'install ; no install target
812 (lambda* (#:key outputs #:allow-other-keys)
813 (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
814 (mkdir-p bin)
815 (copy-file "bin/sassc" (string-append bin "/sassc"))
816 #t))))))
817 (inputs
818 `(("libsass" ,libsass)))
819 (synopsis "CSS pre-processor")
820 (description "SassC is a compiler written in C for the CSS pre-processor
821language known as SASS.")
822 (home-page "http://sass-lang.com/libsass")
823 (license l:expat))))
824
8142aff3 825\f
dc1c804a
EB
826(define-public perl-apache-logformat-compiler
827 (package
828 (name "perl-apache-logformat-compiler")
829 (version "0.32")
830 (source
831 (origin
832 (method url-fetch)
833 (uri (string-append "mirror://cpan/authors/id/K/KA/KAZEBURO/"
834 "Apache-LogFormat-Compiler-" version ".tar.gz"))
835 (sha256
836 (base32
837 "0zyx4r2bxc6d48m70fhcq80nw0q9wnfz6qgn1g0r6bigqgdjq4dw"))))
838 (build-system perl-build-system)
839 (native-inputs
840 `(("perl-http-message" ,perl-http-message)
a2190ccc 841 ("perl-module-build" ,perl-module-build)
dc1c804a
EB
842 ("perl-test-mocktime" ,perl-test-mocktime)
843 ("perl-try-tiny" ,perl-try-tiny)
844 ("perl-uri" ,perl-uri)))
845 (propagated-inputs
846 `(("perl-posix-strftime-compiler" ,perl-posix-strftime-compiler)))
847 (arguments `(#:tests? #f)) ;TODO: Timezone test failures
848 (home-page "http://search.cpan.org/dist/Apache-LogFormat-Compiler")
849 (synopsis "Compile a log format string to perl-code")
850 (description "This module provides methods to compile a log format string
851to perl-code, for faster generation of access_log lines.")
852 (license (package-license perl))))
853
c6ee18ab
EB
854(define-public perl-authen-sasl
855 (package
856 (name "perl-authen-sasl")
857 (version "2.16")
858 (source
859 (origin
860 (method url-fetch)
861 (uri (string-append "mirror://cpan/authors/id/G/GB/GBARR/"
862 "Authen-SASL-" version ".tar.gz"))
863 (sha256
864 (base32
865 "02afhlrdq5hh5g8b32fa79fqq5i76qzwfqqvfi9zi57h31szl536"))))
866 (build-system perl-build-system)
867 (propagated-inputs
868 `(("perl-digest-hmac" ,perl-digest-hmac)
869 ("perl-gssapi" ,perl-gssapi)))
870 (home-page "http://search.cpan.org/dist/Authen-SASL")
871 (synopsis "SASL authentication framework")
872 (description "Authen::SASL provides an SASL authentication framework.")
873 (license (package-license perl))))
874
cd39d814
EB
875(define-public perl-catalyst-action-renderview
876 (package
877 (name "perl-catalyst-action-renderview")
878 (version "0.16")
879 (source
880 (origin
881 (method url-fetch)
882 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
883 "Catalyst-Action-RenderView-"
884 version ".tar.gz"))
885 (sha256
886 (base32
887 "0j1rrld13cjk7ks92b5hv3xw4rfm2lvmksb4rlzd8mx0a0wj0rc5"))))
888 (build-system perl-build-system)
889 (native-inputs
890 `(("perl-http-request-ascgi" ,perl-http-request-ascgi)))
891 (propagated-inputs
892 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
893 ("perl-data-visitor" ,perl-data-visitor)
894 ("perl-mro-compat" ,perl-mro-compat)))
895 (home-page "http://search.cpan.org/dist/Catalyst-Action-RenderView")
896 (synopsis "Sensible default Catalyst action")
897 (description "This Catalyst action implements a sensible default end
898action, which will forward to the first available view.")
899 (license (package-license perl))))
900
aaef00bf
EB
901(define-public perl-catalyst-action-rest
902 (package
903 (name "perl-catalyst-action-rest")
904 (version "1.17")
905 (source (origin
906 (method url-fetch)
907 (uri (string-append "mirror://cpan/authors/id/F/FR/FREW/"
908 "Catalyst-Action-REST-" version ".tar.gz"))
909 (sha256
910 (base32
911 "1rnxmsd9dsqz4xc0g9ynafxi934jwp0nixbg92q3bc2h46xcccy8"))))
912 (build-system perl-build-system)
913 (native-inputs
914 `(("perl-test-requires" ,perl-test-requires)))
915 (propagated-inputs
916 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
917 ("perl-class-inspector" ,perl-class-inspector)
918 ("perl-libwww" ,perl-libwww)
919 ("perl-moose" ,perl-moose)
920 ("perl-mro-compat" ,perl-mro-compat)
921 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
922 ("perl-params-validate" ,perl-params-validate)
923 ("perl-uri-find" ,perl-uri-find)))
924 (home-page "http://search.cpan.org/dist/Catalyst-Action-REST")
925 (synopsis "Automated REST Method Dispatching")
926 (description "This Action handles doing automatic method dispatching for
927REST requests. It takes a normal Catalyst action, and changes the dispatch to
928append an underscore and method name. First it will try dispatching to an
929action with the generated name, and failing that it will try to dispatch to a
930regular method.")
931 (license (package-license perl))))
932
6e545bbf
EB
933(define-public perl-catalyst-authentication-store-dbix-class
934 (package
935 (name "perl-catalyst-authentication-store-dbix-class")
936 (version "0.1506")
937 (source
938 (origin
939 (method url-fetch)
940 (uri (string-append "mirror://cpan/authors/id/I/IL/ILMARI/"
941 "Catalyst-Authentication-Store-DBIx-Class-"
942 version ".tar.gz"))
943 (sha256
944 (base32
945 "0i5ja7690fs9nhxcij6lw51j804sm8s06m5mvk1n8pi8jljrymvw"))))
946 (build-system perl-build-system)
947 (native-inputs
948 `(("perl-catalyst-plugin-authorization-roles"
949 ,perl-catalyst-plugin-authorization-roles)
950 ("perl-catalyst-plugin-session-state-cookie"
951 ,perl-catalyst-plugin-session-state-cookie)
952 ("perl-dbd-sqlite" ,perl-dbd-sqlite)
953 ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst)))
954 (propagated-inputs
955 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
956 ("perl-catalyst-plugin-authentication"
957 ,perl-catalyst-plugin-authentication)
958 ("perl-dbix-class" ,perl-dbix-class)
959 ("perl-catalyst-model-dbic-schema" ,perl-catalyst-model-dbic-schema)))
960 (home-page
961 "http://search.cpan.org/dist/Catalyst-Authentication-Store-DBIx-Class")
962 (synopsis "Storage class for Catalyst authentication using DBIx::Class")
963 (description "The Catalyst::Authentication::Store::DBIx::Class class
964provides access to authentication information stored in a database via
965DBIx::Class.")
966 (license (package-license perl))))
967
040a52fd
EB
968(define-public perl-catalyst-component-instancepercontext
969 (package
970 (name "perl-catalyst-component-instancepercontext")
971 (version "0.001001")
972 (source
973 (origin
974 (method url-fetch)
975 (uri (string-append "mirror://cpan/authors/id/G/GR/GRODITI/"
976 "Catalyst-Component-InstancePerContext-"
977 version ".tar.gz"))
978 (sha256
979 (base32
980 "0wfj4vnn2cvk6jh62amwlg050p37fcwdgrn9amcz24z6w4qgjqvz"))))
981 (build-system perl-build-system)
982 (propagated-inputs
983 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
984 ("perl-moose" ,perl-moose)))
985 (home-page
986 "http://search.cpan.org/dist/Catalyst-Component-InstancePerContext")
987 (synopsis "Create only one instance of Moose component per context")
988 (description "Catalyst::Component::InstancePerContext returns a new
989instance of a component on each request.")
990 (license (package-license perl))))
991
bdec3223
EB
992(define-public perl-catalyst-devel
993 (package
994 (name "perl-catalyst-devel")
995 (version "1.39")
996 (source
997 (origin
998 (method url-fetch)
999 (uri (string-append "mirror://cpan/authors/id/I/IL/ILMARI/"
1000 "Catalyst-Devel-" version ".tar.gz"))
1001 (sha256
1002 (base32
1003 "12m50bbkggjmpxihv3wnvr0g2qng0zwhlzi5ygppjz8wh2x73qxw"))))
1004 (build-system perl-build-system)
1005 (native-inputs
1006 `(("perl-test-fatal" ,perl-test-fatal)))
1007 (propagated-inputs
1008 `(("perl-catalyst-action-renderview" ,perl-catalyst-action-renderview)
1009 ("perl-catalyst-plugin-configloader" ,perl-catalyst-plugin-configloader)
1010 ("perl-catalyst-plugin-static-simple" ,perl-catalyst-plugin-static-simple)
1011 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1012 ("perl-config-general" ,perl-config-general)
1013 ("perl-file-changenotify" ,perl-file-changenotify)
1014 ("perl-file-copy-recursive" ,perl-file-copy-recursive)
1015 ("perl-file-sharedir" ,perl-file-sharedir)
1016 ("perl-module-install" ,perl-module-install)
1017 ("perl-moose" ,perl-moose)
1018 ("perl-moosex-emulate-class-accessor-fast"
1019 ,perl-moosex-emulate-class-accessor-fast)
1020 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1021 ("perl-namespace-clean" ,perl-namespace-clean)
1022 ("perl-path-class" ,perl-path-class)
1023 ("perl-template-toolkit" ,perl-template-toolkit)))
1024 (home-page "http://search.cpan.org/dist/Catalyst-Devel")
1025 (synopsis "Catalyst Development Tools")
1026 (description "The Catalyst-Devel distribution includes a variety of
1027modules useful for the development of Catalyst applications, but not required
1028to run them. Catalyst-Devel includes the Catalyst::Helper system, which
1029autogenerates scripts and tests; Module::Install::Catalyst, a Module::Install
1030extension for Catalyst; and requirements for a variety of development-related
1031modules.")
1032 (license (package-license perl))))
1033
9473af1d
EB
1034(define-public perl-catalyst-dispatchtype-regex
1035 (package
1036 (name "perl-catalyst-dispatchtype-regex")
1037 (version "5.90035")
1038 (source
1039 (origin
1040 (method url-fetch)
1041 (uri (string-append "mirror://cpan/authors/id/M/MG/MGRIMES/"
1042 "Catalyst-DispatchType-Regex-" version ".tar.gz"))
1043 (sha256
1044 (base32
1045 "06jq1lmpq88rmp9zik5gqczg234xac0hiyc3l698iif7zsgcyb80"))))
1046 (build-system perl-build-system)
1047 (native-inputs
1048 `(("perl-module-build" ,perl-module-build) ;needs Module::Build >= 0.4004
1049 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1050 ("perl-catalyst-runtime" ,perl-catalyst-runtime)))
1051 (propagated-inputs
1052 `(("perl-moose" ,perl-moose)
1053 ("perl-text-simpletable" ,perl-text-simpletable)))
1054 (home-page "http://search.cpan.org/dist/Catalyst-DispatchType-Regex")
1055 (synopsis "Regex DispatchType for Catalyst")
1056 (description "Dispatch type managing path-matching behaviour using
1057regexes. Regex dispatch types have been deprecated and removed from Catalyst
1058core. It is recommend that you use Chained methods or other techniques
1059instead. As part of the refactoring, the dispatch priority of Regex vs Regexp
1060vs LocalRegex vs LocalRegexp may have changed. Priority is now influenced by
1061when the dispatch type is first seen in your application.")
1062 (license (package-license perl))))
1063
f643a6e9
EB
1064(define-public perl-catalyst-model-dbic-schema
1065 (package
1066 (name "perl-catalyst-model-dbic-schema")
1067 (version "0.65")
1068 (source
1069 (origin
1070 (method url-fetch)
1071 (uri (string-append "mirror://cpan/authors/id/G/GB/GBJK/"
1072 "Catalyst-Model-DBIC-Schema-"
1073 version ".tar.gz"))
1074 (sha256
1075 (base32
1076 "1spfjcjc0b9dv3k2gbanqj1m1cqzyxb32p76dhdwizzpbvpi3a96"))))
1077 (build-system perl-build-system)
1078 (native-inputs
1079 `(("perl-dbd-sqlite" ,perl-dbd-sqlite)
1080 ("perl-test-exception" ,perl-test-exception)
1081 ("perl-test-requires" ,perl-test-requires)))
1082 (propagated-inputs
1083 `(("perl-carp-clan" ,perl-carp-clan)
1084 ("perl-catalyst-component-instancepercontext"
1085 ,perl-catalyst-component-instancepercontext)
1086 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1087 ("perl-catalystx-component-traits" ,perl-catalystx-component-traits)
1088 ("perl-dbix-class" ,perl-dbix-class)
1089 ("perl-dbix-class-cursor-cached" ,perl-dbix-class-cursor-cached)
1090 ("perl-dbix-class-schema-loader" ,perl-dbix-class-schema-loader)
1091 ("perl-hash-merge" ,perl-hash-merge)
1092 ("perl-list-moreutils" ,perl-list-moreutils)
1093 ("perl-module-runtime" ,perl-module-runtime)
1094 ("perl-moose" ,perl-moose)
1095 ("perl-moosex-markasmethods" ,perl-moosex-markasmethods)
1096 ("perl-moosex-nonmoose" ,perl-moosex-nonmoose)
1097 ("perl-moosex-types" ,perl-moosex-types)
1098 ("perl-moosex-types-loadableclass" ,perl-moosex-types-loadableclass)
1099 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1100 ("perl-namespace-clean" ,perl-namespace-clean)
1101 ("perl-tie-ixhash" ,perl-tie-ixhash)
1102 ("perl-try-tiny" ,perl-try-tiny)))
1103 (home-page "http://search.cpan.org/dist/Catalyst-Model-DBIC-Schema")
1104 (synopsis "DBIx::Class::Schema Model Class")
1105 (description "This is a Catalyst Model for DBIx::Class::Schema-based
1106Models.")
1107 (license (package-license perl))))
1108
0a74d78d
EB
1109(define-public perl-catalyst-plugin-accesslog
1110 (package
1111 (name "perl-catalyst-plugin-accesslog")
1112 (version "1.05")
1113 (source
1114 (origin
1115 (method url-fetch)
1116 (uri (string-append "mirror://cpan/authors/id/A/AR/ARODLAND/"
1117 "Catalyst-Plugin-AccessLog-" version ".tar.gz"))
1118 (sha256
1119 (base32
1120 "0hqvckaw91q5yc25a33bp0d4qqxlgkp7rxlvi8n8svxd1406r55s"))))
1121 (build-system perl-build-system)
1122 (propagated-inputs
1123 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1124 ("perl-datetime" ,perl-datetime)
1125 ("perl-moose" ,perl-moose)
1126 ("perl-namespace-autoclean" ,perl-namespace-autoclean)))
1127 (arguments `(#:tests? #f)) ;Unexpected http responses
1128 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-AccessLog")
1129 (synopsis "Request logging from within Catalyst")
1130 (description "This Catalyst plugin enables you to create \"access logs\"
1131from within a Catalyst application instead of requiring a webserver to do it
1132for you. It will work even with Catalyst debug logging turned off.")
1133 (license (package-license perl))))
1134
4b4fe57d
EB
1135(define-public perl-catalyst-plugin-authentication
1136 (package
1137 (name "perl-catalyst-plugin-authentication")
1138 (version "0.10023")
1139 (source
1140 (origin
1141 (method url-fetch)
1142 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1143 "Catalyst-Plugin-Authentication-"
1144 version ".tar.gz"))
1145 (sha256
1146 (base32
1147 "0v6hb4r1wv3djrnqvnjcn3xx1scgqzx8nyjdg9lfc1ybvamrl0rn"))))
1148 (build-system perl-build-system)
1149 (propagated-inputs
1150 `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
1151 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1152 ("perl-class-inspector" ,perl-class-inspector)
1153 ("perl-moose" ,perl-moose)
1154 ("perl-moosex-emulate-class-accessor-fast"
1155 ,perl-moosex-emulate-class-accessor-fast)
1156 ("perl-mro-compat" ,perl-mro-compat)
1157 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1158 ("perl-string-rewriteprefix" ,perl-string-rewriteprefix)
1159 ("perl-test-exception" ,perl-test-exception)
1160 ("perl-try-tiny" ,perl-try-tiny)))
1161 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-Authentication")
1162 (synopsis "Infrastructure plugin for the Catalyst authentication framework")
1163 (description "The authentication plugin provides generic user support for
e881752c 1164Catalyst apps. It is the basis for both authentication (checking the user is
4b4fe57d
EB
1165who they claim to be), and authorization (allowing the user to do what the
1166system authorises them to do).")
1167 (license (package-license perl))))
1168
514214cb
EB
1169(define-public perl-catalyst-plugin-authorization-roles
1170 (package
1171 (name "perl-catalyst-plugin-authorization-roles")
1172 (version "0.09")
1173 (source
1174 (origin
1175 (method url-fetch)
1176 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1177 "Catalyst-Plugin-Authorization-Roles-"
1178 version ".tar.gz"))
1179 (sha256
1180 (base32
1181 "0l83lkwmq0lngwh8b1rv3r719pn8w1gdbyhjqm74rnd0wbjl8h7f"))))
1182 (build-system perl-build-system)
1183 (native-inputs
1184 `(("perl-test-exception" ,perl-test-exception)))
1185 (propagated-inputs
1186 `(("perl-catalyst-plugin-authentication"
1187 ,perl-catalyst-plugin-authentication)
1188 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1189 ("perl-set-object" ,perl-set-object)
1190 ("perl-universal-isa" ,perl-universal-isa)))
1191 (home-page
1192 "http://search.cpan.org/dist/Catalyst-Plugin-Authorization-Roles")
1193 (synopsis "Role-based authorization for Catalyst")
1194 (description "Catalyst::Plugin::Authorization::Roles provides role-based
1195authorization for Catalyst based on Catalyst::Plugin::Authentication.")
1196 (license (package-license perl))))
1197
57c2680e
EB
1198(define-public perl-catalyst-plugin-captcha
1199 (package
1200 (name "perl-catalyst-plugin-captcha")
1201 (version "0.04")
1202 (source
1203 (origin
1204 (method url-fetch)
1205 (uri (string-append "mirror://cpan/authors/id/D/DI/DIEGOK/"
1206 "Catalyst-Plugin-Captcha-" version ".tar.gz"))
1207 (sha256
1208 (base32
1209 "0llyj3v5nx9cx46jdbbvxf1lc9s9cxq5ml22xmx3wkb201r5qgaa"))))
1210 (build-system perl-build-system)
1211 (propagated-inputs
1212 `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
1213 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1214 ("perl-gd-securityimage" ,perl-gd-securityimage)
1215 ("perl-http-date" ,perl-http-date)))
1216 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-Captcha")
1217 (synopsis "Captchas for Catalyst")
1218 (description "This plugin creates and validates Captcha images for
1219Catalyst.")
1220 (license (package-license perl))))
1221
7c4eaa56
EB
1222(define-public perl-catalyst-plugin-configloader
1223 (package
1224 (name "perl-catalyst-plugin-configloader")
1225 (version "0.34")
1226 (source
1227 (origin
1228 (method url-fetch)
1229 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1230 "Catalyst-Plugin-ConfigLoader-"
1231 version ".tar.gz"))
1232 (sha256
1233 (base32
1234 "19j7p4v7mbx6wrmpvmrnd974apx7hdl2s095ga3b9zcbdrl77h5q"))))
1235 (build-system perl-build-system)
1236 (native-inputs
1237 `(("perl-path-class" ,perl-path-class)))
1238 (propagated-inputs
1239 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1240 ("perl-config-any" ,perl-config-any)
1241 ("perl-data-visitor" ,perl-data-visitor)
1242 ("perl-mro-compat" ,perl-mro-compat)))
1243 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-ConfigLoader")
1244 (synopsis "Load config files of various types")
1245 (description "This module will attempt to load find and load configuration
1246files of various types. Currently it supports YAML, JSON, XML, INI and Perl
1247formats.")
1248 (license (package-license perl))))
1249
3d4644e4
EB
1250(define-public perl-catalyst-plugin-session
1251 (package
1252 (name "perl-catalyst-plugin-session")
1253 (version "0.39")
1254 (source
1255 (origin
1256 (method url-fetch)
1257 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1258 "Catalyst-Plugin-Session-" version ".tar.gz"))
1259 (sha256
1260 (base32
1261 "0m4a003qgz7848iyckwbigg2vw3kmfxggh1razrnzxrbz3n6x5gi"))))
1262 (build-system perl-build-system)
1263 (native-inputs
1264 `(("perl-test-deep" ,perl-test-deep)
1265 ("perl-test-exception" ,perl-test-exception)))
1266 (propagated-inputs
1267 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1268 ("perl-moose" ,perl-moose)
1269 ("perl-moosex-emulate-class-accessor-fast"
1270 ,perl-moosex-emulate-class-accessor-fast)
1271 ("perl-namespace-clean" ,perl-namespace-clean)
1272 ("perl-object-signature" ,perl-object-signature)
1273 ("perl-test-www-mechanize-psgi" ,perl-test-www-mechanize-psgi)))
1274 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-Session")
1275 (synopsis "Catalyst generic session plugin")
1276 (description "This plugin links the two pieces required for session
1277management in web applications together: the state, and the store.")
1278 (license (package-license perl))))
1279
be734479
EB
1280(define-public perl-catalyst-plugin-session-state-cookie
1281 (package
1282 (name "perl-catalyst-plugin-session-state-cookie")
1283 (version "0.17")
1284 (source
1285 (origin
1286 (method url-fetch)
1287 (uri (string-append "mirror://cpan/authors/id/M/MS/MSTROUT/"
1288 "Catalyst-Plugin-Session-State-Cookie-"
1289 version ".tar.gz"))
1290 (sha256
1291 (base32
1292 "1rvxbfnpf9x2pc2zgpazlcgdlr2dijmxgmcs0m5nazs0w6xikssb"))))
1293 (build-system perl-build-system)
1294 (propagated-inputs
1295 `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
1296 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1297 ("perl-moose" ,perl-moose)
1298 ("perl-mro-compat" ,perl-mro-compat)
1299 ("perl-namespace-autoclean" ,perl-namespace-autoclean)))
1300 (home-page
1301 "http://search.cpan.org/dist/Catalyst-Plugin-Session-State-Cookie")
1302 (synopsis "Maintain session IDs using cookies")
1303 (description "In order for Catalyst::Plugin::Session to work, the session
1304ID needs to be stored on the client, and the session data needs to be stored
1305on the server. This plugin stores the session ID on the client using the
1306cookie mechanism.")
1307 (license (package-license perl))))
1308
47533b6f
EB
1309(define-public perl-catalyst-plugin-session-store-fastmmap
1310 (package
1311 (name "perl-catalyst-plugin-session-store-fastmmap")
1312 (version "0.16")
1313 (source
1314 (origin
1315 (method url-fetch)
1316 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1317 "Catalyst-Plugin-Session-Store-FastMmap-"
1318 version ".tar.gz"))
1319 (sha256
1320 (base32
1321 "0x3j6zv3wr41jlwr6yb2jpmcx019ibyn11y8653ffnwhpzbpzsxs"))))
1322 (build-system perl-build-system)
1323 (propagated-inputs
1324 `(("perl-cache-fastmmap" ,perl-cache-fastmmap)
1325 ("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
1326 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1327 ("perl-moosex-emulate-class-accessor-fast"
1328 ,perl-moosex-emulate-class-accessor-fast)
1329 ("perl-mro-compat" ,perl-mro-compat)
1330 ("perl-path-class" ,perl-path-class)))
1331 (home-page
1332 "http://search.cpan.org/dist/Catalyst-Plugin-Session-Store-FastMmap")
e881752c 1333 (synopsis "FastMmap session storage backend")
47533b6f
EB
1334 (description "Catalyst::Plugin::Session::Store::FastMmap is a fast session
1335storage plugin for Catalyst that uses an mmap'ed file to act as a shared
1336memory interprocess cache. It is based on Cache::FastMmap.")
1337 (license (package-license perl))))
1338
996f4110
EB
1339(define-public perl-catalyst-plugin-stacktrace
1340 (package
1341 (name "perl-catalyst-plugin-stacktrace")
1342 (version "0.12")
1343 (source
1344 (origin
1345 (method url-fetch)
1346 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1347 "Catalyst-Plugin-StackTrace-" version ".tar.gz"))
1348 (sha256
1349 (base32
1350 "1b2ksz74cpigxqzf63rddar3vfmnbpwpdcbs11v0ml89pb8ar79j"))))
1351 (build-system perl-build-system)
1352 (propagated-inputs
1353 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1354 ("perl-devel-stacktrace" ,perl-devel-stacktrace)
1355 ("perl-mro-compat" ,perl-mro-compat)))
1356 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-StackTrace")
1357 (synopsis "Stack trace on the Catalyst debug screen")
1358 (description "This plugin enhances the standard Catalyst debug screen by
69b4ffcf 1359including a stack trace of your application up to the point where the error
996f4110
EB
1360occurred. Each stack frame is displayed along with the package name, line
1361number, file name, and code context surrounding the line number.")
1362 (license (package-license perl))))
1363
4cb5426c
EB
1364(define-public perl-catalyst-plugin-static-simple
1365 (package
1366 (name "perl-catalyst-plugin-static-simple")
1367 (version "0.33")
1368 (source
1369 (origin
1370 (method url-fetch)
1371 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1372 "Catalyst-Plugin-Static-Simple-" version ".tar.gz"))
1373 (sha256
1374 (base32
1375 "1h8f12bhzh0ssq9gs8r9g3hqn8zn2k0q944vc1vm8j81bns16msy"))))
1376 (build-system perl-build-system)
1377 (propagated-inputs
1378 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1379 ("perl-mime-types" ,perl-mime-types)
1380 ("perl-moose" ,perl-moose)
1381 ("perl-moosex-types" ,perl-moosex-types)
1382 ("perl-namespace-autoclean" ,perl-namespace-autoclean)))
1383 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-Static-Simple")
1384 (synopsis "Simple serving of static pages")
1385 (description "The Static::Simple plugin is designed to make serving static
1386content in your application during development quick and easy, without
1387requiring a single line of code from you. This plugin detects static files by
1388looking at the file extension in the URL (such as .css or .png or .js). The
1389plugin uses the lightweight MIME::Types module to map file extensions to
1390IANA-registered MIME types, and will serve your static files with the correct
1391MIME type directly to the browser, without being processed through Catalyst.")
1392 (license (package-license perl))))
1393
91f06299
EB
1394(define-public perl-catalyst-runtime
1395 (package
1396 (name "perl-catalyst-runtime")
1397 (version "5.90082")
1398 (source
1399 (origin
1400 (method url-fetch)
1401 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1402 "Catalyst-Runtime-" version ".tar.gz"))
1403 (sha256
1404 (base32
1405 "1gs70nq4rikpq6siwds9disb1z03vwjzf979xi9kf7saa1drfncs"))))
1406 (build-system perl-build-system)
1407 (native-inputs
1408 `(("perl-test-fatal" ,perl-test-fatal)))
1409 (propagated-inputs
1410 `(("perl-cgi-simple" ,perl-cgi-simple)
1411 ("perl-cgi-struct" ,perl-cgi-struct)
1412 ("perl-class-c3-adopt-next" ,perl-class-c3-adopt-next)
1413 ("perl-class-data-inheritable" ,perl-class-data-inheritable)
1414 ("perl-class-date" ,perl-class-date)
1415 ("perl-class-load" ,perl-class-load)
1416 ("perl-data-dump" ,perl-data-dump)
1417 ("perl-http-body" ,perl-http-body)
1418 ("perl-http-message" ,perl-http-message)
1419 ("perl-http-request-ascgi" ,perl-http-request-ascgi)
1420 ("perl-io-stringy" ,perl-io-stringy)
1421 ("perl-json-maybexs" ,perl-json-maybexs)
1422 ("perl-libwww" ,perl-libwww)
a2190ccc 1423 ("perl-module-pluggable" ,perl-module-pluggable)
91f06299
EB
1424 ("perl-moose" ,perl-moose)
1425 ("perl-moosex-emulate-class-accessor-fast"
1426 ,perl-moosex-emulate-class-accessor-fast)
1427 ("perl-moosex-getopt" ,perl-moosex-getopt)
1428 ("perl-moosex-methodattributes" ,perl-moosex-methodattributes)
1429 ("perl-moosex-role-withoverloading" ,perl-moosex-role-withoverloading)
1430 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1431 ("perl-namespace-clean" ,perl-namespace-clean)
1432 ("perl-path-class" ,perl-path-class)
1433 ("perl-plack" ,perl-plack)
1434 ("perl-plack-middleware-fixmissingbodyinredirect"
1435 ,perl-plack-middleware-fixmissingbodyinredirect)
1436 ("perl-plack-middleware-methodoverride"
1437 ,perl-plack-middleware-methodoverride)
1438 ("perl-plack-middleware-removeredundantbody"
1439 ,perl-plack-middleware-removeredundantbody)
1440 ("perl-plack-middleware-reverseproxy"
1441 ,perl-plack-middleware-reverseproxy)
1442 ("perl-plack-test-externalserver" ,perl-plack-test-externalserver)
1443 ("perl-safe-isa" ,perl-safe-isa)
1444 ("perl-string-rewriteprefix" ,perl-string-rewriteprefix)
1445 ("perl-text-simpletable" ,perl-text-simpletable)
1446 ("perl-tree-simple" ,perl-tree-simple)
1447 ("perl-tree-simple-visitorfactory" ,perl-tree-simple-visitorfactory)
1448 ("perl-try-tiny" ,perl-try-tiny)
1449 ("perl-uri" ,perl-uri)
1450 ("perl-uri-ws" ,perl-uri-ws)))
1451 (home-page "http://search.cpan.org/dist/Catalyst-Runtime")
1452 (synopsis "The Catalyst Framework Runtime")
1453 (description "Catalyst is a modern framework for making web applications.
1454It is designed to make it easy to manage the various tasks you need to do to
1455run an application on the web, either by doing them itself, or by letting you
1456\"plug in\" existing Perl modules that do what you need.")
1457 (license (package-license perl))))
1458
b902eb1c
EB
1459(define-public perl-catalyst-traitfor-request-proxybase
1460 (package
1461 (name "perl-catalyst-traitfor-request-proxybase")
1462 (version "0.000005")
1463 (source
1464 (origin
1465 (method url-fetch)
1466 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1467 "Catalyst-TraitFor-Request-ProxyBase-"
1468 version ".tar.gz"))
1469 (sha256
1470 (base32
1471 "02kir63d5cs2ipj3fn1qlmmx3gqi1xqzrxfr4pv5vjhjgsm0zgx7"))))
1472 (build-system perl-build-system)
1473 (native-inputs
1474 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1475 ("perl-catalystx-roleapplicator" ,perl-catalystx-roleapplicator)
1476 ("perl-http-message" ,perl-http-message)))
1477 (propagated-inputs
1478 `(("perl-moose" ,perl-moose)
1479 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1480 ("perl-uri" ,perl-uri)))
1481 (home-page
1482 "http://search.cpan.org/dist/Catalyst-TraitFor-Request-ProxyBase")
1483 (synopsis "Replace request base with value passed by HTTP proxy")
1484 (description "This module is a Moose::Role which allows you more
1485flexibility in your application's deployment configurations when deployed
1486behind a proxy. Using this module, the request base ($c->req->base) is
1487replaced with the contents of the X-Request-Base header.")
1488 (license (package-license perl))))
1489
83261658
EB
1490(define-public perl-catalyst-view-download
1491 (package
1492 (name "perl-catalyst-view-download")
1493 (version "0.09")
1494 (source
1495 (origin
1496 (method url-fetch)
1497 (uri (string-append "mirror://cpan/authors/id/G/GA/GAUDEON/"
1498 "Catalyst-View-Download-" version ".tar.gz"))
1499 (sha256
1500 (base32
1501 "1qgq6y9iwfbhbkbgpw9czang2ami6z8jk1zlagrzdisy4igqzkvs"))))
1502 (build-system perl-build-system)
1503 (native-inputs
1504 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1505 ("perl-test-simple" ,perl-test-simple)
1506 ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst)
1507 ("perl-text-csv" ,perl-text-csv)
1508 ("perl-xml-simple" ,perl-xml-simple)))
1509 (home-page "http://search.cpan.org/dist/Catalyst-View-Download")
1510 (synopsis "Download data in many formats")
1511 (description "The purpose of this module is to provide a method for
1512downloading data into many supportable formats. For example, downloading a
e881752c 1513table based report in a variety of formats (CSV, HTML, etc.).")
83261658
EB
1514 (license (package-license perl))))
1515
c985cfe6
EB
1516(define-public perl-catalyst-view-json
1517 (package
1518 (name "perl-catalyst-view-json")
1519 (version "0.35")
1520 (source
1521 (origin
1522 (method url-fetch)
1523 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1524 "Catalyst-View-JSON-" version ".tar.gz"))
1525 (sha256
1526 (base32
1527 "184pyghlrkl7p387bnyvswi2d9myvdg4v3lax6xrd59shskvpmkm"))))
1528 (build-system perl-build-system)
1529 (native-inputs
1530 `(("perl-yaml" ,perl-yaml)))
1531 (inputs
1532 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1533 ("perl-json-maybexs" ,perl-json-maybexs)
1534 ("perl-mro-compat" ,perl-mro-compat)))
1535 (home-page "http://search.cpan.org/dist/Catalyst-View-JSON")
1536 (synopsis "Catalyst JSON view")
1537 (description "Catalyst::View::JSON is a Catalyst View handler that returns
1538stash data in JSON format.")
1539 (license (package-license perl))))
1540
5c2c9ab2
EB
1541(define-public perl-catalyst-view-tt
1542 (package
1543 (name "perl-catalyst-view-tt")
1544 (version "0.42")
1545 (source
1546 (origin
1547 (method url-fetch)
1548 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1549 "Catalyst-View-TT-" version ".tar.gz"))
1550 (sha256
1551 (base32
1552 "18ciik9fqaqjfasa9wicbjrsl3gjhjc15xzaj3rif57an25cl178"))))
1553 (build-system perl-build-system)
1554 (propagated-inputs
1555 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1556 ("perl-class-accessor" ,perl-class-accessor)
1557 ("perl-mro-compat" ,perl-mro-compat)
1558 ("perl-path-class" ,perl-path-class)
1559 ("perl-template-timer" ,perl-template-timer)
1560 ("perl-template-toolkit" ,perl-template-toolkit)))
1561 (home-page "http://search.cpan.org/dist/Catalyst-View-TT")
1562 (synopsis "Template View Class")
1563 (description "This module is a Catalyst view class for the Template
1564Toolkit.")
1565 (license (package-license perl))))
1566
89a2aa36
EB
1567(define-public perl-catalystx-component-traits
1568 (package
1569 (name "perl-catalystx-component-traits")
1570 (version "0.19")
1571 (source
1572 (origin
1573 (method url-fetch)
1574 (uri (string-append "mirror://cpan/authors/id/R/RK/RKITOVER/"
1575 "CatalystX-Component-Traits-" version ".tar.gz"))
1576 (sha256
1577 (base32
1578 "0iq4ci8m6g2c4g01fvdl568y7pjz28f3widk986v3pyhr7ll8j88"))))
1579 (build-system perl-build-system)
1580 (native-inputs
1581 `(("perl-moose" ,perl-moose)
1582 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1583 ("perl-moosex-methodattributes" ,perl-moosex-methodattributes)))
1584 (propagated-inputs
1585 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1586 ("perl-class-load" ,perl-class-load)
1587 ("perl-moose" ,perl-moose)
1588 ("perl-moosex-traits-pluggable" ,perl-moosex-traits-pluggable)
1589 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1590 ("perl-list-moreutils" ,perl-list-moreutils)))
1591 (home-page "http://search.cpan.org/dist/CatalystX-Component-Traits")
1592 (synopsis "Trait Loading and Resolution for Catalyst Components")
1593 (description "Adds a \"COMPONENT\" in Catalyst::Component method to your
1594Catalyst component base class that reads the optional \"traits\" parameter
1595from app and component config and instantiates the component subclass with
1596those traits using \"new_with_traits\" in MooseX::Traits from
1597MooseX::Traits::Pluggable.")
1598 (license (package-license perl))))
1599
227687ae
EB
1600(define-public perl-catalystx-roleapplicator
1601 (package
1602 (name "perl-catalystx-roleapplicator")
1603 (version "0.005")
1604 (source
1605 (origin
1606 (method url-fetch)
1607 (uri (string-append "mirror://cpan/authors/id/H/HD/HDP/"
1608 "CatalystX-RoleApplicator-" version ".tar.gz"))
1609 (sha256
1610 (base32
1611 "0vwaapxn8g5hs2xp63c4dwv9jmapmji4272fakssvgc9frklg3p2"))))
1612 (build-system perl-build-system)
1613 (propagated-inputs
1614 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1615 ("perl-moose" ,perl-moose)
1616 ("perl-moosex-relatedclassroles" ,perl-moosex-relatedclassroles)))
1617 (home-page "http://search.cpan.org/dist/CatalystX-RoleApplicator")
1618 (synopsis "Apply roles to Catalyst classes")
1619 (description "CatalystX::RoleApplicator applies roles to Catalyst
1620application classes.")
1621 (license (package-license perl))))
1622
ca8e6196
EB
1623(define-public perl-catalystx-script-server-starman
1624 (package
1625 (name "perl-catalystx-script-server-starman")
1626 (version "0.02")
1627 (source
1628 (origin
1629 (method url-fetch)
1630 (uri (string-append "mirror://cpan/authors/id/A/AB/ABRAXXA/"
1631 "CatalystX-Script-Server-Starman-"
1632 version ".tar.gz"))
1633 (sha256
1634 (base32
1635 "0h02mpkc4cmi3jpvcd7iw7xyzx55bqvvl1qkf967gqkvpklm0qx5"))))
1636 (build-system perl-build-system)
1637 (native-inputs
1638 `(("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst)))
1639 (propagated-inputs
1640 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1641 ("perl-moose" ,perl-moose)
1642 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1643 ("starman" ,starman)))
1644 (home-page "http://search.cpan.org/dist/CatalystX-Script-Server-Starman")
1645 (synopsis "Catalyst development server with Starman")
1646 (description "This module provides a Catalyst extension to replace the
1647development server with Starman.")
1648 (license (package-license perl))))
1649
7b158c4e
EB
1650(define-public perl-cgi
1651 (package
1652 (name "perl-cgi")
1653 (version "4.25")
1654 (source
1655 (origin
1656 (method url-fetch)
1657 (uri (string-append "mirror://cpan/authors/id/L/LE/LEEJO/"
1658 "CGI-" version ".tar.gz"))
1659 (sha256
1660 (base32
1661 "06hk9zzvlix1yi95wlkb1ykdxgl6lscm7452gkwr2snsb8iybczg"))))
1662 (build-system perl-build-system)
1663 (native-inputs
1664 `(("perl-test-deep" ,perl-test-deep)
1665 ("perl-test-nowarnings" ,perl-test-nowarnings)
1666 ("perl-test-warn" ,perl-test-warn)))
1667 (propagated-inputs
1668 `(("perl-html-parser" ,perl-html-parser)))
1669 (home-page "http://search.cpan.org/dist/CGI")
1670 (synopsis "Handle Common Gateway Interface requests and responses")
1671 (description "CGI.pm is a stable, complete and mature solution for
1672processing and preparing HTTP requests and responses. Major features include
1673processing form submissions, file uploads, reading and writing cookies, query
1674string generation and manipulation, and processing and preparing HTTP
1675headers.")
1676 (license (package-license perl))))
1677
0148aa55
EB
1678(define-public perl-cgi-simple
1679 (package
1680 (name "perl-cgi-simple")
1681 (version "1.115")
1682 (source
1683 (origin
1684 (method url-fetch)
1685 (uri (string-append "mirror://cpan/authors/id/S/SZ/SZABGAB/"
1686 "CGI-Simple-" version ".tar.gz"))
1687 (sha256
1688 (base32
1689 "1nkyb1m1g5r47xykflf68dplanih5p15njv82frbgbsms34kp1sg"))))
1690 (build-system perl-build-system)
1691 (native-inputs
bb8afbf5
LC
1692 `(("perl-module-build" ,perl-module-build)
1693 ("perl-io-stringy" ,perl-io-stringy))) ;for IO::Scalar
0148aa55
EB
1694 (home-page "http://search.cpan.org/dist/CGI-Simple")
1695 (synopsis "CGI interface that is CGI.pm compliant")
1696 (description "CGI::Simple provides a relatively lightweight drop in
1697replacement for CGI.pm. It shares an identical OO interface to CGI.pm for
1698parameter parsing, file upload, cookie handling and header generation.")
1699 (license (package-license perl))))
1700
76b8b86c
EB
1701(define-public perl-cgi-struct
1702 (package
1703 (name "perl-cgi-struct")
1704 (version "1.21")
1705 (source
1706 (origin
1707 (method url-fetch)
1708 (uri (string-append "mirror://cpan/authors/id/F/FU/FULLERMD/"
1709 "CGI-Struct-" version ".tar.gz"))
1710 (sha256
1711 (base32
1712 "0v4xq2qpryr7i6jngw1wpn8yr2kiib10yxp4aih90vfdznkqsgfi"))))
1713 (build-system perl-build-system)
1714 (native-inputs
1715 `(("perl-test-deep" ,perl-test-deep)))
1716 (home-page "http://search.cpan.org/dist/CGI-Struct")
1717 (synopsis "Build structures from CGI data")
1718 (description "This is a module for building structured data from CGI
1719inputs, in a manner reminiscent of how PHP does.")
1720 (license l:bsd-2)))
1721
9151712c
EB
1722(define-public perl-datetime-format-http
1723 (package
1724 (name "perl-datetime-format-http")
1725 (version "0.42")
1726 (source
1727 (origin
1728 (method url-fetch)
1729 (uri (string-append "mirror://cpan/authors/id/C/CK/CKRAS/"
1730 "DateTime-Format-HTTP-" version ".tar.gz"))
1731 (sha256
1732 (base32
1733 "0h6qqdg1yzqkdxp7hqlp0qa7d1y64nilgimxs79dys2ryjfpcknh"))))
1734 (build-system perl-build-system)
a2190ccc
EB
1735 (native-inputs
1736 `(("perl-module-build" ,perl-module-build)))
9151712c
EB
1737 (propagated-inputs
1738 `(("perl-datetime" ,perl-datetime)
1739 ("perl-http-date" ,perl-http-date)))
1740 (home-page "http://search.cpan.org/dist/DateTime-Format-HTTP")
1741 (synopsis "Date conversion routines")
1742 (description "This module provides functions that deal with the date
1743formats used by the HTTP protocol.")
1744 (license (package-license perl))))
1745
0a24e9b8
EB
1746(define-public perl-digest-md5-file
1747 (package
1748 (name "perl-digest-md5-file")
1749 (version "0.08")
1750 (source
1751 (origin
1752 (method url-fetch)
1753 (uri (string-append "mirror://cpan/authors/id/D/DM/DMUEY/"
1754 "Digest-MD5-File-" version ".tar.gz"))
1755 (sha256
1756 (base32
1757 "060jzf45dlwysw5wsm7av1wvpl06xgk415kwwpvv89r6wda3md5d"))))
1758 (build-system perl-build-system)
1759 (propagated-inputs
1760 `(("perl-libwww" ,perl-libwww)))
1761 (home-page "http://search.cpan.org/dist/Digest-MD5-File")
1762 (synopsis "MD5 sums for files and urls")
1763 (description "Digest::MD5::File is a Perl extension for getting MD5 sums
1764for files and urls.")
1765 (license (package-license perl))))
1766
8142aff3
EB
1767(define-public perl-encode-locale
1768 (package
1769 (name "perl-encode-locale")
1770 (version "1.03")
c9ea41ff
AE
1771 (source (origin
1772 (method url-fetch)
1773 (uri (string-append
8142aff3 1774 "mirror://cpan/authors/id/G/GA/GAAS/Encode-Locale-"
c9ea41ff
AE
1775 version ".tar.gz"))
1776 (sha256
1777 (base32
8142aff3 1778 "0m9d1vdphlyzybgmdanipwd9ndfvyjgk3hzw250r299jjgh3fqzp"))))
c9ea41ff
AE
1779 (build-system perl-build-system)
1780 (license (package-license perl))
8142aff3 1781 (synopsis "Perl locale encoding determination")
c9ea41ff 1782 (description
8142aff3 1783 "The POSIX locale system is used to specify both the language
7c125ce0
AK
1784conventions requested by the user and the preferred character set to
1785consume and output. The Encode::Locale module looks up the charset and
1786encoding (called a CODESET in the locale jargon) and arranges for the
1787Encode module to know this encoding under the name \"locale\". It means
1788bytes obtained from the environment can be converted to Unicode strings
1789by calling Encode::encode(locale => $bytes) and converted back again
1790with Encode::decode(locale => $string).")
8142aff3
EB
1791 (home-page "http://search.cpan.org/~gaas/Encode-Locale/")))
1792
46173a0d 1793(define-public perl-feed-find
1794 (package
1795 (name "perl-feed-find")
1796 (version "0.07")
1797 (source (origin
1798 (method url-fetch)
1799 (uri (string-append "mirror://cpan/authors/id/B/BT/BTROTT/"
1800 "Feed-Find-" version ".tar.gz"))
1801 (sha256
1802 (base32
1803 "0sa33cm8ww55cymnl8j7b5yspi2y5xkkkgqqa4h6fs3wdqylz600"))))
1804 (build-system perl-build-system)
1805 (arguments
1806 ;; Tests expect to query files at http://stupidfool.org/perl/feeds/
1807 `(#:tests? #f))
1808 (inputs
1809 `(("perl-class-errorhandler" ,perl-class-errorhandler)
1810 ("perl-html-parser" ,perl-html-parser)
1811 ("perl-libwww" ,perl-libwww)
1812 ("perl-uri" ,perl-uri)))
1813 (home-page "http://search.cpan.org/dist/Feed-Find")
1814 (synopsis "Syndication feed auto-discovery")
1815 (description "@code{Feed::Find} implements feed auto-discovery for finding
1816syndication feeds, given a URI. It will discover the following feed formats:
1817RSS 0.91, RSS 1.0, RSS 2.0, Atom.")
1818 (license (package-license perl))))
1819
8142aff3
EB
1820(define-public perl-file-listing
1821 (package
1822 (name "perl-file-listing")
1823 (version "6.04")
1824 (source (origin
1825 (method url-fetch)
1826 (uri (string-append
1827 "mirror://cpan/authors/id/G/GA/GAAS/File-Listing-"
1828 version ".tar.gz"))
1829 (sha256
1830 (base32
1831 "1xcwjlnxaiwwpn41a5yi6nz95ywh3szq5chdxiwj36kqsvy5000y"))))
1832 (build-system perl-build-system)
1833 (propagated-inputs
1834 `(("perl-http-date" ,perl-http-date)))
1835 (license (package-license perl))
1836 (synopsis "Perl directory listing parser")
1837 (description
1838 "The File::Listing module exports a single function called parse_dir(),
1839which can be used to parse directory listings.")
1840 (home-page "http://search.cpan.org/~gaas/File-Listing/")))
c9ea41ff 1841
8b459932
EB
1842(define-public perl-finance-quote
1843 (package
1844 (name "perl-finance-quote")
1845 (version "1.37")
1846 (source
1847 (origin
1848 (method url-fetch)
1849 (uri (string-append "https://cpan.metacpan.org/authors/id/E/EC/ECOCODE/"
1850 "Finance-Quote-" version ".tar.gz"))
1851 (sha256
1852 (base32
1853 "1b6pbh7f76fb5sa4f0lhx085xy55pprz5v7z7li7pqiyw7i4f4bf"))
fc1adab1
AK
1854 (patches (search-patches
1855 "perl-finance-quote-unuse-mozilla-ca.patch"))))
8b459932
EB
1856 (build-system perl-build-system)
1857 (propagated-inputs
a2190ccc
EB
1858 `(("perl-cgi" ,perl-cgi)
1859 ("perl-datetime" ,perl-datetime)
8b459932
EB
1860 ("perl-html-parser" ,perl-html-parser)
1861 ("perl-html-tableextract" ,perl-html-tableextract)
1862 ("perl-html-tree" ,perl-html-tree)
1863 ("perl-http-cookies" ,perl-http-cookies)
1864 ("perl-http-message" ,perl-http-message)
1865 ("perl-json" ,perl-json)
1866 ("perl-libwww" ,perl-libwww)
1867 ("perl-lwp-protocol-https" ,perl-lwp-protocol-https)
1868 ("perl-uri" ,perl-uri)))
1869 (home-page "http://search.cpan.org/dist/Finance-Quote")
1870 (synopsis "Stock and mutual fund quotes")
1871 (description
1872 "Finance::Quote gets stock quotes from various internet sources, including
1873Yahoo! Finance, Fidelity Investments, and the Australian Stock Exchange.")
1874 (license l:gpl2)))
1875
9fe938c1
EB
1876(define-public perl-gssapi
1877 (package
1878 (name "perl-gssapi")
1879 (version "0.28")
1880 (source
1881 (origin
1882 (method url-fetch)
1883 (uri (string-append "mirror://cpan/authors/id/A/AG/AGROLMS/"
1884 "GSSAPI-" version ".tar.gz"))
1885 (sha256
1886 (base32
1887 "1mkhwxjjlhr58pd770i9gnf7zy7jj092iv6jfbnb8bvnc5xjr3vx"))))
1888 (build-system perl-build-system)
1889 (inputs `(("gssapi" ,mit-krb5)))
1890 (arguments
1891 `(#:make-maker-flags
1892 `(,(string-append "--gssapiimpl=" (assoc-ref %build-inputs "gssapi")))))
1893 (home-page "http://search.cpan.org/dist/GSSAPI")
1894 (synopsis "Perl extension providing access to the GSSAPIv2 library")
1895 (description "This is a Perl extension for using GSSAPI C bindings as
1896described in RFC 2744.")
1897 (license (package-license perl))))
1898
c1b9e7e7
EB
1899(define-public perl-html-element-extended
1900 (package
1901 (name "perl-html-element-extended")
1902 (version "1.18")
1903 (source
1904 (origin
1905 (method url-fetch)
1906 (uri (string-append "mirror://cpan/authors/id/M/MS/MSISK/"
1907 "HTML-Element-Extended-" version ".tar.gz"))
1908 (sha256
1909 (base32
1910 "0axknss8c368r5i082yhkfj8mq0w4nglfrpcxcayyzzj13qimvzk"))))
1911 (build-system perl-build-system)
1912 (propagated-inputs
1913 `(("perl-html-tree" ,perl-html-tree)))
1914 (home-page "http://search.cpan.org/dist/HTML-Element-Extended")
1915 (synopsis "Manipulate tables of HTML::Element")
1916 (description
1917 "HTML::Element::Extended is a Perl extension for manipulating a table
1918composed of HTML::Element style components.")
1919 (license (package-license perl))))
1920
bab57fcd
EB
1921(define-public perl-html-form
1922 (package
1923 (name "perl-html-form")
1924 (version "6.03")
1925 (source
1926 (origin
1927 (method url-fetch)
1928 (uri (string-append "mirror://cpan/authors/id/G/GA/GAAS/"
1929 "HTML-Form-" version ".tar.gz"))
1930 (sha256
1931 (base32
1932 "0dpwr7yz6hjc3bcqgcbdzjjk9l58ycdjmbam9nfcmm85y2a1vh38"))))
1933 (build-system perl-build-system)
1934 (propagated-inputs
1935 `(("perl-html-parser" ,perl-html-parser)
1936 ("perl-html-tagset" ,perl-html-tagset)
1937 ("perl-http-message" ,perl-http-message)
1938 ("perl-lwp-mediatypes" ,perl-lwp-mediatypes)
1939 ("perl-uri" ,perl-uri)))
1940 (home-page "http://search.cpan.org/dist/HTML-Form")
1941 (synopsis "Perl class representing an HTML form element")
1942 (description "Objects of the HTML::Form class represents a single HTML
1943<form> ... </form> instance.")
1944 (license (package-license perl))))
1945
0cd2ab30
EB
1946(define-public perl-html-lint
1947 (package
1948 (name "perl-html-lint")
1949 (version "2.20")
1950 (source
1951 (origin
1952 (method url-fetch)
1953 (uri (string-append "mirror://cpan/authors/id/P/PE/PETDANCE/"
1954 "HTML-Lint-" version ".tar.gz"))
1955 (sha256
1956 (base32
1957 "15vrqjnlb0f8rib1kqdf4islqy6i33h08wy7b1bkgd550p7lfjwk"))))
1958 (build-system perl-build-system)
1959 (propagated-inputs
1960 `(("perl-html-parser" ,perl-html-parser)
1961 ("perl-html-tagset" ,perl-html-tagset)
1962 ("perl-libwww" ,perl-libwww)))
1963 (home-page "http://search.cpan.org/dist/HTML-Lint")
1964 (synopsis "Check for HTML errors in a string or file")
1965 (description "HTML::Lint is a pure-Perl HTML parser and checker for
1966syntactic legitmacy.")
1967 (license l:artistic2.0)))
1968
9cf6c9fc
EB
1969(define-public perl-html-tableextract
1970 (package
1971 (name "perl-html-tableextract")
1972 (version "2.13")
1973 (source
1974 (origin
1975 (method url-fetch)
1976 (uri (string-append "https://cpan.metacpan.org/authors/id/M/MS/MSISK/"
1977 "HTML-TableExtract-" version ".tar.gz"))
1978 (sha256
1979 (base32
1980 "01jimmss3q68a89696wmclvqwb2ybz6xgabpnbp6mm6jcni82z8a"))))
1981 (build-system perl-build-system)
1982 (propagated-inputs
1983 `(("perl-html-element-extended" ,perl-html-element-extended)
1984 ("perl-html-parser" ,perl-html-parser)))
1985 (home-page "http://search.cpan.org/dist/HTML-TableExtract")
1986 (synopsis "Extract contents from HTML tables")
1987 (description
1988 "HTML::TableExtract is a Perl module for extracting the content contained
1989in tables within an HTML document, either as text or encoded element trees.")
1990 (license (package-license perl))))
1991
ddc36cd8
EB
1992(define-public perl-html-tree
1993 (package
1994 (name "perl-html-tree")
1995 (version "5.03")
1996 (source
1997 (origin
1998 (method url-fetch)
1999 (uri (string-append "mirror://cpan/authors/id/C/CJ/CJM/"
2000 "HTML-Tree-" version ".tar.gz"))
2001 (sha256
2002 (base32
2003 "13qlqbpixw470gnck0xgny8hyjj576m8y24bba2p9ai2lvy76vbx"))))
2004 (build-system perl-build-system)
2005 (native-inputs
a2190ccc
EB
2006 `(("perl-module-build" ,perl-module-build)
2007 ("perl-test-fatal" ,perl-test-fatal)))
ddc36cd8
EB
2008 (propagated-inputs
2009 `(("perl-html-parser" ,perl-html-parser)
2010 ("perl-html-tagset" ,perl-html-tagset)
2011 ("perl-libwww" ,perl-libwww)))
2012 (home-page "http://search.cpan.org/dist/HTML-Tree")
2013 (synopsis "Work with HTML in a DOM-like tree structure")
2014 (description "This distribution contains a suite of modules for
2015representing, creating, and extracting information from HTML syntax trees.")
2016 (license (package-license perl))))
2017
8ec0d3fb
AE
2018(define-public perl-html-parser
2019 (package
2020 (name "perl-html-parser")
2021 (version "3.71")
2022 (source (origin
2023 (method url-fetch)
2024 (uri (string-append
2025 "mirror://cpan/authors/id/G/GA/GAAS/HTML-Parser-"
2026 version ".tar.gz"))
2027 (sha256
2028 (base32
2029 "00nqzdgl7c3jilx7mil19k5jwcw3as14pvkjgxi97zyk94vqp4dy"))))
2030 (build-system perl-build-system)
2031 (inputs
2032 `(("perl-html-tagset" ,perl-html-tagset)))
2033 (license (package-license perl))
2034 (synopsis "Perl HTML parser class")
2035 (description
2036 "Objects of the HTML::Parser class will recognize markup and separate
2037it from plain text (alias data content) in HTML documents. As different
2038kinds of markup and text are recognized, the corresponding event handlers
2039are invoked.")
2040 (home-page "http://search.cpan.org/~gaas/HTML-Parser/")))
ae2aa18d 2041
8142aff3 2042(define-public perl-html-tagset
ae2aa18d 2043 (package
8142aff3
EB
2044 (name "perl-html-tagset")
2045 (version "3.20")
ae2aa18d
AE
2046 (source (origin
2047 (method url-fetch)
2048 (uri (string-append
8142aff3 2049 "mirror://cpan/authors/id/P/PE/PETDANCE/HTML-Tagset-"
ae2aa18d
AE
2050 version ".tar.gz"))
2051 (sha256
2052 (base32
8142aff3 2053 "1qh8249wgr4v9vgghq77zh1d2zs176bir223a8gh3k9nksn7vcdd"))))
ae2aa18d
AE
2054 (build-system perl-build-system)
2055 (license (package-license perl))
8142aff3 2056 (synopsis "Perl data tables useful in parsing HTML")
ae2aa18d 2057 (description
8142aff3
EB
2058 "The HTML::Tagset module contains several data tables useful in various
2059kinds of HTML parsing operations.")
2060 (home-page "http://search.cpan.org/dist/HTML-Tagset/")))
fea5ebb1 2061
a05996e0
RW
2062(define-public perl-html-template
2063 (package
2064 (name "perl-html-template")
2065 (version "2.95")
2066 (source (origin
2067 (method url-fetch)
2068 (uri (string-append "mirror://cpan/authors/id/W/WO/WONKO/"
2069 "HTML-Template-" version ".tar.gz"))
2070 (sha256
2071 (base32
2072 "07ahpfgidxsw2yb7y8i7bbr8s64aq6qgq832h9jswmksxbd0l43q"))))
2073 (build-system perl-build-system)
a2190ccc
EB
2074 (propagated-inputs
2075 `(("perl-cgi" ,perl-cgi)))
a05996e0
RW
2076 (home-page "http://search.cpan.org/dist/HTML-Template")
2077 (synopsis "HTML-like templates")
2078 (description
2079 "This module attempts to make using HTML templates simple and natural.
2080It extends standard HTML with a few new HTML-esque tags: @code{<TMPL_VAR>},
2081@code{<TMPL_LOOP>}, @code{<TMPL_INCLUDE>}, @code{<TMPL_IF>},
2082@code{<TMPL_ELSE>} and @code{<TMPL_UNLESS>}. The file written with HTML and
2083these new tags is called a template. Using this module you fill in the values
2084for the variables, loops and branches declared in the template. This allows
2085you to separate design from the data.")
2086 (license (package-license perl))))
2087
5ec8ec83
EB
2088(define-public perl-http-body
2089 (package
2090 (name "perl-http-body")
2091 (version "1.19")
2092 (source
2093 (origin
2094 (method url-fetch)
2095 (uri (string-append "mirror://cpan/authors/id/G/GE/GETTY/"
2096 "HTTP-Body-" version ".tar.gz"))
2097 (sha256
2098 (base32
2099 "0ahhksj0zg6wq6glpjkxdr3byd5riwvq2f5aw21n1jcsl71nll01"))))
2100 (build-system perl-build-system)
2101 (native-inputs
2102 `(("perl-test-deep" ,perl-test-deep)))
2103 (propagated-inputs
2104 `(("perl-file-temp" ,perl-file-temp)
2105 ("perl-http-message" ,perl-http-message))) ;For HTTP::Headers
2106 (home-page "http://search.cpan.org/dist/HTTP-Body")
2107 (synopsis "HTTP Body Parser")
2108 (description "HTTP::Body parses chunks of HTTP POST data and supports
2109application/octet-stream, application/json, application/x-www-form-urlencoded,
2110and multipart/form-data.")
2111 (license (package-license perl))))
2112
c8a316a3
EB
2113(define-public perl-http-cookiejar
2114 (package
2115 (name "perl-http-cookiejar")
2116 (version "0.006")
2117 (source
2118 (origin
2119 (method url-fetch)
2120 (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/"
2121 "HTTP-CookieJar-" version ".tar.gz"))
2122 (sha256
2123 (base32
2124 "0c7l29ak6ba2j006ca00vnkxpyc1fvpikydjvsb24s50zf1mv7b2"))))
2125 (build-system perl-build-system)
2126 (native-inputs
2127 `(("perl-test-deep" ,perl-test-deep)
2128 ("perl-test-requires" ,perl-test-requires)
2129 ("perl-time-mock" ,perl-time-mock)))
2130 (inputs
2131 `(("perl-time-local" ,perl-time-local)
2132 ("perl-http-date" ,perl-http-date)))
2133 (home-page "http://search.cpan.org/dist/HTTP-CookieJar")
2134 (synopsis "Minimalist HTTP user agent cookie jar")
2135 (description "This module implements a minimalist HTTP user agent cookie
2136jar in conformance with RFC 6265 <http://tools.ietf.org/html/rfc6265>.")
2137 (license l:asl2.0)))
2138
8142aff3 2139(define-public perl-http-cookies
fea5ebb1 2140 (package
8142aff3
EB
2141 (name "perl-http-cookies")
2142 (version "6.01")
fea5ebb1
AE
2143 (source (origin
2144 (method url-fetch)
2145 (uri (string-append
8142aff3 2146 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Cookies-"
fea5ebb1
AE
2147 version ".tar.gz"))
2148 (sha256
2149 (base32
8142aff3 2150 "087bqmg22dg3vj7gssh3pcsh9y1scimkbl5h1kc8jqyfhgisvlzm"))))
fea5ebb1 2151 (build-system perl-build-system)
8142aff3
EB
2152 (propagated-inputs
2153 `(("perl-http-message" ,perl-http-message)))
fea5ebb1 2154 (license (package-license perl))
8142aff3 2155 (synopsis "Perl HTTP cookie jars")
fea5ebb1 2156 (description
8142aff3
EB
2157 "The HTTP::Cookies class is for objects that represent a cookie jar,
2158that is, a database of all the HTTP cookies that a given LWP::UserAgent
2159object knows about.")
2160 (home-page "http://search.cpan.org/~gaas/HTTP-Cookies/")))
24b3c053 2161
8142aff3 2162(define-public perl-http-daemon
24b3c053 2163 (package
8142aff3
EB
2164 (name "perl-http-daemon")
2165 (version "6.01")
24b3c053
AE
2166 (source (origin
2167 (method url-fetch)
2168 (uri (string-append
8142aff3 2169 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Daemon-"
24b3c053
AE
2170 version ".tar.gz"))
2171 (sha256
2172 (base32
8142aff3 2173 "1hmd2isrkilf0q0nkxms1q64kikjmcw9imbvrjgky6kh89vqdza3"))))
24b3c053 2174 (build-system perl-build-system)
8142aff3
EB
2175 (propagated-inputs
2176 `(("perl-http-message" ,perl-http-message)
2177 ("perl-lwp-mediatypes" ,perl-lwp-mediatypes)))
24b3c053 2178 (license (package-license perl))
8142aff3 2179 (synopsis "Perl simple http server class")
24b3c053 2180 (description
8142aff3
EB
2181 "Instances of the HTTP::Daemon class are HTTP/1.1 servers that listen
2182on a socket for incoming requests. The HTTP::Daemon is a subclass of
2183IO::Socket::INET, so you can perform socket operations directly on it too.")
2184 (home-page "http://search.cpan.org/~gaas/HTTP-Daemon/")))
e426106b 2185
8142aff3 2186(define-public perl-http-date
e426106b 2187 (package
8142aff3
EB
2188 (name "perl-http-date")
2189 (version "6.02")
e426106b
AE
2190 (source (origin
2191 (method url-fetch)
2192 (uri (string-append
8142aff3 2193 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Date-"
e426106b
AE
2194 version ".tar.gz"))
2195 (sha256
2196 (base32
8142aff3 2197 "0cz357kafhhzw7w59iyi0wvhw7rlh5g1lh38230ckw7rl0fr9fg8"))))
e426106b
AE
2198 (build-system perl-build-system)
2199 (license (package-license perl))
8142aff3 2200 (synopsis "Perl date conversion routines")
e426106b 2201 (description
8142aff3
EB
2202 "The HTTP::Date module provides functions that deal with date formats
2203used by the HTTP protocol (and then some more).")
2204 (home-page "http://search.cpan.org/~gaas/HTTP-Date/")))
91318a9e
AE
2205
2206(define-public perl-http-message
2207 (package
2208 (name "perl-http-message")
2209 (version "6.06")
2210 (source (origin
2211 (method url-fetch)
2212 (uri (string-append
2213 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Message-"
2214 version ".tar.gz"))
2215 (sha256
2216 (base32
2217 "0qxdrcak97azjvqyx1anpb2ky6vp6vc37x0wcfjdqfajkh09fzh8"))))
2218 (build-system perl-build-system)
daee66fc 2219 (propagated-inputs
91318a9e 2220 `(("perl-http-date" ,perl-http-date)
d8450272
EB
2221 ("perl-io-html" ,perl-io-html)
2222 ("perl-lwp-mediatypes" ,perl-lwp-mediatypes)
f852114e 2223 ("perl-uri" ,perl-uri)))
91318a9e
AE
2224 (license (package-license perl))
2225 (synopsis "Perl HTTP style message")
2226 (description
2227 "An HTTP::Message object contains some headers and a content body.")
2228 (home-page "http://search.cpan.org/~gaas/HTTP-Message/")))
b3d18aff 2229
8142aff3 2230(define-public perl-http-negotiate
b3d18aff 2231 (package
8142aff3 2232 (name "perl-http-negotiate")
b3d18aff
AE
2233 (version "6.01")
2234 (source (origin
2235 (method url-fetch)
2236 (uri (string-append
8142aff3 2237 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Negotiate-"
b3d18aff
AE
2238 version ".tar.gz"))
2239 (sha256
2240 (base32
8142aff3 2241 "05p053vjs5g91v5cmjnny7a3xzddz5k7vnjw81wfh01ilqg9qwhw"))))
b3d18aff 2242 (build-system perl-build-system)
800de8da 2243 (propagated-inputs
f852114e 2244 `(("perl-http-message" ,perl-http-message)))
b3d18aff 2245 (license (package-license perl))
8142aff3 2246 (synopsis "Perl http content negotiation")
b3d18aff 2247 (description
8142aff3
EB
2248 "The HTTP::Negotiate module provides a complete implementation of the
2249HTTP content negotiation algorithm specified in
2250draft-ietf-http-v11-spec-00.ps chapter 12. Content negotiation allows for
2251the selection of a preferred content representation based upon attributes
2252of the negotiable variants and the value of the various Accept* header
2253fields in the request.")
2254 (home-page "http://search.cpan.org/~gaas/HTTP-Negotiate/")))
3f41e6b3 2255
d3182b42
EB
2256(define-public perl-http-parser
2257 (package
2258 (name "perl-http-parser")
2259 (version "0.06")
2260 (source
2261 (origin
2262 (method url-fetch)
2263 (uri (string-append "mirror://cpan/authors/id/E/ED/EDECA/"
2264 "HTTP-Parser-" version ".tar.gz"))
2265 (sha256
2266 (base32
2267 "0idwq3jk595xil65lmxz128ha7s3r2n5zknisddpgwnqrghs3igq"))))
2268 (build-system perl-build-system)
2269 (propagated-inputs
2270 `(("perl-http-message" ,perl-http-message)
2271 ("perl-uri" ,perl-uri)))
2272 (home-page "http://search.cpan.org/dist/HTTP-Parser")
2273 (synopsis "Parse HTTP/1.1 requests")
2274 (description "This is an HTTP request parser. It takes chunks of text as
2275received and returns a 'hint' as to what is required, or returns the
2276HTTP::Request when a complete request has been read. HTTP/1.1 chunking is
2277supported.")
2278 (license (package-license perl))))
2279
8ab39c2d
EB
2280(define-public perl-http-parser-xs
2281 (package
2282 (name "perl-http-parser-xs")
2283 (version "0.17")
2284 (source
2285 (origin
2286 (method url-fetch)
2287 (uri (string-append "mirror://cpan/authors/id/K/KA/KAZUHO/"
2288 "HTTP-Parser-XS-" version ".tar.gz"))
2289 (sha256
2290 (base32
2291 "02d84xq1mm53c7jl33qyb7v5w4372vydp74z6qj0vc96wcrnhkkr"))))
2292 (build-system perl-build-system)
2293 (home-page "http://search.cpan.org/dist/HTTP-Parser-XS")
2294 (synopsis "Fast HTTP request parser")
2295 (description "HTTP::Parser::XS is a fast, primitive HTTP request/response
2296parser.")
2297 (license (package-license perl))))
2298
724d2227
EB
2299(define-public perl-http-request-ascgi
2300 (package
2301 (name "perl-http-request-ascgi")
2302 (version "1.2")
2303 (source
2304 (origin
2305 (method url-fetch)
2306 (uri (string-append "mirror://cpan/authors/id/F/FL/FLORA/"
2307 "HTTP-Request-AsCGI-" version ".tar.gz"))
2308 (sha256
2309 (base32
2310 "1smwmiarwcgq7vjdblnb6ldi2x1s5sk5p15p7xvm5byiqq3znnwl"))))
2311 (build-system perl-build-system)
2312 (propagated-inputs
2313 `(("perl-class-accessor" ,perl-class-accessor)
2314 ("perl-http-message" ,perl-http-message)))
2315 (home-page "http://search.cpan.org/dist/HTTP-Request-AsCGI")
2316 (synopsis "Set up a CGI environment from an HTTP::Request")
2317 (description "This module provides a convenient way to set up a CGI
2318environment from an HTTP::Request.")
2319 (license (package-license perl))))
2320
c94c7eef
EB
2321(define-public perl-http-server-simple
2322 (package
2323 (name "perl-http-server-simple")
2324 (version "0.44")
2325 (source
2326 (origin
2327 (method url-fetch)
2328 (uri (string-append "mirror://cpan/authors/id/J/JE/JESSE/"
2329 "HTTP-Server-Simple-" version ".tar.gz"))
2330 (sha256
2331 (base32
2332 "05klpfkss2a6i5ihmvcm27fyar0f2v4ispg2f49agab3va1gix6g"))))
2333 (build-system perl-build-system)
a2190ccc
EB
2334 (propagated-inputs
2335 `(("perl-cgi" ,perl-cgi)))
c94c7eef
EB
2336 (arguments
2337 ;; See the discussion of a related tests issue at
2338 ;; https://lists.gnu.org/archive/html/guix-devel/2015-01/msg00346.html
2339 `(#:tests? #f))
2340 (home-page "http://search.cpan.org/dist/HTTP-Server-Simple")
2341 (synopsis "Lightweight HTTP server")
2342 (description "HTTP::Server::Simple is a simple standalone HTTP daemon with
2343no non-core module dependencies. It can be used for building a standalone
2344http-based UI to your existing tools.")
2345 (license (package-license perl))))
2346
c3c03beb
EB
2347(define-public perl-http-tiny
2348 (package
2349 (name "perl-http-tiny")
2350 (version "0.053")
2351 (source
2352 (origin
2353 (method url-fetch)
2354 (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/"
2355 "HTTP-Tiny-" version ".tar.gz"))
2356 (sha256
2357 (base32
2358 "1bwy31xrcz5zfx1n3vc50vj1aqvzn5ccr7lgacl8wmi03a6w2af2"))))
2359 (build-system perl-build-system)
2360 (inputs
2361 `(("perl-http-cookiejar" ,perl-http-cookiejar)
2362 ("perl-io-socket-ip" ,perl-io-socket-ip)
2363 ("perl-io-socket-ssl" ,perl-io-socket-ssl)
2364 ("perl-net-ssleay" ,perl-net-ssleay)))
2365 (home-page "http://search.cpan.org/dist/HTTP-Tiny")
2366 (synopsis "HTTP/1.1 client")
2367 (description "This is a very simple HTTP/1.1 client, designed for doing
2368simple requests without the overhead of a large framework like LWP::UserAgent.
2369It supports proxies and redirection. It also correctly resumes after EINTR.")
2370 (license (package-license perl))))
2371
8142aff3 2372(define-public perl-io-html
3f41e6b3 2373 (package
8142aff3
EB
2374 (name "perl-io-html")
2375 (version "1.00")
3f41e6b3
AE
2376 (source (origin
2377 (method url-fetch)
2378 (uri (string-append
8142aff3 2379 "mirror://cpan/authors/id/C/CJ/CJM/IO-HTML-"
3f41e6b3
AE
2380 version ".tar.gz"))
2381 (sha256
2382 (base32
8142aff3 2383 "06nj3a0xgp5jxwxx6ayglfk2v7npf5a7gwkqsjlkapjkybarzqh4"))))
3f41e6b3 2384 (build-system perl-build-system)
3f41e6b3 2385 (license (package-license perl))
8142aff3 2386 (synopsis "Perl module to open an HTML file with automatic charset detection")
3f41e6b3 2387 (description
8142aff3
EB
2388 "IO::HTML provides an easy way to open a file containing HTML while
2389automatically determining its encoding. It uses the HTML5 encoding sniffing
2390algorithm specified in section 8.2.2.1 of the draft standard.")
2391 (home-page "http://search.cpan.org/~cjm/IO-HTML/")))
e7444ee2 2392
2b63ebc1
EB
2393(define-public perl-io-socket-ip
2394 (package
2395 (name "perl-io-socket-ip")
2396 (version "0.36")
2397 (source
2398 (origin
2399 (method url-fetch)
2400 (uri (string-append "mirror://cpan/authors/id/P/PE/PEVANS/"
2401 "IO-Socket-IP-" version ".tar.gz"))
2402 (sha256
2403 (base32
2404 "0ky20hmln6waipzqikizyw04vpszf70fgpshz7ib8zv8480ri456"))))
2405 (build-system perl-build-system)
a2190ccc 2406 (native-inputs `(("perl-module-build" ,perl-module-build)))
2b63ebc1
EB
2407 (home-page "http://search.cpan.org/dist/IO-Socket-IP")
2408 (synopsis "Family-neutral IP socket supporting both IPv4 and IPv6")
2409 (description "This module provides a protocol-independent way to use IPv4
2410and IPv6 sockets, intended as a replacement for IO::Socket::INET.")
2411 (license (package-license perl))))
2412
8142aff3 2413(define-public perl-io-socket-ssl
e7444ee2 2414 (package
8142aff3 2415 (name "perl-io-socket-ssl")
73020459 2416 (version "2.033")
8142aff3
EB
2417 (source (origin
2418 (method url-fetch)
2419 (uri (string-append "mirror://cpan/authors/id/S/SU/SULLR/"
2420 "IO-Socket-SSL-" version ".tar.gz"))
2421 (sha256
2422 (base32
73020459 2423 "01qggwmc97kpzx49fp4fxysrjyq8mpnx54nrb087ridj0ch3cf46"))
fc1adab1
AK
2424 (patches (search-patches
2425 "perl-io-socket-ssl-openssl-1.0.2f-fix.patch"))))
8142aff3 2426 (build-system perl-build-system)
578aeea6 2427 (propagated-inputs
2428 `(("perl-net-ssleay" ,perl-net-ssleay)
2429 ;; for IDN support
2430 ("perl-uri" ,perl-uri)))
8142aff3
EB
2431 (synopsis "Nearly transparent SSL encapsulation for IO::Socket::INET")
2432 (description
2433 "IO::Socket::SSL makes using SSL/TLS much easier by wrapping the
2434necessary functionality into the familiar IO::Socket interface and providing
2435secure defaults whenever possible. This way existing applications can be made
2436SSL-aware without much effort, at least if you do blocking I/O and don't use
2437select or poll.")
2438 (license (package-license perl))
2439 (home-page "https://github.com/noxxi/p5-io-socket-ssl")))
2440
2441(define-public perl-libwww
2442 (package
2443 (name "perl-libwww")
bec820d9 2444 (version "6.13")
e7444ee2
AE
2445 (source (origin
2446 (method url-fetch)
2447 (uri (string-append
bec820d9 2448 "mirror://cpan/authors/id/E/ET/ETHER/libwww-perl-"
e7444ee2
AE
2449 version ".tar.gz"))
2450 (sha256
2451 (base32
bec820d9 2452 "1cpqjl59viw50bnbdyn8xzrwzg7g54b2rszw0fifacqrppp17gaz"))))
e7444ee2 2453 (build-system perl-build-system)
d0bb5f77 2454 (propagated-inputs
8142aff3
EB
2455 `(("perl-encode-locale" ,perl-encode-locale)
2456 ("perl-file-listing" ,perl-file-listing)
2457 ("perl-html-parser" ,perl-html-parser)
2458 ("perl-http-cookies" ,perl-http-cookies)
2459 ("perl-http-daemon" ,perl-http-daemon)
2460 ("perl-http-negotiate" ,perl-http-negotiate)
2461 ("perl-net-http" ,perl-net-http)
2462 ("perl-www-robotrules" ,perl-www-robotrules)))
e7444ee2 2463 (license (package-license perl))
8142aff3 2464 (synopsis "Perl modules for the WWW")
e7444ee2 2465 (description
8142aff3
EB
2466 "The libwww-perl collection is a set of Perl modules which provides a
2467simple and consistent application programming interface to the
2468World-Wide Web. The main focus of the library is to provide classes
2469and functions that allow you to write WWW clients. The library also
2470contains modules that are of more general use and even classes that
2471help you implement simple HTTP servers.")
bec820d9 2472 (home-page "http://search.cpan.org/dist/libwww-perl/")))
a3eb919f 2473
8142aff3 2474(define-public perl-lwp-mediatypes
a3eb919f 2475 (package
8142aff3 2476 (name "perl-lwp-mediatypes")
a3eb919f
AE
2477 (version "6.02")
2478 (source (origin
2479 (method url-fetch)
2480 (uri (string-append
8142aff3 2481 "mirror://cpan/authors/id/G/GA/GAAS/LWP-MediaTypes-"
a3eb919f
AE
2482 version ".tar.gz"))
2483 (sha256
2484 (base32
8142aff3 2485 "0xmnblp962qy02akah30sji8bxrqcyqlff2w95l199ghql60ny8q"))))
a3eb919f 2486 (build-system perl-build-system)
a3eb919f 2487 (license (package-license perl))
8142aff3 2488 (synopsis "Perl module to guess the media type for a file or a URL")
a3eb919f 2489 (description
8142aff3
EB
2490 "The LWP::MediaTypes module provides functions for handling media (also
2491known as MIME) types and encodings. The mapping from file extensions to
2492media types is defined by the media.types file. If the ~/.media.types file
2493exists it is used instead.")
2494 (home-page "http://search.cpan.org/~gaas/LWP-MediaTypes/")))
677078b4 2495
bdcfd18e
EB
2496(define-public perl-lwp-protocol-https
2497 (package
2498 (name "perl-lwp-protocol-https")
2499 (version "6.06")
2500 (source
2501 (origin
2502 (method url-fetch)
2503 (uri (string-append "mirror://cpan/authors/id/M/MS/MSCHILLI/"
2504 "LWP-Protocol-https-" version ".tar.gz"))
2505 (sha256
2506 (base32
2507 "1vxdjqj4bwq56m9h1bqqwkk3c6jr76f2zqzvwa26yjng3p686v5q"))))
2508 (build-system perl-build-system)
2509 (propagated-inputs
2510 `(("perl-io-socket-ssl" ,perl-io-socket-ssl)
2511 ("perl-libwww" ,perl-libwww)
2512 ;; Users should instead make sure SSL_ca_path is set properly.
2513 ;; ("perl-mozilla-ca" ,perl-mozilla-ca)
2514 ("perl-net-http" ,perl-net-http)))
2515 (home-page "http://search.cpan.org/dist/LWP-Protocol-https")
2516 (synopsis "HTTPS support for LWP::UserAgent")
2517 (description "The LWP::Protocol::https module provides support for using
2518https schemed URLs with LWP.")
2519 (license (package-license perl))))
2520
6a58b092
EB
2521(define-public perl-lwp-useragent-determined
2522 (package
2523 (name "perl-lwp-useragent-determined")
2524 (version "1.07")
2525 (source
2526 (origin
2527 (method url-fetch)
2528 (uri (string-append "mirror://cpan/authors/id/A/AL/ALEXMV/"
2529 "LWP-UserAgent-Determined-" version ".tar.gz"))
2530 (sha256
2531 (base32
2532 "0lyvbpjng7yfvyha9rp2y2c6liz5hhplmd2grc8jlsfkih7dbn06"))))
2533 (build-system perl-build-system)
2534 (propagated-inputs
2535 `(("perl-libwww" ,perl-libwww)))
2536 (home-page "http://search.cpan.org/dist/LWP-UserAgent-Determined")
2537 (synopsis "Virtual browser that retries errors")
2538 (description "LWP::UserAgent::Determined works just like LWP::UserAgent,
2539except that when you use it to get a web page but run into a
2540possibly-temporary error (like a DNS lookup timeout), it'll wait a few seconds
2541and retry a few times.")
2542 (license (package-license perl))))
2543
38e62c81
EB
2544(define-public perl-net-amazon-s3
2545 (package
2546 (name "perl-net-amazon-s3")
2547 (version "0.60")
2548 (source
2549 (origin
2550 (method url-fetch)
2551 (uri (string-append "mirror://cpan/authors/id/P/PF/PFIG/"
2552 "Net-Amazon-S3-" version ".tar.gz"))
2553 (sha256
2554 (base32
2555 "10dcsq4s2kc9cb1vccx17r187c81drirc3s1hbxh3rb8489kg2b2"))
fc1adab1
AK
2556 (patches (search-patches
2557 "perl-net-amazon-s3-moose-warning.patch"))))
38e62c81
EB
2558 (build-system perl-build-system)
2559 (native-inputs
2560 `(("perl-libwww" ,perl-libwww)
2561 ("perl-test-exception" ,perl-test-exception)))
2562 (propagated-inputs
2563 `(("perl-data-stream-bulk" ,perl-data-stream-bulk)
2564 ("perl-datetime-format-http" ,perl-datetime-format-http)
2565 ("perl-digest-hmac" ,perl-digest-hmac)
2566 ("perl-digest-md5-file" ,perl-digest-md5-file)
2567 ("perl-file-find-rule" ,perl-file-find-rule)
2568 ("perl-http-date" ,perl-http-date)
2569 ("perl-http-message" ,perl-http-message)
2570 ("perl-lwp-useragent-determined" ,perl-lwp-useragent-determined)
2571 ("perl-mime-types" ,perl-mime-types)
2572 ("perl-moose" ,perl-moose)
2573 ("perl-moosex-strictconstructor" ,perl-moosex-strictconstructor)
2574 ("perl-moosex-types-datetime-morecoercions"
2575 ,perl-moosex-types-datetime-morecoercions)
2576 ("perl-path-class" ,perl-path-class)
2577 ("perl-regexp-common" ,perl-regexp-common)
2578 ("perl-term-encoding" ,perl-term-encoding)
2579 ("perl-term-progressbar-simple" ,perl-term-progressbar-simple)
2580 ("perl-uri" ,perl-uri)
2581 ("perl-xml-libxml" ,perl-xml-libxml)))
2582 (home-page "http://search.cpan.org/dist/Net-Amazon-S3")
2583 (synopsis "Perl interface to Amazon S3")
2584 (description "This module provides a Perlish interface to Amazon S3.")
2585 (license (package-license perl))))
2586
677078b4
AE
2587(define-public perl-net-http
2588 (package
2589 (name "perl-net-http")
0eb3b5bd 2590 (version "6.07")
677078b4
AE
2591 (source (origin
2592 (method url-fetch)
2593 (uri (string-append
0eb3b5bd 2594 "mirror://cpan/authors/id/M/MS/MSCHILLI/Net-HTTP-"
677078b4
AE
2595 version ".tar.gz"))
2596 (sha256
2597 (base32
0eb3b5bd 2598 "0r034hhci0yqbrkrh1gv6vi5g3i0kpd1k84z62nk02asb8rf0ccz"))))
677078b4 2599 (build-system perl-build-system)
0eb3b5bd
EB
2600 (propagated-inputs
2601 `(("perl-io-socket-ssl" ,perl-io-socket-ssl)
2602 ("perl-uri" ,perl-uri)))
677078b4
AE
2603 (license (package-license perl))
2604 (synopsis "Perl low-level HTTP connection (client)")
2605 (description
2606 "The Net::HTTP class is a low-level HTTP client. An instance of the
2607Net::HTTP class represents a connection to an HTTP server. The HTTP protocol
2608is described in RFC 2616. The Net::HTTP class supports HTTP/1.0 and
2609HTTP/1.1.")
0eb3b5bd 2610 (home-page "http://search.cpan.org/dist/Net-HTTP")))
56aa03b0 2611
be22d5fc
EB
2612(define-public perl-net-server
2613 (package
2614 (name "perl-net-server")
2615 (version "2.008")
2616 (source
2617 (origin
2618 (method url-fetch)
2619 (uri (string-append "mirror://cpan/authors/id/R/RH/RHANDOM/"
2620 "Net-Server-" version ".tar.gz"))
2621 (sha256
2622 (base32
2623 "182gfikn7r40kmm3d35m2qc6r8g0y1j8gxbn9ffaawf8xmm0a889"))))
2624 (build-system perl-build-system)
2625 (home-page "http://search.cpan.org/dist/Net-Server")
2626 (synopsis "Extensible Perl server engine")
2627 (description "Net::Server is an extensible, generic Perl server engine.
2628It attempts to be a generic server as in Net::Daemon and NetServer::Generic.
2629It includes with it the ability to run as an inetd
2630process (Net::Server::INET), a single connection server (Net::Server or
2631Net::Server::Single), a forking server (Net::Server::Fork), a preforking
2632server which maintains a constant number of preforked
2633children (Net::Server::PreForkSimple), or as a managed preforking server which
2634maintains the number of children based on server load (Net::Server::PreFork).
2635In all but the inetd type, the server provides the ability to connect to one
2636or to multiple server ports.")
2637 (license (package-license perl))))
2638
b1096f3d
EB
2639(define-public perl-net-smtp-ssl
2640 (package
2641 (name "perl-net-smtp-ssl")
2642 (version "1.03")
2643 (source
2644 (origin
2645 (method url-fetch)
21085261 2646 (uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/"
b1096f3d
EB
2647 "Net-SMTP-SSL-" version ".tar.gz"))
2648 (sha256
21085261
EF
2649 (base32
2650 "05y94mb1vdw32mvwb0cp2h4ggh32f8j8nwwfjb8kjwxvfkfhyp9h"))))
b1096f3d
EB
2651 (build-system perl-build-system)
2652 (propagated-inputs
2653 `(("perl-io-socket-ssl" ,perl-io-socket-ssl)))
2654 (home-page "http://search.cpan.org/dist/Net-SMTP-SSL")
2655 (synopsis "SSL support for Net::SMTP")
e881752c 2656 (description "SSL support for Net::SMTP.")
b1096f3d
EB
2657 (license (package-license perl))))
2658
5933549d
EB
2659(define-public perl-plack
2660 (package
2661 (name "perl-plack")
2662 (version "1.0033")
2663 (source
2664 (origin
2665 (method url-fetch)
2666 (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/"
2667 "Plack-" version ".tar.gz"))
2668 (sha256
2669 (base32
2670 "081jg0xddzpg2anmqi9i6d7vs6c8z7k557bf8xl6vgb3h95pin5w"))))
2671 (build-system perl-build-system)
2672 (native-inputs
2673 `(("perl-test-requires" ,perl-test-requires)
2674 ("perl-file-sharedir-install" ,perl-file-sharedir-install)))
2675 (propagated-inputs
2676 `(("perl-apache-logformat-compiler" ,perl-apache-logformat-compiler)
2677 ("perl-devel-stacktrace" ,perl-devel-stacktrace)
2678 ("perl-devel-stacktrace-ashtml" ,perl-devel-stacktrace-ashtml)
2679 ("perl-file-sharedir" ,perl-file-sharedir)
2680 ("perl-hash-multivalue" ,perl-hash-multivalue)
2681 ("perl-http-body" ,perl-http-body)
2682 ("perl-http-message" ,perl-http-message)
2683 ("perl-http-tiny" ,perl-http-tiny)
2684 ("perl-libwww" ,perl-libwww)
2685 ("perl-stream-buffered" ,perl-stream-buffered)
2686 ("perl-test-tcp" ,perl-test-tcp)
2687 ("perl-try-tiny" ,perl-try-tiny)
2688 ("perl-uri" ,perl-uri)))
2689 (home-page "http://search.cpan.org/dist/Plack")
2690 (synopsis "Perl Superglue for Web frameworks and servers (PSGI toolkit)")
2691 (description "Plack is a set of tools for using the PSGI stack. It
2692contains middleware components, a reference server, and utilities for Web
2693application frameworks. Plack is like Ruby's Rack or Python's Paste for
2694WSGI.")
2695 (license (package-license perl))))
2696
acd1f73a
EB
2697(define-public perl-plack-middleware-fixmissingbodyinredirect
2698 (package
2699 (name "perl-plack-middleware-fixmissingbodyinredirect")
2700 (version "0.12")
2701 (source
2702 (origin
2703 (method url-fetch)
2704 (uri (string-append "mirror://cpan/authors/id/S/SW/SWEETKID/"
2705 "Plack-Middleware-FixMissingBodyInRedirect-"
2706 version ".tar.gz"))
2707 (sha256
2708 (base32
2709 "14dkrmccq7a5vpymx5dv8032gfcvhsw2i6v5sh3c4ym5ymlx08kc"))))
2710 (build-system perl-build-system)
2711 (native-inputs
2712 `(("perl-html-parser" ,perl-html-parser) ;for HTML::Entities
2713 ("perl-http-message" ,perl-http-message)
2714 ("perl-plack" ,perl-plack))) ;for Plack::Test
2715 (home-page
2716 "http://search.cpan.org/dist/Plack-Middleware-FixMissingBodyInRedirect")
2717 (synopsis "Plack::Middleware which sets body for redirect response")
2718 (description "This module sets the body in redirect response, if it's not
2719already set.")
2720 (license (package-license perl))))
2721
03d874d0
EB
2722(define-public perl-plack-middleware-methodoverride
2723 (package
2724 (name "perl-plack-middleware-methodoverride")
2725 (version "0.11")
2726 (source
2727 (origin
2728 (method url-fetch)
2729 (uri (string-append "mirror://cpan/authors/id/D/DW/DWHEELER/"
2730 "Plack-Middleware-MethodOverride-"
2731 version ".tar.gz"))
2732 (sha256
2733 (base32
2734 "1hb8dx7i4vs74n0p737wrvpdnnw6argxrjpr6kj6432zabp8325z"))))
2735 (build-system perl-build-system)
a2190ccc
EB
2736 (native-inputs
2737 `(("perl-module-build" ,perl-module-build)))
03d874d0
EB
2738 (propagated-inputs
2739 `(("perl-plack" ,perl-plack)))
2740 (home-page "http://search.cpan.org/dist/Plack-Middleware-MethodOverride")
2741 (synopsis "Override REST methods to Plack apps via POST")
2742 (description "This middleware allows for POST requests that pretend to be
2743something else: by adding either a header named X-HTTP-Method-Override to the
2744request, or a query parameter named x-tunneled-method to the URI, the client
2745can say what method it actually meant.")
2746 (license (package-license perl))))
2747
13e330be
EB
2748(define-public perl-plack-middleware-removeredundantbody
2749 (package
2750 (name "perl-plack-middleware-removeredundantbody")
2751 (version "0.05")
2752 (source
2753 (origin
2754 (method url-fetch)
2755 (uri (string-append "mirror://cpan/authors/id/S/SW/SWEETKID/"
2756 "Plack-Middleware-RemoveRedundantBody-"
2757 version ".tar.gz"))
2758 (sha256
2759 (base32
2760 "1n3wm0zi8dnk54jx937asl951lslj3jvw0fry4jpzsibg4f6wrx0"))))
2761 (build-system perl-build-system)
2762 (propagated-inputs
2763 `(("perl-plack" ,perl-plack)))
2764 (home-page
2765 "http://search.cpan.org/dist/Plack-Middleware-RemoveRedundantBody")
2766 (synopsis "Plack::Middleware which removes body for HTTP response")
2767 (description "This module removes the body in an HTTP response if it's not
2768required.")
2769 (license (package-license perl))))
2770
ca157ba9
EB
2771(define-public perl-plack-middleware-reverseproxy
2772 (package
2773 (name "perl-plack-middleware-reverseproxy")
2774 (version "0.15")
2775 (source
2776 (origin
2777 (method url-fetch)
2778 (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/"
2779 "Plack-Middleware-ReverseProxy-"
2780 version ".tar.gz"))
2781 (sha256
2782 (base32
2783 "1zmsccdy6wr5hxzj07r1nsmaymyibk87p95z0wzknjw10lwmqs9f"))))
2784 (build-system perl-build-system)
2785 (propagated-inputs
2786 `(("perl-plack" ,perl-plack)))
2787 (home-page "http://search.cpan.org/dist/Plack-Middleware-ReverseProxy")
2788 (synopsis "Supports app to run as a reverse proxy backend")
2789 (description "Plack::Middleware::ReverseProxy resets some HTTP headers,
2790which are changed by reverse-proxy. You can specify the reverse proxy address
2791and stop fake requests using 'enable_if' directive in your app.psgi.")
2792 (license (package-license perl))))
2793
64b16bf7
EB
2794(define-public perl-plack-test-externalserver
2795 (package
2796 (name "perl-plack-test-externalserver")
2797 (version "0.01")
2798 (source
2799 (origin
2800 (method url-fetch)
2801 (uri (string-append "mirror://cpan/authors/id/F/FL/FLORA/"
2802 "Plack-Test-ExternalServer-" version ".tar.gz"))
2803 (sha256
2804 (base32
2805 "1dbg1p3rgvvbkkpvca5jlc2mzx8iqyiybk88al93pvbca65h1g7h"))))
2806 (build-system perl-build-system)
2807 (propagated-inputs
2808 `(("perl-plack" ,perl-plack)))
2809 (home-page "http://search.cpan.org/dist/Plack-Test-ExternalServer")
2810 (synopsis "Run HTTP tests on external live servers")
2811 (description "This module allows your to run your Plack::Test tests
2812against an external server instead of just against a local application through
2813either mocked HTTP or a locally spawned server.")
2814 (license (package-license perl))))
2815
bb8bfe5e
EB
2816(define-public perl-test-tcp
2817 (package
2818 (name "perl-test-tcp")
2819 (version "2.06")
2820 (source
2821 (origin
2822 (method url-fetch)
2823 (uri (string-append "mirror://cpan/authors/id/T/TO/TOKUHIROM/"
2824 "Test-TCP-" version ".tar.gz"))
2825 (sha256
2826 (base32
2827 "0acjwm21y2an4f3fasci9qa0isakh9cgp74fk0bzcdi506xmcjbi"))))
2828 (build-system perl-build-system)
2829 (propagated-inputs
2830 `(("perl-test-sharedfork" ,perl-test-sharedfork)))
2831 (arguments `(#:tests? #f)) ;related to signaling in t/05_sigint.t
2832 (home-page "http://search.cpan.org/dist/Test-TCP")
2833 (synopsis "Testing TCP programs")
2834 (description "Test::TCP is test utilities for TCP/IP programs.")
2835 (license (package-license perl))))
2836
0d991d2c
EB
2837(define-public perl-test-www-mechanize
2838 (package
2839 (name "perl-test-www-mechanize")
2840 (version "1.44")
2841 (source
2842 (origin
2843 (method url-fetch)
2844 (uri (string-append "mirror://cpan/authors/id/P/PE/PETDANCE/"
2845 "Test-WWW-Mechanize-" version ".tar.gz"))
2846 (sha256
2847 (base32
2848 "062pj242vsc73bw11jqpap92ax9wzc9f2m4xhyp1wzrwkfchpl2q"))))
2849 (build-system perl-build-system)
2850 (native-inputs
2851 `(("perl-test-exception" ,perl-test-exception)))
2852 (propagated-inputs
2853 `(("perl-carp-assert-more" ,perl-carp-assert-more)
2854 ("perl-html-form" ,perl-html-form)
2855 ("perl-html-lint" ,perl-html-lint)
2856 ("perl-html-tree" ,perl-html-tree)
2857 ("perl-http-server-simple" ,perl-http-server-simple)
2858 ("perl-libwww" ,perl-libwww)
2859 ("perl-test-longstring" ,perl-test-longstring)
2860 ("perl-www-mechanize" ,perl-www-mechanize)))
2861 (home-page "http://search.cpan.org/dist/Test-WWW-Mechanize")
2862 (synopsis "Testing-specific WWW::Mechanize subclass")
2863 (description "Test::WWW::Mechanize is a subclass of the Perl module
2864WWW::Mechanize that incorporates features for web application testing.")
2865 (license l:artistic2.0)))
2866
13b2552c
EB
2867(define-public perl-test-www-mechanize-catalyst
2868 (package
2869 (name "perl-test-www-mechanize-catalyst")
2870 (version "0.60")
2871 (source
2872 (origin
2873 (method url-fetch)
2874 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
2875 "Test-WWW-Mechanize-Catalyst-" version ".tar.gz"))
2876 (sha256
2877 (base32
2878 "0nhhfrrai3ndziz873vpa1j0vljjnib4wqafd6yyvkf58ad7v0lv"))))
2879 (build-system perl-build-system)
2880 (native-inputs
2881 `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
2882 ("perl-catalyst-plugin-session-state-cookie"
2883 ,perl-catalyst-plugin-session-state-cookie)
2884 ("perl-test-exception" ,perl-test-exception)
2885 ("perl-test-pod" ,perl-test-pod)
2886 ("perl-test-utf8" ,perl-test-utf8)))
2887 (propagated-inputs
2888 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
2889 ("perl-class-load" ,perl-class-load)
2890 ("perl-libwww" ,perl-libwww)
2891 ("perl-moose" ,perl-moose)
2892 ("perl-namespace-clean" ,perl-namespace-clean)
2893 ("perl-test-www-mechanize" ,perl-test-www-mechanize)
2894 ("perl-www-mechanize" ,perl-www-mechanize)))
2895 (home-page "http://search.cpan.org/dist/Test-WWW-Mechanize-Catalyst")
2896 (synopsis "Test::WWW::Mechanize for Catalyst")
2897 (description "The Test::WWW::Mechanize::Catalyst module meshes the
2898Test::WWW:Mechanize module and the Catalyst web application framework to allow
2899testing of Catalyst applications without needing to start up a web server.")
2900 (license (package-license perl))))
2901
715a0c51
EB
2902(define-public perl-test-www-mechanize-psgi
2903 (package
2904 (name "perl-test-www-mechanize-psgi")
2905 (version "0.35")
2906 (source
2907 (origin
2908 (method url-fetch)
2909 (uri (string-append "mirror://cpan/authors/id/L/LB/LBROCARD/"
2910 "Test-WWW-Mechanize-PSGI-" version ".tar.gz"))
2911 (sha256
2912 (base32
2913 "1hih8s49zf38bisvhnhzrrj0zwyiivkrbs7nmmdqm1qqy27wv7pc"))))
2914 (build-system perl-build-system)
2915 (native-inputs
2916 `(("perl-test-pod" ,perl-test-pod)))
2917 (propagated-inputs
2918 `(("perl-plack" ,perl-plack)
2919 ("perl-test-www-mechanize" ,perl-test-www-mechanize)))
2920 (home-page "http://search.cpan.org/dist/Test-WWW-Mechanize-PSGI")
2921 (synopsis "Test PSGI programs using WWW::Mechanize")
2922 (description "PSGI is a specification to decouple web server environments
2923from web application framework code. Test::WWW::Mechanize is a subclass of
2924WWW::Mechanize that incorporates features for web application testing. The
2925Test::WWW::Mechanize::PSGI module meshes the two to allow easy testing of PSGI
2926applications.")
2927 (license (package-license perl))))
2928
8142aff3 2929(define-public perl-uri
374a9a85 2930 (package
8142aff3 2931 (name "perl-uri")
01497dfe 2932 (version "1.71")
374a9a85
AE
2933 (source (origin
2934 (method url-fetch)
9acf97f2
EB
2935 (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
2936 "URI-" version ".tar.gz"))
374a9a85
AE
2937 (sha256
2938 (base32
01497dfe 2939 "05a1ck1bhvqkkk690xhsxf7276dnagk96qkh2jy4prrrgw6wm3lw"))))
374a9a85 2940 (build-system perl-build-system)
374a9a85 2941 (license (package-license perl))
8142aff3 2942 (synopsis "Perl Uniform Resource Identifiers (absolute and relative)")
374a9a85 2943 (description
8142aff3
EB
2944 "The URI module implements the URI class. Objects of this class
2945represent \"Uniform Resource Identifier references\" as specified in RFC 2396
2946and updated by RFC 2732.")
9acf97f2 2947 (home-page "http://search.cpan.org/dist/URI/")))
d22d72fc 2948
b51b2bf3 2949(define-public perl-uri-fetch
2950 (package
2951 (name "perl-uri-fetch")
2952 (version "0.13")
2953 (source (origin
2954 (method url-fetch)
2955 (uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/"
2956 "URI-Fetch-" version ".tar.gz"))
2957 (sha256
2958 (base32
2959 "0rw6xiqm70s218aii9id3hf8j3pz6n22xnwd8v9m1ff2bnh63c0d"))))
2960 (build-system perl-build-system)
2961 (arguments
2962 `(#:tests? #f)) ; Tests require internet connection to succeed
2963 (inputs
2964 `(("perl-class-errorhandler" ,perl-class-errorhandler)
2965 ("perl-libwww" ,perl-libwww)
2966 ("perl-uri" ,perl-uri)))
2967 (home-page "http://search.cpan.org/dist/URI-Fetch")
2968 (synopsis "Smart URI fetching/caching")
2969 (description "@code{URI::Fetch} is a smart client for fetching HTTP pages,
2970notably syndication feeds (RSS, Atom, and others), in an intelligent, bandwidth-
2971and time-saving way.")
2972 (license (package-license perl))))
2973
5bb82fd0
EB
2974(define-public perl-uri-find
2975 (package
2976 (name "perl-uri-find")
2977 (version "20140709")
2978 (source
2979 (origin
2980 (method url-fetch)
2981 (uri (string-append "mirror://cpan/authors/id/M/MS/MSCHWERN/"
2982 "URI-Find-" version ".tar.gz"))
2983 (sha256
2984 (base32
2985 "0czc4h182s7sx3k123m7qlg7yybnwxgh369hap3c3b6xgrglrhy0"))))
2986 (build-system perl-build-system)
a2190ccc
EB
2987 (native-inputs
2988 `(("perl-module-build" ,perl-module-build)))
5bb82fd0
EB
2989 (propagated-inputs
2990 `(("perl-uri" ,perl-uri)))
2991 (home-page "http://search.cpan.org/dist/URI-Find")
2992 (synopsis "Find URIs in arbitrary text")
2993 (description "This module finds URIs and URLs (according to what URI.pm
2994considers a URI) in plain text. It only finds URIs which include a
2995scheme (http:// or the like), for something a bit less strict, consider
2996URI::Find::Schemeless. For a command-line interface, urifind is provided.")
2997 (license (package-license perl))))
2998
36a100a1
EB
2999(define-public perl-uri-ws
3000 (package
3001 (name "perl-uri-ws")
3002 (version "0.03")
3003 (source
3004 (origin
3005 (method url-fetch)
3006 (uri (string-append "mirror://cpan/authors/id/P/PL/PLICEASE/"
3007 "URI-ws-" version ".tar.gz"))
3008 (sha256
3009 (base32
3010 "1vs1wm80sq685944g1l4a0fxcbccc00c0f9648yabdmcf90hwsvf"))))
3011 (build-system perl-build-system)
3012 (propagated-inputs
3013 `(("perl-uri" ,perl-uri)))
3014 (home-page "http://search.cpan.org/dist/URI-ws")
3015 (synopsis "WebSocket support for URI package")
3016 (description "With this module, the URI package provides the same set of
3017methods for WebSocket URIs as it does for HTTP URIs.")
3018 (license (package-license perl))))
3019
105d4ee2 3020(define-public perl-uri-template
3021 (package
3022 (name "perl-uri-template")
3023 (version "0.22")
3024 (source (origin
3025 (method url-fetch)
3026 (uri (string-append "mirror://cpan/authors/id/B/BR/BRICAS/URI-Template-"
3027 version ".tar.gz"))
3028 (sha256
3029 (base32
3030 "08kjjb4c0v9gqfrfnj1wkivylxl05finn11ra64dj136fhmnyrbg"))))
3031 (build-system perl-build-system)
3032 (inputs
3033 `(("perl-uri" ,perl-uri)))
3034 (native-inputs
3035 `(("perl-test-pod-coverage" ,perl-test-pod-coverage)
3036 ("perl-test-pod" ,perl-test-pod)
3037 ("perl-json" ,perl-json)))
3038 (home-page "http://search.cpan.org/dist/URI-Template")
3039 (synopsis "Object for handling URI templates")
3040 (description "This perl module provides a wrapper around URI templates as described in
3041RFC 6570.")
3042 (license (package-license perl))))
3043
d22d72fc
LC
3044(define-public perl-www-curl
3045 (package
3046 (name "perl-www-curl")
3047 (version "4.17")
3048 (source (origin
3049 (method url-fetch)
3050 (uri (string-append
3051 "mirror://cpan/authors/id/S/SZ/SZBALINT/WWW-Curl-"
3052 version".tar.gz"))
3053 (sha256
3054 (base32
3055 "1fmp9aib1kaps9vhs4dwxn7b15kgnlz9f714bxvqsd1j1q8spzsj"))))
3056 (build-system perl-build-system)
3057 (arguments
3058 '(#:tests? #f)) ;XXX: tests require network access
3059 (inputs `(("curl" ,curl)))
3060 (synopsis "Perl extension interface for libcurl")
3061 (description
3062 "This is a Perl extension interface for the libcurl file downloading
3063library.")
3064 (license (package-license perl))
3065 (home-page "http://search.cpan.org/~szbalint/WWW-Curl-4.17/lib/WWW/Curl.pm")))
3484d052 3066
0b1ed725
EB
3067(define-public perl-www-mechanize
3068 (package
3069 (name "perl-www-mechanize")
3070 (version "1.73")
3071 (source
3072 (origin
3073 (method url-fetch)
3074 (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
3075 "WWW-Mechanize-" version ".tar.gz"))
3076 (sha256
3077 (base32
3078 "1zrw8aadhwy48q51x2z2rqlkwf17bya4j4h3hy89mw783j96rmg9"))))
3079 (build-system perl-build-system)
a2190ccc
EB
3080 (native-inputs ;only for tests
3081 `(("perl-cgi" ,perl-cgi)))
0b1ed725
EB
3082 (propagated-inputs
3083 `(("perl-html-form" ,perl-html-form)
3084 ("perl-html-parser" ,perl-html-parser)
3085 ("perl-http-message" ,perl-http-message)
3086 ("perl-http-server-simple" ,perl-http-server-simple)
3087 ("perl-libwww" ,perl-libwww)
3088 ("perl-test-warn" ,perl-test-warn)
3089 ("perl-uri" ,perl-uri)))
3090 (home-page "http://search.cpan.org/dist/WWW-Mechanize")
3091 (synopsis "Web browsing in a Perl object")
3092 (description "WWW::Mechanize is a Perl module for stateful programmatic
3093web browsing, used for automating interaction with websites.")
3094 (license (package-license perl))))
3095
823c8292 3096(define-public perl-www-opensearch
3097 (package
3098 (name "perl-www-opensearch")
3099 (version "0.17")
3100 (source (origin
3101 (method url-fetch)
3102 (uri (string-append "mirror://cpan/authors/id/B/BR/BRICAS/"
3103 "WWW-OpenSearch-" version ".tar.gz"))
3104 (sha256
3105 (base32
3106 "1yxplx1q1qk2fvnzqrbk01lz26fy1lyhay51a3ky7q3jgh9p01rb"))))
3107 (build-system perl-build-system)
3108 (arguments
3109 `(#:tests? #f)) ; Tests require further modules to be packaged
3110 (inputs
3111 `(("perl-data-page" ,perl-data-page)
3112 ("perl-libwww" ,perl-libwww)
3113 ("perl-uri" ,perl-uri)
3114 ("perl-uri-template" ,perl-uri-template)
3115 ("perl-xml-feed" ,perl-xml-feed)
3116 ("perl-xml-libxml" ,perl-xml-libxml)))
3117 (home-page "http://search.cpan.org/dist/WWW-OpenSearch")
3118 (synopsis "Search A9 OpenSearch compatible engines")
3119 (description
3120 "@code{WWW::OpenSearch} is a module to search @url{A9's OpenSearch,
3121http://opensearch.a9.com} compatible search engines.")
3122 (license (package-license perl))))
3123
8142aff3 3124(define-public perl-www-robotrules
3484d052 3125 (package
8142aff3
EB
3126 (name "perl-www-robotrules")
3127 (version "6.02")
3484d052 3128 (source (origin
8142aff3
EB
3129 (method url-fetch)
3130 (uri (string-append
3131 "mirror://cpan/authors/id/G/GA/GAAS/WWW-RobotRules-"
3132 version ".tar.gz"))
3133 (sha256
3134 (base32
3135 "07m50dp5n5jxv3m93i55qvnd67a6g7cvbvlik115kmc8lbkh5da6"))))
3484d052 3136 (build-system perl-build-system)
8142aff3
EB
3137 (propagated-inputs
3138 `(("perl-uri" ,perl-uri)))
3484d052 3139 (license (package-license perl))
8142aff3 3140 (synopsis "Perl database of robots.txt-derived permissions")
5eb86b64 3141 (description
8142aff3
EB
3142 "The WWW::RobotRules module parses /robots.txt files as specified in
3143\"A Standard for Robot Exclusion\", at
3144<http://www.robotstxt.org/wc/norobots.html>. Webmasters can use the
3145/robots.txt file to forbid conforming robots from accessing parts of
3146their web site.")
3147 (home-page "http://search.cpan.org/~gaas/WWW-RobotRules/")))
a359c9c1
RW
3148
3149(define-public r-httpuv
3150 (package
3151 (name "r-httpuv")
3152 (version "1.3.3")
3153 (source (origin
3154 (method url-fetch)
3155 (uri (cran-uri "httpuv" version))
3156 (sha256
3157 (base32
3158 "0aibs0hf38n8f6xxx4g2i2lzd6l5h92m5pscx2z834sdvhnladxv"))))
3159 (build-system r-build-system)
3160 (native-inputs `(("r-rcpp" ,r-rcpp)))
3161 (home-page "https://github.com/rstudio/httpuv")
3162 (synopsis "HTTP and WebSocket server library for R")
3163 (description
3164 "The httpuv package provides low-level socket and protocol support for
3165handling HTTP and WebSocket requests directly from within R. It is primarily
3166intended as a building block for other packages, rather than making it
3167particularly easy to create complete web applications using httpuv alone.")
3168 ;; This package includes third-party code that was originally released
3169 ;; under various non-copyleft licenses. Full licensing information can be
3170 ;; obtained here: https://github.com/rstudio/httpuv/blob/master/LICENSE
3171 (license l:gpl3+)))
21d3770e
RW
3172
3173(define-public r-jsonlite
3174 (package
3175 (name "r-jsonlite")
4df0cb8d 3176 (version "1.0")
21d3770e
RW
3177 (source (origin
3178 (method url-fetch)
3179 (uri (cran-uri "jsonlite" version))
3180 (sha256
3181 (base32
4df0cb8d 3182 "0bcnzzycvwwkm0lv0ka9xf55z5c1795b7c2vhmf53z73cxixsmnp"))))
21d3770e
RW
3183 (build-system r-build-system)
3184 (home-page "http://arxiv.org/abs/1403.2805")
3185 (synopsis "Robust, high performance JSON parser and generator for R")
3186 (description
3187 "The jsonlite package provides a fast JSON parser and generator optimized
3188for statistical data and the web. It offers flexible, robust, high
3189performance tools for working with JSON in R and is particularly powerful for
3190building pipelines and interacting with a web API. In addition to converting
3191JSON data from/to R objects, jsonlite contains functions to stream, validate,
3192and prettify JSON data. The unit tests included with the package verify that
3193all edge cases are encoded and decoded consistently for use with dynamic data
3194in systems and applications.")
3195 (license l:expat)))
ea5616e0
RW
3196
3197(define-public r-servr
3198 (package
3199 (name "r-servr")
46a2d1b6 3200 (version "0.4")
ea5616e0
RW
3201 (source (origin
3202 (method url-fetch)
3203 (uri (cran-uri "servr" version))
3204 (sha256
3205 (base32
46a2d1b6 3206 "1fkqf5ynd1g0932qwv5nr70bw42m8vxpc9rhi0qxmdamwqcw8qjn"))))
ea5616e0
RW
3207 (build-system r-build-system)
3208 (propagated-inputs
3209 `(("r-httpuv" ,r-httpuv)
3210 ("r-jsonlite" ,r-jsonlite)
3211 ("r-mime" ,r-mime)))
3212 (native-inputs
3213 `(("r-rcpp" ,r-rcpp)))
3214 (home-page "https://github.com/yihui/servr")
3215 (synopsis "Simple HTTP server to serve static files or dynamic documents")
3216 (description
3217 "Servr provides an HTTP server in R to serve static files, or dynamic
3218documents that can be converted to HTML files (e.g., R Markdown) under a given
3219directory.")
3220 (license l:expat)))
f1a045e2
RW
3221
3222(define-public r-htmltools
3223 (package
3224 (name "r-htmltools")
e6f0ca2f 3225 (version "0.3.5")
f1a045e2
RW
3226 (source (origin
3227 (method url-fetch)
3228 (uri (cran-uri "htmltools" version))
3229 (sha256
3230 (base32
e6f0ca2f 3231 "0j9bf80grd6gwh7116m575pycv87c0wcwkxsz3gzzfs4aw3pxyr9"))))
f1a045e2 3232 (build-system r-build-system)
3f1c722e
RW
3233 (arguments
3234 `(#:phases
3235 (modify-phases %standard-phases
3236 ;; See https://github.com/rstudio/htmltools/pull/68
3237 ;; The resource files are in the store and have mode 444. After
3238 ;; copying the files R fails to remove them again because it doesn't
3239 ;; have write access to them.
3240 (add-after 'unpack 'copy-files-without-mode
3241 (lambda _
3242 (substitute* "R/html_dependency.R"
3243 (("file.copy\\(from, to, " prefix)
3244 (string-append prefix
3245 "copy.mode = FALSE, ")))
3246 #t)))))
f1a045e2 3247 (propagated-inputs
e6f0ca2f
RW
3248 `(("r-digest" ,r-digest)
3249 ("r-rcpp" ,r-rcpp)))
f1a045e2
RW
3250 (home-page "http://cran.r-project.org/web/packages/htmltools")
3251 (synopsis "R tools for HTML")
3252 (description
3253 "This package provides tools for HTML generation and output in R.")
3254 (license l:expat)))
b1006576
RW
3255
3256(define-public r-htmlwidgets
3257 (package
3258 (name "r-htmlwidgets")
cc1446ac 3259 (version "0.7")
b1006576
RW
3260 (source (origin
3261 (method url-fetch)
3262 (uri (cran-uri "htmlwidgets" version))
3263 (sha256
3264 (base32
cc1446ac 3265 "1xh8aiaci5hi3r67ym7r37hm89m9vzywk292avnmaj125kq7w1d0"))))
b1006576
RW
3266 (build-system r-build-system)
3267 (propagated-inputs
3268 `(("r-htmltools" ,r-htmltools)
3269 ("r-jsonlite" ,r-jsonlite)
3270 ("r-yaml" ,r-yaml)))
3271 (home-page "https://github.com/ramnathv/htmlwidgets")
3272 (synopsis "HTML Widgets for R")
3273 (description
3274 "HTML widgets is a framework for creating HTML widgets that render in
3275various contexts including the R console, R Markdown documents, and Shiny web
3276applications.")
3277 (license l:expat)))
5f4621de
RW
3278
3279(define-public r-curl
3280 (package
3281 (name "r-curl")
02a87536 3282 (version "1.2")
5f4621de
RW
3283 (source (origin
3284 (method url-fetch)
3285 (uri (cran-uri "curl" version))
3286 (sha256
3287 (base32
02a87536 3288 "04fwasg400v8dvkcn1fcha1jzdz8lbyxi0679q7flsyrp57b3jrf"))))
5f4621de
RW
3289 (build-system r-build-system)
3290 (inputs
3291 `(("libcurl" ,curl)))
3292 (home-page "https://github.com/jeroenooms/curl")
3293 (synopsis "HTTP client for R")
3294 (description
3295 "The @code{curl()} and @code{curl_download()} functions provide highly
3296configurable drop-in replacements for base @code{url()} and
3297@code{download.file()} with better performance, support for encryption, gzip
3298compression, authentication, and other @code{libcurl} goodies. The core of
3299the package implements a framework for performing fully customized requests
3300where data can be processed either in memory, on disk, or streaming via the
3301callback or connection interfaces.")
3302 (license l:expat)))
e1c63590
RW
3303
3304(define-public gumbo-parser
3305 (package
3306 (name "gumbo-parser")
3307 (version "0.10.1")
3308 (source (origin
3309 (method url-fetch)
3310 (uri (string-append "https://github.com/google/"
3311 "gumbo-parser/archive/v" version ".tar.gz"))
3312 (file-name (string-append name "-" version ".tar.gz"))
3313 (sha256
3314 (base32
3315 "1bgg2kbj311pqdzw2v33za7k66g1rv44kkvvnz2gnpaasi9k0ii8"))))
3316 (build-system gnu-build-system)
3317 (arguments
3318 `(#:tests? #f ; tests require bundling googletest sources
3319 #:phases
3320 (modify-phases %standard-phases
3321 (add-after 'unpack 'bootstrap
3322 (lambda _ (zero? (system* "sh" "autogen.sh")))))))
3323 ;; The release tarball lacks the generated files.
3324 (native-inputs
3325 `(("autoconf" ,autoconf)
3326 ("automake" ,automake)
3327 ("libtool" ,libtool)))
3328 (home-page "https://github.com/google/gumbo-parser")
3329 (synopsis "HTML5 parsing library")
3330 (description
3331 "Gumbo is an implementation of the HTML5 parsing algorithm implemented as
3332a pure C99 library.")
3333 (license l:asl2.0)))
67c2fc01
SB
3334
3335(define-public uwsgi
3336 (package
3337 (name "uwsgi")
3338 (version "2.0.12")
3339 (source (origin
3340 (method url-fetch)
3341 (uri (string-append "http://projects.unbit.it/downloads/uwsgi-"
3342 version ".tar.gz"))
3343 (sha256
3344 (base32
3345 "02g46dnw5j1iw8fsq392bxbk8d21b9pdgb3ypcinv3b4jzdm2srh"))))
3346 (build-system gnu-build-system)
3347 (outputs '("out" "python"))
3348 (arguments
3349 '(;; XXX: The 'check' target runs cppcheck to do static code analysis.
3350 ;; But there is no obvious way to run the real tests.
3351 #:tests? #f
3352 #:phases
3353 (modify-phases %standard-phases
3354 (replace 'configure
3355 ;; Configuration is done by writing an ini file.
3356 (lambda* (#:key outputs #:allow-other-keys)
3357 (let* ((out (assoc-ref outputs "out"))
3358 (bindir (string-append out "/bin"))
3359 (plugindir (string-append out "/lib/uwsgi")))
3360 ;; The build phase outputs files to these directories directly.
3361 (mkdir-p bindir)
3362 (mkdir-p plugindir)
3363 ;; XXX: Enable other plugins.
3364 (call-with-output-file "buildconf/guix.ini"
3365 (lambda (port)
3366 (format port "[uwsgi]
3367yaml = libyaml
3368bin_name = ~a/uwsgi
3369plugin_dir = ~a
3370
3371inherit = base
3372plugins = cgi,python
3373embedded_plugins =
3374" bindir plugindir))))
3375 (setenv "PROFILE" "guix")
3376 #t))
3377 (replace 'install
3378 ;; Move plugins into their own output.
3379 (lambda* (#:key outputs #:allow-other-keys)
3380 (let* ((out (assoc-ref outputs "out"))
3381 (plugindir (string-append out "/lib/uwsgi"))
3382 (python-plugin (string-append
3383 plugindir "/python_plugin.so")))
3384 (install-file python-plugin
3385 (string-append
3386 (assoc-ref outputs "python") "/lib/uwsgi"))
3387 (delete-file python-plugin)
3388 #t))))))
3389 (native-inputs
3390 `(("pkg-config" ,pkg-config)
3391 ("python" ,python-wrapper)))
3392 (inputs
3393 `(("jansson" ,jansson)
3394 ("libxml2" ,libxml2)
3395 ("libyaml" ,libyaml)
3396 ("openssl" ,openssl)
3397 ("pcre" ,pcre)
3398 ("zlib" ,zlib)
3399 ;; For plugins.
3400 ("python" ,python)))
3401 (home-page "https://uwsgi-docs.readthedocs.org/")
3402 (synopsis "Application container server")
3403 (description
3404 "uWSGI presents a complete stack for networked/clustered web applications,
3405implementing message/object passing, caching, RPC and process management.
3406It uses the uwsgi protocol for all the networking/interprocess communications.")
3407 (license l:gpl2+))) ; with linking exception
ec672946
JL
3408
3409(define-public jq
3410 (package
3411 (name "jq")
3412 (version "1.5")
3413 (source (origin
3414 (method url-fetch)
3415 (uri (string-append "https://github.com/stedolan/" name
3416 "/releases/download/" name "-" version
3417 "/" name "-" version ".tar.gz"))
3418 (sha256
3419 (base32
f2b4c18c
JL
3420 "0g29kyz4ykasdcrb0zmbrp2jqs9kv1wz9swx849i2d1ncknbzln4"))
3421 ;; This patch has been pushed and the vulnerability will be
3422 ;; fixed in the next release after 1.5.
3423 ;; https://github.com/stedolan/jq/issues/995
3424 (patches (search-patches "jq-CVE-2015-8863.patch"))))
ec672946
JL
3425 (inputs
3426 `(("oniguruma" ,oniguruma)))
3427 (native-inputs
3428 `(;; TODO fix gems to generate documentation
3429 ;;("ruby" ,ruby)
3430 ;;("bundler" ,bundler)
3431 ("valgrind" ,valgrind)))
3432 (build-system gnu-build-system)
3433 (home-page "http://stedolan.github.io/jq/")
3434 (synopsis "Command-line JSON processor")
3435 (description "jq is like sed for JSON data – you can use it to slice and
3436filter and map and transform structured data with the same ease that sed, awk,
3437grep and friends let you play with text. It is written in portable C. jq can
3438mangle the data format that you have into the one that you want with very
3439little effort, and the program to do so is often shorter and simpler than
3440you'd expect.")
3441 (license (list l:expat l:cc-by3.0))))
7ffbbea0
RS
3442
3443(define-public uhttpmock
3444 (package
3445 (name "uhttpmock")
3446 (version "0.5.0")
3447 (source
3448 (origin
3449 (method url-fetch)
3450 (uri (string-append "http://tecnocode.co.uk/downloads/uhttpmock/"
3451 name "-" version ".tar.xz"))
3452 (sha256
3453 (base32
3454 "0vniyx341pnnmvxmqacc49k0g7h9a9nhknfslidrqmxj5lm1ini6"))))
3455 (build-system glib-or-gtk-build-system)
3456 (arguments
3457 `(#:phases
3458 (modify-phases %standard-phases
3459 (add-before 'check 'use-empty-ssl-cert-file
3460 (lambda _
3461 ;; Search for ca-certificates.crt files
3462 ;; during the check phase.
3463 (setenv "SSL_CERT_FILE" "/dev/null")
3464 #t)))))
3465 (native-inputs
3466 `(("gobject-introspection" ,gobject-introspection)
3467 ;; For check phase.
3468 ("glib-networking" ,glib-networking)
3469 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3470 ("pkg-config" ,pkg-config)))
3471 (inputs
3472 `(("libsoup" ,libsoup)))
3473 (home-page "https://gitlab.com/groups/uhttpmock")
3474 (synopsis "Library for mocking web service APIs which use HTTP or HTTPS")
3475 (description
3476 "Uhttpmock is a project for mocking web service APIs which use HTTP or
3477HTTPS. It provides a library, libuhttpmock, which implements recording and
3478playback of HTTP request/response traces.")
3479 (license l:lgpl2.1+)))
0ee23de9
CL
3480
3481(define-public woof
3482 (package
3483 (name "woof")
3484 (version "2012-05-31")
3485 (source (origin
3486 (method url-fetch)
3487 (uri (string-append
3488 "http://www.home.unix-ag.org/simon/woof-"
3489 version ".py"))
3490 (sha256
3491 (base32
3492 "0wjmjhpg6xlid33yi59j47q2qadz20sijrqsjahj30vngz856hyq"))))
3493 (build-system trivial-build-system)
3494 (arguments
3495 '(#:modules ((guix build utils))
3496 #:builder
3497 (begin
3498 (use-modules (guix build utils))
3499 (let* ((source (assoc-ref %build-inputs "source"))
3500 (out (assoc-ref %outputs "out"))
3501 (bin (string-append out "/bin"))
3502 (python (assoc-ref %build-inputs "python")))
3503 (mkdir-p bin)
3504 (with-directory-excursion bin
3505 (copy-file source "woof")
3506 (patch-shebang "woof" (list (string-append python "/bin")))
3507 (chmod "woof" #o555))
3508 #t))))
3509 (inputs `(("python" ,python-2)))
3510 (home-page "http://www.home.unix-ag.org/simon/woof.html")
3511 (synopsis "Single file web server")
3512 (description "Woof (Web Offer One File) is a small simple web server that
3513can easily be invoked on a single file. Your partner can access the file with
3514tools they trust (e.g. wget).")
3515 (license l:gpl2+)))
22df7001
EB
3516
3517(define-public netsurf
3518 (package
3519 (name "netsurf")
3520 (version "3.5")
3521 (source
3522 (origin
3523 (method url-fetch)
3524 (uri (string-append "https://download.netsurf-browser.org/"
3525 "netsurf/releases/source-full/netsurf-all-"
3526 version ".tar.gz"))
3527 (sha256
3528 (base32
3529 "1vdldzcv42wykajmw8vbql0f1yd44gbx30kywfrrh2x3064ly609"))
3530 (modules '((guix build utils)))
3531 (snippet
3532 '(begin
3533 (substitute* "Makefile"
3534 ;; Do not clobber PKG_CONFIG_PATH from the environment
3535 (("PKG_CONFIG_PATH = \\$")
3536 "PKG_CONFIG_PATH := $(PKG_CONFIG_PATH):$")
3537 ;; Honor make variables
3538 (("shell cc") "shell $(CC)"))))
3539 (patches (search-patches "netsurf-about.patch"))))
3540 (build-system glib-or-gtk-build-system)
3541 (native-inputs
3542 `(("pkg-config" ,pkg-config)
3543 ("perl" ,perl)
3544 ("perl-html-parser" ,perl-html-parser)
3545 ("flex" ,flex)
3546 ("bison" ,bison)))
3547 (inputs
3548 `(("gtk+" ,gtk+-2)
3549 ("gperf" ,gperf)
3550 ("curl" ,curl)
3551 ("openssl" ,openssl)
3552 ("libpng" ,libpng)
3553 ("libjpeg" ,libjpeg)
3554 ("expat" ,expat)))
3555 (arguments
3556 `(#:make-flags `("CC=gcc" "BUILD_CC=gcc"
3557 ,(string-append "PREFIX=" %output))
3558 #:parallel-build? #f ;parallel builds not supported
3559 #:tests? #f ;no way to easily run from release tarball
3560 #:modules ((ice-9 rdelim)
3561 (ice-9 match)
3562 (srfi srfi-1)
3563 (sxml simple)
3564 ,@%glib-or-gtk-build-system-modules)
3565 #:phases
3566 (modify-phases %standard-phases
3567 (replace 'configure
3568 (lambda _
3569 (call-with-output-file "netsurf/Makefile.config"
3570 (lambda (port)
3571 (format port "~
3572 NETSURF_GTK_RESOURCES := $(PREFIX)/share/netsurf/~@
3573 ")))
3574 #t))
3575 (add-after 'build 'adjust-welcome
3576 (lambda _
3577 ;; First, fix some unended tags and simple substitutions
3578 (substitute* "netsurf/gtk/res/welcome.html"
3579 (("<(img|input)([^>]*)>" _ tag contents)
3580 (string-append "<" tag contents " />"))
3581 (("Licence") "License") ;prefer GNU spelling
3582 ((" open source") ", free software")
3583 (("web&nbsp;site") "website")
3584 ;; Prefer privacy-respecting default search engine
3585 (("www.google.co.uk") "www.duckduckgo.com/html")
3586 (("Google Search") "DuckDuckGo Search")
3587 (("name=\"btnG\"") ""))
3588 ;; Remove default links so it doesn't seem we're endorsing them
3589 (with-atomic-file-replacement "netsurf/gtk/res/welcome.html"
3590 (lambda (in out)
3591 ;; Leave the DOCTYPE header as is
3592 (display (read-line in 'concat) out)
3593 (sxml->xml
3594 (let rec ((sxml (xml->sxml in)))
3595 ;; We'd like to use sxml-match here, but it can't
3596 ;; match against generic tag symbols...
3597 (match sxml
3598 (`(div (@ (class "links")) . ,rest)
3599 '())
3600 ((x ...)
3601 (map rec x))
3602 (x x)))
3603 out)))
3604 #t))
3605 (add-after 'install 'install-more
3606 (lambda* (#:key outputs #:allow-other-keys)
3607 (let* ((out (assoc-ref outputs "out"))
3608 (desktop (string-append out "/share/applications/"
3609 "netsurf.desktop")))
3610 (mkdir-p (dirname desktop))
3611 (copy-file "netsurf/gtk/res/netsurf-gtk.desktop"
3612 desktop)
3613 (substitute* desktop
3614 (("netsurf-gtk") (string-append out "/bin/netsurf"))
3615 (("netsurf.png") (string-append out "/share/netsurf/"
3616 "netsurf.xpm")))
3617 (install-file "netsurf/Docs/netsurf-gtk.1"
3618 (string-append out "/share/man/man1/"))
3619 #t))))))
3620 (home-page "https://www.netsurf-browser.org")
3621 (synopsis "Web browser")
3622 (description
3623 "NetSurf is a lightweight web browser that has its own layout and
3624rendering engine entirely written from scratch. It is small and capable of
3625handling many of the web standards in use today.")
3626 (license l:gpl2+)))
e56e5b12 3627
3628(define-public surfraw
3629 (package
3630 (name "surfraw")
3631 (version "2.2.9")
3632 (source (origin
3633 (method url-fetch)
3634 (uri (string-append "https://surfraw.alioth.debian.org/dist/"
3635 name "-" version ".tar.gz"))
3636 (sha256
3637 (base32
3638 "1fy4ph5h9kp0jzj1m6pfylxnnmgdk0mmdppw76z9jhna4jndk5xa"))))
3639 (build-system gnu-build-system)
3640 (inputs
3641 `(("perl" ,perl)
3642 ("perl-www-opensearch" ,perl-www-opensearch)
3643 ("perl-html-parser" ,perl-html-parser)
3644 ("perl-libwww" ,perl-libwww)))
3645 (synopsis "Unix command line interface to the www")
3646 (description "Surfraw (Shell Users' Revolutionary Front Rage Against the Web)
3647provides a unix command line interface to a variety of popular www search engines
3648and similar services.")
3649 (home-page "https://surfraw.alioth.debian.org/")
3650 (license l:public-domain)))
797a5cf5
AI
3651
3652(define-public darkhttpd
3653 (package
3654 (name "darkhttpd")
3655 (version "1.12")
3656 (source
3657 (origin
3658 ;; The darkhttpd release tarball URL fails to download with a
3659 ;; 'TLS warning alert'. Download from the darkhttpd git repo
3660 ;; until the problem has been fixed upstream.
3661 (method git-fetch)
3662 (uri (git-reference
3663 (url (string-append "https://unix4lyfe.org/git/darkhttpd"))
3664 (commit "41b68476c35270f47dcd2ddebe27cbcd87e43d41")))
3665 (sha256
3666 (base32
3667 "0wi8dfgj4ic0fsy4dszl69xgxdxlwxz4c30vsw2i2dpnczgjm04k"))
3668 (file-name (string-append name "-" version "-checkout"))))
3669 (build-system gnu-build-system)
3670 (arguments
3671 `(#:make-flags '("CC=gcc")
3672 #:tests? #f ; No test suite
3673 #:phases
3674 (modify-phases %standard-phases
3675 (delete 'configure)
3676 (replace 'install
3677 (lambda* (#:key outputs #:allow-other-keys)
3678 (install-file "darkhttpd"
3679 (string-append (assoc-ref outputs "out")
3680 "/bin"))
3681 #t)))))
3682 (synopsis "Simple static web server")
3683 (description "darkhttpd is a simple static web server. It is
3684standalone and does not need inetd or ucspi-tcp. It does not need any
3685config files---you only have to specify the www root.")
3686 (home-page "https://unix4lyfe.org/darkhttpd/")
3687 (license l:isc)))