gnu: curl: Disable test that fails on Hydra.
[jackhill/guix/guix.git] / gnu / packages / web.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
3 ;;; Copyright © 2013 Aljosha Papsch <misc@rpapsch.de>
4 ;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
5 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
6 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
7 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
8 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
9 ;;;
10 ;;; This file is part of GNU Guix.
11 ;;;
12 ;;; GNU Guix is free software; you can redistribute it and/or modify it
13 ;;; under the terms of the GNU General Public License as published by
14 ;;; the Free Software Foundation; either version 3 of the License, or (at
15 ;;; your option) any later version.
16 ;;;
17 ;;; GNU Guix is distributed in the hope that it will be useful, but
18 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
19 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 ;;; GNU General Public License for more details.
21 ;;;
22 ;;; You should have received a copy of the GNU General Public License
23 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
24
25 (define-module (gnu packages web)
26 #:use-module (ice-9 match)
27 #:use-module ((guix licenses) #:prefix l:)
28 #:use-module (guix packages)
29 #:use-module (guix download)
30 #:use-module (guix git-download)
31 #:use-module (guix cvs-download)
32 #:use-module (guix build-system gnu)
33 #:use-module (guix build-system perl)
34 #:use-module (guix build-system cmake)
35 #:use-module (gnu packages)
36 #:use-module (gnu packages apr)
37 #:use-module (gnu packages asciidoc)
38 #:use-module (gnu packages docbook)
39 #:use-module (gnu packages autotools)
40 #:use-module (gnu packages compression)
41 #:use-module (gnu packages cyrus-sasl)
42 #:use-module (gnu packages databases)
43 #:use-module (gnu packages openssl)
44 #:use-module (gnu packages gd)
45 #:use-module (gnu packages gettext)
46 #:use-module (gnu packages icu4c)
47 #:use-module (gnu packages lua)
48 #:use-module (gnu packages base)
49 #:use-module (gnu packages python)
50 #:use-module (gnu packages pcre)
51 #:use-module (gnu packages pkg-config)
52 #:use-module (gnu packages xml)
53 #:use-module (gnu packages curl)
54 #:use-module (gnu packages perl)
55 #:use-module (gnu packages texinfo))
56
57 (define-public httpd
58 (package
59 (name "httpd")
60 (version "2.4.12")
61 (source (origin
62 (method url-fetch)
63 (uri (string-append "mirror://apache/httpd/httpd-"
64 version ".tar.bz2"))
65 (sha256
66 (base32
67 "1r7a63ka41vlswrqbb21vall6sc7svwgd497kb6dh8a6zvnkjvdd"))))
68 (build-system gnu-build-system)
69 (inputs `(("apr" ,apr)
70 ("apr-util" ,apr-util)
71 ("openssl" ,openssl)
72 ("pcre" ,pcre)
73 ("perl" ,perl))) ; needed to run bin/apxs
74 (arguments
75 `(#:test-target "test"
76 #:configure-flags (list "--enable-rewrite"
77 "--enable-userdir"
78 "--enable-vhost-alias"
79 "--enable-ssl"
80 "--enable-mime-magic"
81 (string-append "--sysconfdir="
82 (assoc-ref %outputs "out")
83 "/etc/httpd"))))
84 (synopsis "Featureful HTTP server")
85 (description
86 "The Apache HTTP Server Project is a collaborative software development
87 effort aimed at creating a robust, commercial-grade, featureful, and
88 freely-available source code implementation of an HTTP (Web) server. The
89 project is jointly managed by a group of volunteers located around the world,
90 using the Internet and the Web to communicate, plan, and develop the server
91 and its related documentation.")
92 (license l:asl2.0)
93 (home-page "https://httpd.apache.org/")))
94
95 (define-public nginx
96 (package
97 (name "nginx")
98 (version "1.8.0")
99 (source (origin
100 (method url-fetch)
101 (uri (string-append "http://nginx.org/download/nginx-"
102 version ".tar.gz"))
103 (sha256
104 (base32
105 "1mgkkmmwkhmpn68sdvbd73ssv6lpqhh864fsyvc1ij4hk4is3k13"))))
106 (build-system gnu-build-system)
107 (inputs `(("pcre" ,pcre)
108 ("openssl" ,openssl)
109 ("zlib" ,zlib)))
110 (arguments
111 `(#:tests? #f ; no test target
112 #:phases
113 (modify-phases %standard-phases
114 (add-before 'configure 'patch-/bin/sh
115 (lambda _
116 (substitute* "auto/feature"
117 (("/bin/sh") (which "bash")))))
118 (replace 'configure
119 (lambda* (#:key outputs #:allow-other-keys)
120 (let ((flags
121 (list (string-append "--prefix=" (assoc-ref outputs "out"))
122 "--with-http_ssl_module"
123 "--with-pcre-jit"
124 "--with-ipv6"
125 "--with-debug"
126 ;; Even when not cross-building, we pass the
127 ;; --crossbuild option to avoid customizing for the
128 ;; kernel version on the build machine.
129 ,(let ((system "Linux") ; uname -s
130 (release "2.6.32") ; uname -r
131 ;; uname -m
132 (machine (match (or (%current-target-system)
133 (%current-system))
134 ("x86_64-linux" "x86_64")
135 ("i686-linux" "i686")
136 ("mips64el-linux" "mips64")
137 ;; Prevent errors when querying
138 ;; this package on unsupported
139 ;; platforms, e.g. when running
140 ;; "guix package --search="
141 (_ "UNSUPPORTED"))))
142 (string-append "--crossbuild="
143 system ":" release ":" machine)))))
144 (setenv "CC" "gcc")
145 (format #t "environment variable `CC' set to `gcc'~%")
146 (format #t "configure flags: ~s~%" flags)
147 (zero? (apply system* "./configure" flags)))))
148 (add-after 'install 'fix-root-dirs
149 (lambda* (#:key outputs #:allow-other-keys)
150 ;; 'make install' puts things in strange places, so we need to
151 ;; clean it up ourselves.
152 (let* ((out (assoc-ref outputs "out"))
153 (share (string-append out "/share/nginx")))
154 ;; This directory is empty, so get rid of it.
155 (rmdir (string-append out "/logs"))
156 ;; Example configuration and HTML files belong in
157 ;; /share.
158 (mkdir-p share)
159 (rename-file (string-append out "/conf")
160 (string-append share "/conf"))
161 (rename-file (string-append out "/html")
162 (string-append share "/html"))))))))
163 (home-page "http://nginx.org")
164 (synopsis "HTTP and reverse proxy server")
165 (description
166 "Nginx (\"engine X\") is a high-performance web and reverse proxy server
167 created by Igor Sysoev. It can be used both as a standalone web server
168 and as a proxy to reduce the load on back-end HTTP or mail servers.")
169 ;; Almost all of nginx is distributed under the bsd-2 license.
170 ;; The exceptions are:
171 ;; * The 'nginx-http-push' module is covered by the expat license.
172 ;; * The 'nginx-development-kit' module is mostly covered by bsd-3,
173 ;; except for two source files which are bsd-4 licensed.
174 (license (list l:bsd-2 l:expat l:bsd-3 l:bsd-4))))
175
176 (define-public starman
177 (package
178 (name "starman")
179 (version "0.4011")
180 (source
181 (origin
182 (method url-fetch)
183 (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/"
184 "Starman-" version ".tar.gz"))
185 (sha256
186 (base32
187 "1337zhi6v1sg4gd9rs3giybc7g1ysw8ak2da0vy098k4dacxyb57"))))
188 (build-system perl-build-system)
189 (native-inputs
190 `(("perl-libwww" ,perl-libwww)
191 ("perl-module-build-tiny" ,perl-module-build-tiny)
192 ("perl-test-requires" ,perl-test-requires)))
193 (propagated-inputs
194 `(("perl-data-dump" ,perl-data-dump)
195 ("perl-http-date" ,perl-http-date)
196 ("perl-http-message" ,perl-http-message)
197 ("perl-http-parser-xs" ,perl-http-parser-xs)
198 ("perl-net-server" ,perl-net-server)
199 ("perl-plack" ,perl-plack)
200 ("perl-test-tcp" ,perl-test-tcp)))
201 (home-page "http://search.cpan.org/dist/Starman")
202 (synopsis "PSGI/Plack web server")
203 (description "Starman is a PSGI perl web server that has unique features
204 such as high performance, preforking, signal support, superdaemon awareness,
205 and UNIX socket support.")
206 (license (package-license perl))))
207
208 (define-public jansson
209 (package
210 (name "jansson")
211 (version "2.7")
212 (source (origin
213 (method url-fetch)
214 (uri
215 (string-append "http://www.digip.org/jansson/releases/jansson-"
216 version ".tar.gz"))
217 (sha256
218 (base32
219 "1mvq9p85khsl818i4vbszyfab0fd45mdrwrxjkzw05mk1xcyc1br"))))
220 (build-system gnu-build-system)
221 (home-page "http://www.digip.org/jansson/")
222 (synopsis "JSON C library")
223 (description
224 "Jansson is a C library for encoding, decoding and manipulating JSON
225 data.")
226 (license l:expat)))
227
228 (define-public json-c
229 (package
230 (name "json-c")
231 (version "0.12")
232 (source (origin
233 (method url-fetch)
234 (uri (string-append "https://s3.amazonaws.com/json-c_releases/releases/json-c-"
235 version ".tar.gz"))
236 (sha256
237 (base32
238 "0gwzic3ifg2d0w32ya3agpxh8i083cgvf7kmc51cnbgqnfr02300"))
239 (modules '((guix build utils)))
240 (snippet
241 '(begin
242 ;; Somehow 'config.h.in' is older than
243 ;; 'aclocal.m4', which would trigger a rule to
244 ;; run 'autoheader'.
245 (set-file-time "config.h.in"
246 (stat "aclocal.m4"))
247
248 ;; Don't try to build with -Werror.
249 (substitute* (find-files "." "Makefile\\.in")
250 (("-Werror") ""))))))
251 (build-system gnu-build-system)
252 (arguments '(#:parallel-build? #f
253 #:parallel-tests? #f))
254 (home-page "https://github.com/json-c/json-c/wiki")
255 (synopsis "JSON implementation in C")
256 (description
257 "JSON-C implements a reference counting object model that allows you to
258 easily construct JSON objects in C, output them as JSON formatted strings and
259 parse JSON formatted strings back into the C representation of JSON objects.")
260 (license l:x11)))
261
262 (define-public rapidjson
263 (package
264 (name "rapidjson")
265 (version "1.0.2")
266 (source (origin
267 (method url-fetch)
268 (uri (string-append
269 "https://github.com/miloyip/rapidjson/archive/v"
270 version ".tar.gz"))
271 (file-name (string-append name "-" version ".tar.gz"))
272 (sha256
273 (base32
274 "0rl6s0vg5y1dhh9vfl1lqay3sxf69sxjh0czxrjmasn7ng91wwf3"))))
275 (build-system cmake-build-system)
276 (home-page "https://github.com/miloyip/rapidjson")
277 (synopsis "JSON parser/generator for C++ with both SAX/DOM style API")
278 (description
279 "RapidJSON is a fast JSON parser/generator for C++ with both SAX/DOM
280 style API.")
281 (license l:expat)))
282
283 (define-public libwebsockets
284 (package
285 (name "libwebsockets")
286 (version "1.3")
287 (source (origin
288 ;; The project does not publish tarballs, so we have to take
289 ;; things from Git.
290 (method git-fetch)
291 (uri (git-reference
292 (url "git://git.libwebsockets.org/libwebsockets")
293 (commit (string-append "v" version
294 "-chrome37-firefox30"))))
295 (sha256
296 (base32
297 "12fqh2d2098mgf0ls19p9lzibpsqhv7mc5rn1yvrbfnazmcr40g4"))
298 (file-name (string-append name "-" version))))
299
300 (build-system cmake-build-system)
301 (arguments
302 ;; XXX: The thing lacks a 'make test' target, because CMakeLists.txt
303 ;; doesn't use 'add_test', and it's unclear how to run the test suite.
304 '(#:tests? #f))
305
306 (native-inputs `(("perl" ,perl))) ; to build the HTML doc
307 (inputs `(("zlib" ,zlib)
308 ("openssl" ,openssl)))
309 (synopsis "WebSockets library written in C")
310 (description
311 "Libwebsockets is a library that allows C programs to establish client
312 and server WebSockets connections---a protocol layered above HTTP that allows
313 for efficient socket-like bidirectional reliable communication channels.")
314 (home-page "http://libwebsockets.org/")
315
316 ;; This is LGPLv2.1-only with extra exceptions specified in 'LICENSE'.
317 (license l:lgpl2.1)))
318
319 (define-public libpsl
320 (package
321 (name "libpsl")
322 (version "0.6.0")
323 (source (origin
324 (method url-fetch)
325 (uri (string-append "https://github.com/rockdaboot/libpsl/"
326 "archive/" version ".tar.gz"))
327 (sha256
328 (base32
329 "10s7xxxx6pp4ydp3san69sa6q379ih3pv92fyi565ggmlw8igv7a"))
330 (file-name (string-append name "-" version ".tar.gz"))
331 (modules '((guix build utils)))
332 (snippet
333 ;; Believe it or not, the .pc is invalid. Fix it.
334 '(substitute* "libpsl.pc.in"
335 (("-llibpsl") "-lpsl")))))
336 (build-system gnu-build-system)
337 (inputs `(("icu4c" ,icu4c)))
338 ;; The release tarball lacks the generated files.
339 (native-inputs `(("autoconf" ,autoconf)
340 ("automake" ,automake)
341 ("gettext" ,gnu-gettext)
342 ("which" ,which)
343 ("libtool" ,libtool)))
344 (arguments
345 `(#:phases (alist-cons-after
346 'unpack 'bootstrap
347 (lambda _
348 (zero? (system* "sh" "autogen.sh")))
349 %standard-phases)))
350 (home-page "https://github.com/rockdaboot/libpsl")
351 (synopsis "C library for the Publix Suffix List")
352 (description
353 "A \"public suffix\" is a domain name under which Internet users can
354 directly register own names.
355
356 Browsers and other web clients can use it to avoid privacy-leaking
357 \"supercookies\", avoid privacy-leaking \"super domain\" certificates, domain
358 highlighting parts of the domain in a user interface, and sorting domain lists
359 by site.
360
361 Libpsl has built-in PSL data for fast access, allows to load PSL data from
362 files, checks if a given domain is a public suffix, provides immediate cookie
363 domain verification, finds the longest public part of a given domain, finds
364 the shortest private part of a given domain, works with international
365 domains (UTF-8 and IDNA2008 Punycode), is thread-safe, and handles IDNA2008
366 UTS#46")
367 (license l:x11)))
368
369 (define-public tidy
370 (package
371 (name "tidy")
372 (version "20091223")
373 (source (origin
374 (method cvs-fetch)
375 (uri (cvs-reference
376 (root-directory
377 ":pserver:anonymous@tidy.cvs.sourceforge.net:/cvsroot/tidy")
378 (module "tidy")
379 (revision "2009-12-23")))
380 (sha256
381 (base32
382 "14dsnmirjcrvwsffqp3as70qr6bbfaig2fv3zvs5g7005jrsbvpb"))))
383 (build-system gnu-build-system)
384 (arguments
385 '(#:phases (alist-cons-after
386 'unpack 'bootstrap
387 (lambda* (#:key inputs #:allow-other-keys)
388 ;; configure.in and Makefile.am aren't in the root of the
389 ;; source tree.
390 (copy-recursively "build/gnuauto" ".")
391 (setenv "AUTOMAKE" "automake --foreign")
392 (zero? (system* "autoreconf" "-vfi")))
393 %standard-phases)))
394 (native-inputs
395 `(("automake" ,automake)
396 ("autoconf" ,autoconf)
397 ("libtool" ,libtool)))
398 (synopsis "HTML validator and tidier")
399 (description "HTML Tidy is a command-line tool and C library that can be
400 used to validate and fix HTML data.")
401 (home-page "http://tidy.sourceforge.net/")
402 (license (l:x11-style "file:///include/tidy.h"))))
403
404 (define-public tinyproxy
405 (package
406 (name "tinyproxy")
407 (version "1.8.3")
408 (source (origin
409 (method url-fetch)
410 (uri (string-append
411 "http://www.samba.org/~obnox/" name "/download/"
412 name "-" version ".tar.bz2"))
413 (sha256
414 (base32
415 "0vl9igw7vm924rs6d6bkib7zfclxnlf9s8rmml1sfwj7xda9nmdy"))))
416 (build-system gnu-build-system)
417 (arguments
418 `(#:configure-flags
419 (list
420 ;; For the log file, etc.
421 "--localstatedir=/var")
422 #:phases
423 (alist-cons-before
424 'build 'pre-build
425 (lambda* (#:key inputs #:allow-other-keys #:rest args)
426 ;; Uncommenting the next two lines may assist in debugging
427 ;; (substitute* "docs/man5/Makefile" (("a2x") "a2x -v"))
428 ;; (setenv "XML_DEBUG_CATALOG" "1")
429 #t)
430 %standard-phases)))
431 ;; All of the below are used to generate the documentation
432 ;; (Should they be propagated inputs of asciidoc ??)
433 (native-inputs `(("asciidoc" ,asciidoc)
434 ("libxml2" ,libxml2)
435 ("docbook-xml" ,docbook-xml)
436 ("docbook-xsl" ,docbook-xsl)
437 ("libxslt" ,libxslt)))
438 (home-page "https://banu.com/tinyproxy/")
439 (synopsis "Light-weight HTTP/HTTPS proxy daemon")
440 (description "Tinyproxy is a light-weight HTTP/HTTPS proxy
441 daemon. Designed from the ground up to be fast and yet small, it is an ideal
442 solution for use cases such as embedded deployments where a full featured HTTP
443 proxy is required, but the system resources for a larger proxy are
444 unavailable.")
445 (license l:gpl2+)))
446
447 (define-public polipo
448 (package
449 (name "polipo")
450 (version "1.1.1")
451 (source
452 (origin
453 (method url-fetch)
454 (uri (string-append
455 "http://www.pps.univ-paris-diderot.fr/~jch/software/files/polipo/polipo-"
456 version ".tar.gz"))
457 (sha256
458 (base32
459 "05g09sg9qkkhnc2mxldm1w1xkxzs2ylybkjzs28w8ydbjc3pand2"))))
460 (native-inputs `(("texinfo" ,texinfo)))
461 (build-system gnu-build-system)
462 (arguments
463 `(#:phases
464 (alist-delete 'configure %standard-phases)
465 #:make-flags (let ((out (assoc-ref %outputs "out")))
466 (list (string-append "PREFIX=" out)
467 (string-append "LOCAL_ROOT="
468 out "/share/polipo/www")
469 "CC=gcc"))
470 ;; No 'check' target.
471 #:tests? #f))
472 (home-page "http://www.pps.univ-paris-diderot.fr/~jch/software/polipo/")
473 (synopsis "Small caching web proxy")
474 (description
475 "Polipo is a small caching web proxy (web cache, HTTP proxy, and proxy
476 server). It was primarily designed to be used by one person or a small group
477 of people.")
478 (license l:expat)))
479
480 (define-public libyaml
481 (package
482 (name "libyaml")
483 (version "0.1.5")
484 (source
485 (origin
486 (method url-fetch)
487 (uri (string-append
488 "http://pyyaml.org/download/libyaml/yaml-"
489 version ".tar.gz"))
490 (sha256
491 (base32
492 "1vrv5ly58bkmcyc049ad180f2m8iav6l9h3v8l2fqdmrny7yx1zs"))))
493 (build-system gnu-build-system)
494 (home-page "http://pyyaml.org/wiki/LibYAML")
495 (synopsis "YAML 1.1 parser and emitter written in C")
496 (description
497 "LibYAML is a YAML 1.1 parser and emitter written in C.")
498 (license l:expat)))
499
500 (define-public libquvi-scripts
501 (package
502 (name "libquvi-scripts")
503 (version "0.4.21")
504 (source
505 (origin
506 (method url-fetch)
507 (uri (string-append
508 "mirror://sourceforge/quvi/libquvi-scripts-" version ".tar.xz"))
509 (sha256
510 (base32 "0d0giry6bb57pnidymvdl7i5x9bq3ljk3g4bs294hcr5mj3cq0kw"))))
511 (build-system gnu-build-system)
512 (home-page "http://quvi.sourceforge.net/")
513 (synopsis "Media stream URL parser")
514 (description "This package contains support scripts called by libquvi to
515 parse media stream properties.")
516 (license l:lgpl2.1+)))
517
518 (define-public libquvi
519 (package
520 (name "libquvi")
521 (version "0.4.1")
522 (source
523 (origin
524 (method url-fetch)
525 (uri (string-append
526 "mirror://sourceforge/quvi/libquvi-" version ".tar.xz"))
527 (sha256
528 (base32 "00x9gbmzc5cns0gnfag0hsphcr3cb33vbbb9s7ppvvd6bxz2z1mm"))))
529 (build-system gnu-build-system)
530 (native-inputs `(("pkg-config" ,pkg-config)))
531 (inputs
532 `(("curl" ,curl)
533 ("cyrus-sasl" ,cyrus-sasl)
534 ("libquvi-scripts" ,libquvi-scripts)
535 ("lua" ,lua-5.1)
536 ("openssl" ,openssl)
537 ("zlib" ,zlib)))
538 (arguments
539 ;; Lua provides no .pc file, so add CFLAGS/LIBS manually.
540 '(#:configure-flags
541 (let ((lua (assoc-ref %build-inputs "lua")))
542 (list
543 (string-append "liblua_CFLAGS=-I" lua "/include")
544 (string-append "liblua_LIBS=-L" lua "/libs -llua")))))
545 (home-page "http://quvi.sourceforge.net/")
546 (synopsis "Media stream URL parser")
547 (description "libquvi is a library with a C API for parsing media stream
548 URLs and extracting their actual media files.")
549 (license l:lgpl2.1+)))
550
551 (define-public quvi
552 (package
553 (name "quvi")
554 (version "0.4.2")
555 (source
556 (origin
557 (method url-fetch)
558 (uri (string-append
559 "mirror://sourceforge/quvi/quvi-" version ".tar.xz"))
560 (sha256
561 (base32 "09lhl6dv5zpryasx7yjslfrcdcqlsbwapvd5lg7w6sm5x5n3k8ci"))))
562 (build-system gnu-build-system)
563 (native-inputs `(("pkg-config" ,pkg-config)))
564 (inputs
565 `(("curl" ,curl)
566 ("libquvi" ,libquvi)))
567 (home-page "http://quvi.sourceforge.net/")
568 (synopsis "Media stream URL parser")
569 (description "quvi is a command-line-tool suite to extract media files
570 from streaming URLs. It is a command-line wrapper for the libquvi library.")
571 (license l:lgpl2.1+)))
572
573 (define-public serf
574 (package
575 (name "serf")
576 (version "1.3.8")
577 (source
578 (origin
579 (method url-fetch)
580 (uri (string-append "http://serf.googlecode.com/svn/src_releases/serf-"
581 version ".tar.bz2"))
582 (sha256
583 (base32 "14155g48gamcv5s0828bzij6vr14nqmbndwq8j8f9g6vcph0nl70"))
584 (patches (map search-patch '("serf-comment-style-fix.patch"
585 "serf-deflate-buckets-test-fix.patch")))
586 (patch-flags '("-p0"))))
587 (build-system gnu-build-system)
588 (native-inputs
589 `(("scons" ,scons)
590 ("python" ,python-2)))
591 (propagated-inputs
592 `(("apr" ,apr)
593 ("apr-util" ,apr-util)
594 ("openssl" ,openssl)))
595 (inputs
596 `(;; TODO: Fix build with gss.
597 ;;("gss" ,gss)
598 ("zlib" ,zlib)))
599 (arguments
600 `(#:phases
601 ;; TODO: Add scons-build-system and use it here.
602 (modify-phases %standard-phases
603 (delete 'configure)
604 (add-after 'unpack 'scons-propagate-environment
605 (lambda _
606 ;; By design, SCons does not, by default, propagate
607 ;; environment variables to subprocesses. See:
608 ;; <http://comments.gmane.org/gmane.linux.distributions.nixos/4969>
609 ;; Here, we modify the SConstruct file to arrange for
610 ;; environment variables to be propagated.
611 (substitute* "SConstruct"
612 (("^env = Environment\\(")
613 "env = Environment(ENV=os.environ, "))))
614 (replace 'build
615 (lambda* (#:key inputs outputs #:allow-other-keys)
616 (let ((out (assoc-ref outputs "out"))
617 (apr (assoc-ref inputs "apr"))
618 (apr-util (assoc-ref inputs "apr-util"))
619 (openssl (assoc-ref inputs "openssl"))
620 ;;(gss (assoc-ref inputs "gss"))
621 (zlib (assoc-ref inputs "zlib")))
622 (zero? (system* "scons"
623 (string-append "APR=" apr)
624 (string-append "APU=" apr-util)
625 (string-append "OPENSSL=" openssl)
626 ;;(string-append "GSSAPI=" gss)
627 (string-append "ZLIB=" zlib)
628 (string-append "PREFIX=" out))))))
629 (replace 'check (lambda _ (zero? (system* "scons" "check"))))
630 (replace 'install (lambda _ (zero? (system* "scons" "install")))))))
631 (home-page "https://code.google.com/p/serf/")
632 (synopsis "High-performance asynchronous HTTP client library")
633 (description
634 "serf is a C-based HTTP client library built upon the Apache Portable
635 Runtime (APR) library. It multiplexes connections, running the read/write
636 communication asynchronously. Memory copies and transformations are kept to a
637 minimum to provide high performance operation.")
638 ;; Most of the code is covered by the Apache License, Version 2.0, but the
639 ;; bundled CuTest framework uses a different non-copyleft license.
640 (license (list l:asl2.0 (l:non-copyleft "file://test/CuTest-README.txt")))))
641
642 \f
643 (define-public perl-apache-logformat-compiler
644 (package
645 (name "perl-apache-logformat-compiler")
646 (version "0.32")
647 (source
648 (origin
649 (method url-fetch)
650 (uri (string-append "mirror://cpan/authors/id/K/KA/KAZEBURO/"
651 "Apache-LogFormat-Compiler-" version ".tar.gz"))
652 (sha256
653 (base32
654 "0zyx4r2bxc6d48m70fhcq80nw0q9wnfz6qgn1g0r6bigqgdjq4dw"))))
655 (build-system perl-build-system)
656 (native-inputs
657 `(("perl-http-message" ,perl-http-message)
658 ("perl-test-mocktime" ,perl-test-mocktime)
659 ("perl-try-tiny" ,perl-try-tiny)
660 ("perl-uri" ,perl-uri)))
661 (propagated-inputs
662 `(("perl-posix-strftime-compiler" ,perl-posix-strftime-compiler)))
663 (arguments `(#:tests? #f)) ;TODO: Timezone test failures
664 (home-page "http://search.cpan.org/dist/Apache-LogFormat-Compiler")
665 (synopsis "Compile a log format string to perl-code")
666 (description "This module provides methods to compile a log format string
667 to perl-code, for faster generation of access_log lines.")
668 (license (package-license perl))))
669
670 (define-public perl-catalyst-action-renderview
671 (package
672 (name "perl-catalyst-action-renderview")
673 (version "0.16")
674 (source
675 (origin
676 (method url-fetch)
677 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
678 "Catalyst-Action-RenderView-"
679 version ".tar.gz"))
680 (sha256
681 (base32
682 "0j1rrld13cjk7ks92b5hv3xw4rfm2lvmksb4rlzd8mx0a0wj0rc5"))))
683 (build-system perl-build-system)
684 (native-inputs
685 `(("perl-http-request-ascgi" ,perl-http-request-ascgi)))
686 (propagated-inputs
687 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
688 ("perl-data-visitor" ,perl-data-visitor)
689 ("perl-mro-compat" ,perl-mro-compat)))
690 (home-page "http://search.cpan.org/dist/Catalyst-Action-RenderView")
691 (synopsis "Sensible default Catalyst action")
692 (description "This Catalyst action implements a sensible default end
693 action, which will forward to the first available view.")
694 (license (package-license perl))))
695
696 (define-public perl-catalyst-action-rest
697 (package
698 (name "perl-catalyst-action-rest")
699 (version "1.17")
700 (source (origin
701 (method url-fetch)
702 (uri (string-append "mirror://cpan/authors/id/F/FR/FREW/"
703 "Catalyst-Action-REST-" version ".tar.gz"))
704 (sha256
705 (base32
706 "1rnxmsd9dsqz4xc0g9ynafxi934jwp0nixbg92q3bc2h46xcccy8"))))
707 (build-system perl-build-system)
708 (native-inputs
709 `(("perl-test-requires" ,perl-test-requires)))
710 (propagated-inputs
711 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
712 ("perl-class-inspector" ,perl-class-inspector)
713 ("perl-libwww" ,perl-libwww)
714 ("perl-moose" ,perl-moose)
715 ("perl-mro-compat" ,perl-mro-compat)
716 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
717 ("perl-params-validate" ,perl-params-validate)
718 ("perl-uri-find" ,perl-uri-find)))
719 (home-page "http://search.cpan.org/dist/Catalyst-Action-REST")
720 (synopsis "Automated REST Method Dispatching")
721 (description "This Action handles doing automatic method dispatching for
722 REST requests. It takes a normal Catalyst action, and changes the dispatch to
723 append an underscore and method name. First it will try dispatching to an
724 action with the generated name, and failing that it will try to dispatch to a
725 regular method.")
726 (license (package-license perl))))
727
728 (define-public perl-catalyst-authentication-store-dbix-class
729 (package
730 (name "perl-catalyst-authentication-store-dbix-class")
731 (version "0.1506")
732 (source
733 (origin
734 (method url-fetch)
735 (uri (string-append "mirror://cpan/authors/id/I/IL/ILMARI/"
736 "Catalyst-Authentication-Store-DBIx-Class-"
737 version ".tar.gz"))
738 (sha256
739 (base32
740 "0i5ja7690fs9nhxcij6lw51j804sm8s06m5mvk1n8pi8jljrymvw"))))
741 (build-system perl-build-system)
742 (native-inputs
743 `(("perl-catalyst-plugin-authorization-roles"
744 ,perl-catalyst-plugin-authorization-roles)
745 ("perl-catalyst-plugin-session-state-cookie"
746 ,perl-catalyst-plugin-session-state-cookie)
747 ("perl-dbd-sqlite" ,perl-dbd-sqlite)
748 ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst)))
749 (propagated-inputs
750 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
751 ("perl-catalyst-plugin-authentication"
752 ,perl-catalyst-plugin-authentication)
753 ("perl-dbix-class" ,perl-dbix-class)
754 ("perl-catalyst-model-dbic-schema" ,perl-catalyst-model-dbic-schema)))
755 (home-page
756 "http://search.cpan.org/dist/Catalyst-Authentication-Store-DBIx-Class")
757 (synopsis "Storage class for Catalyst authentication using DBIx::Class")
758 (description "The Catalyst::Authentication::Store::DBIx::Class class
759 provides access to authentication information stored in a database via
760 DBIx::Class.")
761 (license (package-license perl))))
762
763 (define-public perl-catalyst-component-instancepercontext
764 (package
765 (name "perl-catalyst-component-instancepercontext")
766 (version "0.001001")
767 (source
768 (origin
769 (method url-fetch)
770 (uri (string-append "mirror://cpan/authors/id/G/GR/GRODITI/"
771 "Catalyst-Component-InstancePerContext-"
772 version ".tar.gz"))
773 (sha256
774 (base32
775 "0wfj4vnn2cvk6jh62amwlg050p37fcwdgrn9amcz24z6w4qgjqvz"))))
776 (build-system perl-build-system)
777 (propagated-inputs
778 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
779 ("perl-moose" ,perl-moose)))
780 (home-page
781 "http://search.cpan.org/dist/Catalyst-Component-InstancePerContext")
782 (synopsis "Create only one instance of Moose component per context")
783 (description "Catalyst::Component::InstancePerContext returns a new
784 instance of a component on each request.")
785 (license (package-license perl))))
786
787 (define-public perl-catalyst-devel
788 (package
789 (name "perl-catalyst-devel")
790 (version "1.39")
791 (source
792 (origin
793 (method url-fetch)
794 (uri (string-append "mirror://cpan/authors/id/I/IL/ILMARI/"
795 "Catalyst-Devel-" version ".tar.gz"))
796 (sha256
797 (base32
798 "12m50bbkggjmpxihv3wnvr0g2qng0zwhlzi5ygppjz8wh2x73qxw"))))
799 (build-system perl-build-system)
800 (native-inputs
801 `(("perl-test-fatal" ,perl-test-fatal)))
802 (propagated-inputs
803 `(("perl-catalyst-action-renderview" ,perl-catalyst-action-renderview)
804 ("perl-catalyst-plugin-configloader" ,perl-catalyst-plugin-configloader)
805 ("perl-catalyst-plugin-static-simple" ,perl-catalyst-plugin-static-simple)
806 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
807 ("perl-config-general" ,perl-config-general)
808 ("perl-file-changenotify" ,perl-file-changenotify)
809 ("perl-file-copy-recursive" ,perl-file-copy-recursive)
810 ("perl-file-sharedir" ,perl-file-sharedir)
811 ("perl-module-install" ,perl-module-install)
812 ("perl-moose" ,perl-moose)
813 ("perl-moosex-emulate-class-accessor-fast"
814 ,perl-moosex-emulate-class-accessor-fast)
815 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
816 ("perl-namespace-clean" ,perl-namespace-clean)
817 ("perl-path-class" ,perl-path-class)
818 ("perl-template-toolkit" ,perl-template-toolkit)))
819 (home-page "http://search.cpan.org/dist/Catalyst-Devel")
820 (synopsis "Catalyst Development Tools")
821 (description "The Catalyst-Devel distribution includes a variety of
822 modules useful for the development of Catalyst applications, but not required
823 to run them. Catalyst-Devel includes the Catalyst::Helper system, which
824 autogenerates scripts and tests; Module::Install::Catalyst, a Module::Install
825 extension for Catalyst; and requirements for a variety of development-related
826 modules.")
827 (license (package-license perl))))
828
829 (define-public perl-catalyst-dispatchtype-regex
830 (package
831 (name "perl-catalyst-dispatchtype-regex")
832 (version "5.90035")
833 (source
834 (origin
835 (method url-fetch)
836 (uri (string-append "mirror://cpan/authors/id/M/MG/MGRIMES/"
837 "Catalyst-DispatchType-Regex-" version ".tar.gz"))
838 (sha256
839 (base32
840 "06jq1lmpq88rmp9zik5gqczg234xac0hiyc3l698iif7zsgcyb80"))))
841 (build-system perl-build-system)
842 (native-inputs
843 `(("perl-module-build" ,perl-module-build) ;needs Module::Build >= 0.4004
844 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
845 ("perl-catalyst-runtime" ,perl-catalyst-runtime)))
846 (propagated-inputs
847 `(("perl-moose" ,perl-moose)
848 ("perl-text-simpletable" ,perl-text-simpletable)))
849 (home-page "http://search.cpan.org/dist/Catalyst-DispatchType-Regex")
850 (synopsis "Regex DispatchType for Catalyst")
851 (description "Dispatch type managing path-matching behaviour using
852 regexes. Regex dispatch types have been deprecated and removed from Catalyst
853 core. It is recommend that you use Chained methods or other techniques
854 instead. As part of the refactoring, the dispatch priority of Regex vs Regexp
855 vs LocalRegex vs LocalRegexp may have changed. Priority is now influenced by
856 when the dispatch type is first seen in your application.")
857 (license (package-license perl))))
858
859 (define-public perl-catalyst-model-dbic-schema
860 (package
861 (name "perl-catalyst-model-dbic-schema")
862 (version "0.65")
863 (source
864 (origin
865 (method url-fetch)
866 (uri (string-append "mirror://cpan/authors/id/G/GB/GBJK/"
867 "Catalyst-Model-DBIC-Schema-"
868 version ".tar.gz"))
869 (sha256
870 (base32
871 "1spfjcjc0b9dv3k2gbanqj1m1cqzyxb32p76dhdwizzpbvpi3a96"))))
872 (build-system perl-build-system)
873 (native-inputs
874 `(("perl-dbd-sqlite" ,perl-dbd-sqlite)
875 ("perl-test-exception" ,perl-test-exception)
876 ("perl-test-requires" ,perl-test-requires)))
877 (propagated-inputs
878 `(("perl-carp-clan" ,perl-carp-clan)
879 ("perl-catalyst-component-instancepercontext"
880 ,perl-catalyst-component-instancepercontext)
881 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
882 ("perl-catalystx-component-traits" ,perl-catalystx-component-traits)
883 ("perl-dbix-class" ,perl-dbix-class)
884 ("perl-dbix-class-cursor-cached" ,perl-dbix-class-cursor-cached)
885 ("perl-dbix-class-schema-loader" ,perl-dbix-class-schema-loader)
886 ("perl-hash-merge" ,perl-hash-merge)
887 ("perl-list-moreutils" ,perl-list-moreutils)
888 ("perl-module-runtime" ,perl-module-runtime)
889 ("perl-moose" ,perl-moose)
890 ("perl-moosex-markasmethods" ,perl-moosex-markasmethods)
891 ("perl-moosex-nonmoose" ,perl-moosex-nonmoose)
892 ("perl-moosex-types" ,perl-moosex-types)
893 ("perl-moosex-types-loadableclass" ,perl-moosex-types-loadableclass)
894 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
895 ("perl-namespace-clean" ,perl-namespace-clean)
896 ("perl-tie-ixhash" ,perl-tie-ixhash)
897 ("perl-try-tiny" ,perl-try-tiny)))
898 (home-page "http://search.cpan.org/dist/Catalyst-Model-DBIC-Schema")
899 (synopsis "DBIx::Class::Schema Model Class")
900 (description "This is a Catalyst Model for DBIx::Class::Schema-based
901 Models.")
902 (license (package-license perl))))
903
904 (define-public perl-catalyst-plugin-accesslog
905 (package
906 (name "perl-catalyst-plugin-accesslog")
907 (version "1.05")
908 (source
909 (origin
910 (method url-fetch)
911 (uri (string-append "mirror://cpan/authors/id/A/AR/ARODLAND/"
912 "Catalyst-Plugin-AccessLog-" version ".tar.gz"))
913 (sha256
914 (base32
915 "0hqvckaw91q5yc25a33bp0d4qqxlgkp7rxlvi8n8svxd1406r55s"))))
916 (build-system perl-build-system)
917 (propagated-inputs
918 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
919 ("perl-datetime" ,perl-datetime)
920 ("perl-moose" ,perl-moose)
921 ("perl-namespace-autoclean" ,perl-namespace-autoclean)))
922 (arguments `(#:tests? #f)) ;Unexpected http responses
923 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-AccessLog")
924 (synopsis "Request logging from within Catalyst")
925 (description "This Catalyst plugin enables you to create \"access logs\"
926 from within a Catalyst application instead of requiring a webserver to do it
927 for you. It will work even with Catalyst debug logging turned off.")
928 (license (package-license perl))))
929
930 (define-public perl-catalyst-plugin-authentication
931 (package
932 (name "perl-catalyst-plugin-authentication")
933 (version "0.10023")
934 (source
935 (origin
936 (method url-fetch)
937 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
938 "Catalyst-Plugin-Authentication-"
939 version ".tar.gz"))
940 (sha256
941 (base32
942 "0v6hb4r1wv3djrnqvnjcn3xx1scgqzx8nyjdg9lfc1ybvamrl0rn"))))
943 (build-system perl-build-system)
944 (propagated-inputs
945 `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
946 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
947 ("perl-class-inspector" ,perl-class-inspector)
948 ("perl-moose" ,perl-moose)
949 ("perl-moosex-emulate-class-accessor-fast"
950 ,perl-moosex-emulate-class-accessor-fast)
951 ("perl-mro-compat" ,perl-mro-compat)
952 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
953 ("perl-string-rewriteprefix" ,perl-string-rewriteprefix)
954 ("perl-test-exception" ,perl-test-exception)
955 ("perl-try-tiny" ,perl-try-tiny)))
956 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-Authentication")
957 (synopsis "Infrastructure plugin for the Catalyst authentication framework")
958 (description "The authentication plugin provides generic user support for
959 Catalyst apps. It is the basis for both authentication (checking the user is
960 who they claim to be), and authorization (allowing the user to do what the
961 system authorises them to do).")
962 (license (package-license perl))))
963
964 (define-public perl-catalyst-plugin-authorization-roles
965 (package
966 (name "perl-catalyst-plugin-authorization-roles")
967 (version "0.09")
968 (source
969 (origin
970 (method url-fetch)
971 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
972 "Catalyst-Plugin-Authorization-Roles-"
973 version ".tar.gz"))
974 (sha256
975 (base32
976 "0l83lkwmq0lngwh8b1rv3r719pn8w1gdbyhjqm74rnd0wbjl8h7f"))))
977 (build-system perl-build-system)
978 (native-inputs
979 `(("perl-test-exception" ,perl-test-exception)))
980 (propagated-inputs
981 `(("perl-catalyst-plugin-authentication"
982 ,perl-catalyst-plugin-authentication)
983 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
984 ("perl-set-object" ,perl-set-object)
985 ("perl-universal-isa" ,perl-universal-isa)))
986 (home-page
987 "http://search.cpan.org/dist/Catalyst-Plugin-Authorization-Roles")
988 (synopsis "Role-based authorization for Catalyst")
989 (description "Catalyst::Plugin::Authorization::Roles provides role-based
990 authorization for Catalyst based on Catalyst::Plugin::Authentication.")
991 (license (package-license perl))))
992
993 (define-public perl-catalyst-plugin-captcha
994 (package
995 (name "perl-catalyst-plugin-captcha")
996 (version "0.04")
997 (source
998 (origin
999 (method url-fetch)
1000 (uri (string-append "mirror://cpan/authors/id/D/DI/DIEGOK/"
1001 "Catalyst-Plugin-Captcha-" version ".tar.gz"))
1002 (sha256
1003 (base32
1004 "0llyj3v5nx9cx46jdbbvxf1lc9s9cxq5ml22xmx3wkb201r5qgaa"))))
1005 (build-system perl-build-system)
1006 (propagated-inputs
1007 `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
1008 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1009 ("perl-gd-securityimage" ,perl-gd-securityimage)
1010 ("perl-http-date" ,perl-http-date)))
1011 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-Captcha")
1012 (synopsis "Captchas for Catalyst")
1013 (description "This plugin creates and validates Captcha images for
1014 Catalyst.")
1015 (license (package-license perl))))
1016
1017 (define-public perl-catalyst-plugin-configloader
1018 (package
1019 (name "perl-catalyst-plugin-configloader")
1020 (version "0.34")
1021 (source
1022 (origin
1023 (method url-fetch)
1024 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1025 "Catalyst-Plugin-ConfigLoader-"
1026 version ".tar.gz"))
1027 (sha256
1028 (base32
1029 "19j7p4v7mbx6wrmpvmrnd974apx7hdl2s095ga3b9zcbdrl77h5q"))))
1030 (build-system perl-build-system)
1031 (native-inputs
1032 `(("perl-path-class" ,perl-path-class)))
1033 (propagated-inputs
1034 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1035 ("perl-config-any" ,perl-config-any)
1036 ("perl-data-visitor" ,perl-data-visitor)
1037 ("perl-mro-compat" ,perl-mro-compat)))
1038 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-ConfigLoader")
1039 (synopsis "Load config files of various types")
1040 (description "This module will attempt to load find and load configuration
1041 files of various types. Currently it supports YAML, JSON, XML, INI and Perl
1042 formats.")
1043 (license (package-license perl))))
1044
1045 (define-public perl-catalyst-plugin-session
1046 (package
1047 (name "perl-catalyst-plugin-session")
1048 (version "0.39")
1049 (source
1050 (origin
1051 (method url-fetch)
1052 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1053 "Catalyst-Plugin-Session-" version ".tar.gz"))
1054 (sha256
1055 (base32
1056 "0m4a003qgz7848iyckwbigg2vw3kmfxggh1razrnzxrbz3n6x5gi"))))
1057 (build-system perl-build-system)
1058 (native-inputs
1059 `(("perl-test-deep" ,perl-test-deep)
1060 ("perl-test-exception" ,perl-test-exception)))
1061 (propagated-inputs
1062 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1063 ("perl-moose" ,perl-moose)
1064 ("perl-moosex-emulate-class-accessor-fast"
1065 ,perl-moosex-emulate-class-accessor-fast)
1066 ("perl-namespace-clean" ,perl-namespace-clean)
1067 ("perl-object-signature" ,perl-object-signature)
1068 ("perl-test-www-mechanize-psgi" ,perl-test-www-mechanize-psgi)))
1069 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-Session")
1070 (synopsis "Catalyst generic session plugin")
1071 (description "This plugin links the two pieces required for session
1072 management in web applications together: the state, and the store.")
1073 (license (package-license perl))))
1074
1075 (define-public perl-catalyst-plugin-session-state-cookie
1076 (package
1077 (name "perl-catalyst-plugin-session-state-cookie")
1078 (version "0.17")
1079 (source
1080 (origin
1081 (method url-fetch)
1082 (uri (string-append "mirror://cpan/authors/id/M/MS/MSTROUT/"
1083 "Catalyst-Plugin-Session-State-Cookie-"
1084 version ".tar.gz"))
1085 (sha256
1086 (base32
1087 "1rvxbfnpf9x2pc2zgpazlcgdlr2dijmxgmcs0m5nazs0w6xikssb"))))
1088 (build-system perl-build-system)
1089 (propagated-inputs
1090 `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
1091 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1092 ("perl-moose" ,perl-moose)
1093 ("perl-mro-compat" ,perl-mro-compat)
1094 ("perl-namespace-autoclean" ,perl-namespace-autoclean)))
1095 (home-page
1096 "http://search.cpan.org/dist/Catalyst-Plugin-Session-State-Cookie")
1097 (synopsis "Maintain session IDs using cookies")
1098 (description "In order for Catalyst::Plugin::Session to work, the session
1099 ID needs to be stored on the client, and the session data needs to be stored
1100 on the server. This plugin stores the session ID on the client using the
1101 cookie mechanism.")
1102 (license (package-license perl))))
1103
1104 (define-public perl-catalyst-plugin-session-store-fastmmap
1105 (package
1106 (name "perl-catalyst-plugin-session-store-fastmmap")
1107 (version "0.16")
1108 (source
1109 (origin
1110 (method url-fetch)
1111 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1112 "Catalyst-Plugin-Session-Store-FastMmap-"
1113 version ".tar.gz"))
1114 (sha256
1115 (base32
1116 "0x3j6zv3wr41jlwr6yb2jpmcx019ibyn11y8653ffnwhpzbpzsxs"))))
1117 (build-system perl-build-system)
1118 (propagated-inputs
1119 `(("perl-cache-fastmmap" ,perl-cache-fastmmap)
1120 ("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
1121 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1122 ("perl-moosex-emulate-class-accessor-fast"
1123 ,perl-moosex-emulate-class-accessor-fast)
1124 ("perl-mro-compat" ,perl-mro-compat)
1125 ("perl-path-class" ,perl-path-class)))
1126 (home-page
1127 "http://search.cpan.org/dist/Catalyst-Plugin-Session-Store-FastMmap")
1128 (synopsis "FastMmap session storage backend.")
1129 (description "Catalyst::Plugin::Session::Store::FastMmap is a fast session
1130 storage plugin for Catalyst that uses an mmap'ed file to act as a shared
1131 memory interprocess cache. It is based on Cache::FastMmap.")
1132 (license (package-license perl))))
1133
1134 (define-public perl-catalyst-plugin-stacktrace
1135 (package
1136 (name "perl-catalyst-plugin-stacktrace")
1137 (version "0.12")
1138 (source
1139 (origin
1140 (method url-fetch)
1141 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1142 "Catalyst-Plugin-StackTrace-" version ".tar.gz"))
1143 (sha256
1144 (base32
1145 "1b2ksz74cpigxqzf63rddar3vfmnbpwpdcbs11v0ml89pb8ar79j"))))
1146 (build-system perl-build-system)
1147 (propagated-inputs
1148 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1149 ("perl-devel-stacktrace" ,perl-devel-stacktrace)
1150 ("perl-mro-compat" ,perl-mro-compat)))
1151 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-StackTrace")
1152 (synopsis "Stack trace on the Catalyst debug screen")
1153 (description "This plugin enhances the standard Catalyst debug screen by
1154 including a stack trace of your appliation up to the point where the error
1155 occurred. Each stack frame is displayed along with the package name, line
1156 number, file name, and code context surrounding the line number.")
1157 (license (package-license perl))))
1158
1159 (define-public perl-catalyst-plugin-static-simple
1160 (package
1161 (name "perl-catalyst-plugin-static-simple")
1162 (version "0.33")
1163 (source
1164 (origin
1165 (method url-fetch)
1166 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1167 "Catalyst-Plugin-Static-Simple-" version ".tar.gz"))
1168 (sha256
1169 (base32
1170 "1h8f12bhzh0ssq9gs8r9g3hqn8zn2k0q944vc1vm8j81bns16msy"))))
1171 (build-system perl-build-system)
1172 (propagated-inputs
1173 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1174 ("perl-mime-types" ,perl-mime-types)
1175 ("perl-moose" ,perl-moose)
1176 ("perl-moosex-types" ,perl-moosex-types)
1177 ("perl-namespace-autoclean" ,perl-namespace-autoclean)))
1178 (home-page "http://search.cpan.org/dist/Catalyst-Plugin-Static-Simple")
1179 (synopsis "Simple serving of static pages")
1180 (description "The Static::Simple plugin is designed to make serving static
1181 content in your application during development quick and easy, without
1182 requiring a single line of code from you. This plugin detects static files by
1183 looking at the file extension in the URL (such as .css or .png or .js). The
1184 plugin uses the lightweight MIME::Types module to map file extensions to
1185 IANA-registered MIME types, and will serve your static files with the correct
1186 MIME type directly to the browser, without being processed through Catalyst.")
1187 (license (package-license perl))))
1188
1189 (define-public perl-catalyst-runtime
1190 (package
1191 (name "perl-catalyst-runtime")
1192 (version "5.90082")
1193 (source
1194 (origin
1195 (method url-fetch)
1196 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1197 "Catalyst-Runtime-" version ".tar.gz"))
1198 (sha256
1199 (base32
1200 "1gs70nq4rikpq6siwds9disb1z03vwjzf979xi9kf7saa1drfncs"))))
1201 (build-system perl-build-system)
1202 (native-inputs
1203 `(("perl-test-fatal" ,perl-test-fatal)))
1204 (propagated-inputs
1205 `(("perl-cgi-simple" ,perl-cgi-simple)
1206 ("perl-cgi-struct" ,perl-cgi-struct)
1207 ("perl-class-c3-adopt-next" ,perl-class-c3-adopt-next)
1208 ("perl-class-data-inheritable" ,perl-class-data-inheritable)
1209 ("perl-class-date" ,perl-class-date)
1210 ("perl-class-load" ,perl-class-load)
1211 ("perl-data-dump" ,perl-data-dump)
1212 ("perl-http-body" ,perl-http-body)
1213 ("perl-http-message" ,perl-http-message)
1214 ("perl-http-request-ascgi" ,perl-http-request-ascgi)
1215 ("perl-io-stringy" ,perl-io-stringy)
1216 ("perl-json-maybexs" ,perl-json-maybexs)
1217 ("perl-libwww" ,perl-libwww)
1218 ("perl-moose" ,perl-moose)
1219 ("perl-moosex-emulate-class-accessor-fast"
1220 ,perl-moosex-emulate-class-accessor-fast)
1221 ("perl-moosex-getopt" ,perl-moosex-getopt)
1222 ("perl-moosex-methodattributes" ,perl-moosex-methodattributes)
1223 ("perl-moosex-role-withoverloading" ,perl-moosex-role-withoverloading)
1224 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1225 ("perl-namespace-clean" ,perl-namespace-clean)
1226 ("perl-path-class" ,perl-path-class)
1227 ("perl-plack" ,perl-plack)
1228 ("perl-plack-middleware-fixmissingbodyinredirect"
1229 ,perl-plack-middleware-fixmissingbodyinredirect)
1230 ("perl-plack-middleware-methodoverride"
1231 ,perl-plack-middleware-methodoverride)
1232 ("perl-plack-middleware-removeredundantbody"
1233 ,perl-plack-middleware-removeredundantbody)
1234 ("perl-plack-middleware-reverseproxy"
1235 ,perl-plack-middleware-reverseproxy)
1236 ("perl-plack-test-externalserver" ,perl-plack-test-externalserver)
1237 ("perl-safe-isa" ,perl-safe-isa)
1238 ("perl-string-rewriteprefix" ,perl-string-rewriteprefix)
1239 ("perl-text-simpletable" ,perl-text-simpletable)
1240 ("perl-tree-simple" ,perl-tree-simple)
1241 ("perl-tree-simple-visitorfactory" ,perl-tree-simple-visitorfactory)
1242 ("perl-try-tiny" ,perl-try-tiny)
1243 ("perl-uri" ,perl-uri)
1244 ("perl-uri-ws" ,perl-uri-ws)))
1245 (home-page "http://search.cpan.org/dist/Catalyst-Runtime")
1246 (synopsis "The Catalyst Framework Runtime")
1247 (description "Catalyst is a modern framework for making web applications.
1248 It is designed to make it easy to manage the various tasks you need to do to
1249 run an application on the web, either by doing them itself, or by letting you
1250 \"plug in\" existing Perl modules that do what you need.")
1251 (license (package-license perl))))
1252
1253 (define-public perl-catalyst-traitfor-request-proxybase
1254 (package
1255 (name "perl-catalyst-traitfor-request-proxybase")
1256 (version "0.000005")
1257 (source
1258 (origin
1259 (method url-fetch)
1260 (uri (string-append "mirror://cpan/authors/id/B/BO/BOBTFISH/"
1261 "Catalyst-TraitFor-Request-ProxyBase-"
1262 version ".tar.gz"))
1263 (sha256
1264 (base32
1265 "02kir63d5cs2ipj3fn1qlmmx3gqi1xqzrxfr4pv5vjhjgsm0zgx7"))))
1266 (build-system perl-build-system)
1267 (native-inputs
1268 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1269 ("perl-catalystx-roleapplicator" ,perl-catalystx-roleapplicator)
1270 ("perl-http-message" ,perl-http-message)))
1271 (propagated-inputs
1272 `(("perl-moose" ,perl-moose)
1273 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1274 ("perl-uri" ,perl-uri)))
1275 (home-page
1276 "http://search.cpan.org/dist/Catalyst-TraitFor-Request-ProxyBase")
1277 (synopsis "Replace request base with value passed by HTTP proxy")
1278 (description "This module is a Moose::Role which allows you more
1279 flexibility in your application's deployment configurations when deployed
1280 behind a proxy. Using this module, the request base ($c->req->base) is
1281 replaced with the contents of the X-Request-Base header.")
1282 (license (package-license perl))))
1283
1284 (define-public perl-catalyst-view-download
1285 (package
1286 (name "perl-catalyst-view-download")
1287 (version "0.09")
1288 (source
1289 (origin
1290 (method url-fetch)
1291 (uri (string-append "mirror://cpan/authors/id/G/GA/GAUDEON/"
1292 "Catalyst-View-Download-" version ".tar.gz"))
1293 (sha256
1294 (base32
1295 "1qgq6y9iwfbhbkbgpw9czang2ami6z8jk1zlagrzdisy4igqzkvs"))))
1296 (build-system perl-build-system)
1297 (native-inputs
1298 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1299 ("perl-test-simple" ,perl-test-simple)
1300 ("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst)
1301 ("perl-text-csv" ,perl-text-csv)
1302 ("perl-xml-simple" ,perl-xml-simple)))
1303 (home-page "http://search.cpan.org/dist/Catalyst-View-Download")
1304 (synopsis "Download data in many formats")
1305 (description "The purpose of this module is to provide a method for
1306 downloading data into many supportable formats. For example, downloading a
1307 table based report in a variety of formats (CSV, HTML, etc.). ")
1308 (license (package-license perl))))
1309
1310 (define-public perl-catalyst-view-json
1311 (package
1312 (name "perl-catalyst-view-json")
1313 (version "0.35")
1314 (source
1315 (origin
1316 (method url-fetch)
1317 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1318 "Catalyst-View-JSON-" version ".tar.gz"))
1319 (sha256
1320 (base32
1321 "184pyghlrkl7p387bnyvswi2d9myvdg4v3lax6xrd59shskvpmkm"))))
1322 (build-system perl-build-system)
1323 (native-inputs
1324 `(("perl-yaml" ,perl-yaml)))
1325 (inputs
1326 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1327 ("perl-json-maybexs" ,perl-json-maybexs)
1328 ("perl-mro-compat" ,perl-mro-compat)))
1329 (home-page "http://search.cpan.org/dist/Catalyst-View-JSON")
1330 (synopsis "Catalyst JSON view")
1331 (description "Catalyst::View::JSON is a Catalyst View handler that returns
1332 stash data in JSON format.")
1333 (license (package-license perl))))
1334
1335 (define-public perl-catalyst-view-tt
1336 (package
1337 (name "perl-catalyst-view-tt")
1338 (version "0.42")
1339 (source
1340 (origin
1341 (method url-fetch)
1342 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
1343 "Catalyst-View-TT-" version ".tar.gz"))
1344 (sha256
1345 (base32
1346 "18ciik9fqaqjfasa9wicbjrsl3gjhjc15xzaj3rif57an25cl178"))))
1347 (build-system perl-build-system)
1348 (propagated-inputs
1349 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1350 ("perl-class-accessor" ,perl-class-accessor)
1351 ("perl-mro-compat" ,perl-mro-compat)
1352 ("perl-path-class" ,perl-path-class)
1353 ("perl-template-timer" ,perl-template-timer)
1354 ("perl-template-toolkit" ,perl-template-toolkit)))
1355 (home-page "http://search.cpan.org/dist/Catalyst-View-TT")
1356 (synopsis "Template View Class")
1357 (description "This module is a Catalyst view class for the Template
1358 Toolkit.")
1359 (license (package-license perl))))
1360
1361 (define-public perl-catalystx-component-traits
1362 (package
1363 (name "perl-catalystx-component-traits")
1364 (version "0.19")
1365 (source
1366 (origin
1367 (method url-fetch)
1368 (uri (string-append "mirror://cpan/authors/id/R/RK/RKITOVER/"
1369 "CatalystX-Component-Traits-" version ".tar.gz"))
1370 (sha256
1371 (base32
1372 "0iq4ci8m6g2c4g01fvdl568y7pjz28f3widk986v3pyhr7ll8j88"))))
1373 (build-system perl-build-system)
1374 (native-inputs
1375 `(("perl-moose" ,perl-moose)
1376 ("perl-catalyst-runtime" ,perl-catalyst-runtime)
1377 ("perl-moosex-methodattributes" ,perl-moosex-methodattributes)))
1378 (propagated-inputs
1379 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1380 ("perl-class-load" ,perl-class-load)
1381 ("perl-moose" ,perl-moose)
1382 ("perl-moosex-traits-pluggable" ,perl-moosex-traits-pluggable)
1383 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1384 ("perl-list-moreutils" ,perl-list-moreutils)))
1385 (home-page "http://search.cpan.org/dist/CatalystX-Component-Traits")
1386 (synopsis "Trait Loading and Resolution for Catalyst Components")
1387 (description "Adds a \"COMPONENT\" in Catalyst::Component method to your
1388 Catalyst component base class that reads the optional \"traits\" parameter
1389 from app and component config and instantiates the component subclass with
1390 those traits using \"new_with_traits\" in MooseX::Traits from
1391 MooseX::Traits::Pluggable.")
1392 (license (package-license perl))))
1393
1394 (define-public perl-catalystx-roleapplicator
1395 (package
1396 (name "perl-catalystx-roleapplicator")
1397 (version "0.005")
1398 (source
1399 (origin
1400 (method url-fetch)
1401 (uri (string-append "mirror://cpan/authors/id/H/HD/HDP/"
1402 "CatalystX-RoleApplicator-" version ".tar.gz"))
1403 (sha256
1404 (base32
1405 "0vwaapxn8g5hs2xp63c4dwv9jmapmji4272fakssvgc9frklg3p2"))))
1406 (build-system perl-build-system)
1407 (propagated-inputs
1408 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1409 ("perl-moose" ,perl-moose)
1410 ("perl-moosex-relatedclassroles" ,perl-moosex-relatedclassroles)))
1411 (home-page "http://search.cpan.org/dist/CatalystX-RoleApplicator")
1412 (synopsis "Apply roles to Catalyst classes")
1413 (description "CatalystX::RoleApplicator applies roles to Catalyst
1414 application classes.")
1415 (license (package-license perl))))
1416
1417 (define-public perl-catalystx-script-server-starman
1418 (package
1419 (name "perl-catalystx-script-server-starman")
1420 (version "0.02")
1421 (source
1422 (origin
1423 (method url-fetch)
1424 (uri (string-append "mirror://cpan/authors/id/A/AB/ABRAXXA/"
1425 "CatalystX-Script-Server-Starman-"
1426 version ".tar.gz"))
1427 (sha256
1428 (base32
1429 "0h02mpkc4cmi3jpvcd7iw7xyzx55bqvvl1qkf967gqkvpklm0qx5"))))
1430 (build-system perl-build-system)
1431 (native-inputs
1432 `(("perl-test-www-mechanize-catalyst" ,perl-test-www-mechanize-catalyst)))
1433 (propagated-inputs
1434 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
1435 ("perl-moose" ,perl-moose)
1436 ("perl-namespace-autoclean" ,perl-namespace-autoclean)
1437 ("starman" ,starman)))
1438 (home-page "http://search.cpan.org/dist/CatalystX-Script-Server-Starman")
1439 (synopsis "Catalyst development server with Starman")
1440 (description "This module provides a Catalyst extension to replace the
1441 development server with Starman.")
1442 (license (package-license perl))))
1443
1444 (define-public perl-cgi-simple
1445 (package
1446 (name "perl-cgi-simple")
1447 (version "1.115")
1448 (source
1449 (origin
1450 (method url-fetch)
1451 (uri (string-append "mirror://cpan/authors/id/S/SZ/SZABGAB/"
1452 "CGI-Simple-" version ".tar.gz"))
1453 (sha256
1454 (base32
1455 "1nkyb1m1g5r47xykflf68dplanih5p15njv82frbgbsms34kp1sg"))))
1456 (build-system perl-build-system)
1457 (native-inputs
1458 `(("perl-io-stringy" ,perl-io-stringy))) ;for IO::Scalar
1459 (home-page "http://search.cpan.org/dist/CGI-Simple")
1460 (synopsis "CGI interface that is CGI.pm compliant")
1461 (description "CGI::Simple provides a relatively lightweight drop in
1462 replacement for CGI.pm. It shares an identical OO interface to CGI.pm for
1463 parameter parsing, file upload, cookie handling and header generation.")
1464 (license (package-license perl))))
1465
1466 (define-public perl-cgi-struct
1467 (package
1468 (name "perl-cgi-struct")
1469 (version "1.21")
1470 (source
1471 (origin
1472 (method url-fetch)
1473 (uri (string-append "mirror://cpan/authors/id/F/FU/FULLERMD/"
1474 "CGI-Struct-" version ".tar.gz"))
1475 (sha256
1476 (base32
1477 "0v4xq2qpryr7i6jngw1wpn8yr2kiib10yxp4aih90vfdznkqsgfi"))))
1478 (build-system perl-build-system)
1479 (native-inputs
1480 `(("perl-test-deep" ,perl-test-deep)))
1481 (home-page "http://search.cpan.org/dist/CGI-Struct")
1482 (synopsis "Build structures from CGI data")
1483 (description "This is a module for building structured data from CGI
1484 inputs, in a manner reminiscent of how PHP does.")
1485 (license l:bsd-2)))
1486
1487 (define-public perl-datetime-format-http
1488 (package
1489 (name "perl-datetime-format-http")
1490 (version "0.42")
1491 (source
1492 (origin
1493 (method url-fetch)
1494 (uri (string-append "mirror://cpan/authors/id/C/CK/CKRAS/"
1495 "DateTime-Format-HTTP-" version ".tar.gz"))
1496 (sha256
1497 (base32
1498 "0h6qqdg1yzqkdxp7hqlp0qa7d1y64nilgimxs79dys2ryjfpcknh"))))
1499 (build-system perl-build-system)
1500 (propagated-inputs
1501 `(("perl-datetime" ,perl-datetime)
1502 ("perl-http-date" ,perl-http-date)))
1503 (home-page "http://search.cpan.org/dist/DateTime-Format-HTTP")
1504 (synopsis "Date conversion routines")
1505 (description "This module provides functions that deal with the date
1506 formats used by the HTTP protocol.")
1507 (license (package-license perl))))
1508
1509 (define-public perl-digest-md5-file
1510 (package
1511 (name "perl-digest-md5-file")
1512 (version "0.08")
1513 (source
1514 (origin
1515 (method url-fetch)
1516 (uri (string-append "mirror://cpan/authors/id/D/DM/DMUEY/"
1517 "Digest-MD5-File-" version ".tar.gz"))
1518 (sha256
1519 (base32
1520 "060jzf45dlwysw5wsm7av1wvpl06xgk415kwwpvv89r6wda3md5d"))))
1521 (build-system perl-build-system)
1522 (propagated-inputs
1523 `(("perl-libwww" ,perl-libwww)))
1524 (home-page "http://search.cpan.org/dist/Digest-MD5-File")
1525 (synopsis "MD5 sums for files and urls")
1526 (description "Digest::MD5::File is a Perl extension for getting MD5 sums
1527 for files and urls.")
1528 (license (package-license perl))))
1529
1530 (define-public perl-encode-locale
1531 (package
1532 (name "perl-encode-locale")
1533 (version "1.03")
1534 (source (origin
1535 (method url-fetch)
1536 (uri (string-append
1537 "mirror://cpan/authors/id/G/GA/GAAS/Encode-Locale-"
1538 version ".tar.gz"))
1539 (sha256
1540 (base32
1541 "0m9d1vdphlyzybgmdanipwd9ndfvyjgk3hzw250r299jjgh3fqzp"))))
1542 (build-system perl-build-system)
1543 (license (package-license perl))
1544 (synopsis "Perl locale encoding determination")
1545 (description
1546 "The POSIX locale system is used to specify both the language
1547 conventions requested by the user and the preferred character set to consume
1548 and output. The Encode::Locale module looks up the charset and encoding
1549 (called a CODESET in the locale jargon) and arranges for the Encode module
1550 to know this encoding under the name \"locale\". It means bytes obtained
1551 from the environment can be converted to Unicode strings by calling
1552 Encode::encode(locale => $bytes) and converted back again with
1553 Encode::decode(locale => $string).")
1554 (home-page "http://search.cpan.org/~gaas/Encode-Locale/")))
1555
1556 (define-public perl-file-listing
1557 (package
1558 (name "perl-file-listing")
1559 (version "6.04")
1560 (source (origin
1561 (method url-fetch)
1562 (uri (string-append
1563 "mirror://cpan/authors/id/G/GA/GAAS/File-Listing-"
1564 version ".tar.gz"))
1565 (sha256
1566 (base32
1567 "1xcwjlnxaiwwpn41a5yi6nz95ywh3szq5chdxiwj36kqsvy5000y"))))
1568 (build-system perl-build-system)
1569 (propagated-inputs
1570 `(("perl-http-date" ,perl-http-date)))
1571 (license (package-license perl))
1572 (synopsis "Perl directory listing parser")
1573 (description
1574 "The File::Listing module exports a single function called parse_dir(),
1575 which can be used to parse directory listings.")
1576 (home-page "http://search.cpan.org/~gaas/File-Listing/")))
1577
1578 (define-public perl-html-form
1579 (package
1580 (name "perl-html-form")
1581 (version "6.03")
1582 (source
1583 (origin
1584 (method url-fetch)
1585 (uri (string-append "mirror://cpan/authors/id/G/GA/GAAS/"
1586 "HTML-Form-" version ".tar.gz"))
1587 (sha256
1588 (base32
1589 "0dpwr7yz6hjc3bcqgcbdzjjk9l58ycdjmbam9nfcmm85y2a1vh38"))))
1590 (build-system perl-build-system)
1591 (propagated-inputs
1592 `(("perl-html-parser" ,perl-html-parser)
1593 ("perl-html-tagset" ,perl-html-tagset)
1594 ("perl-http-message" ,perl-http-message)
1595 ("perl-lwp-mediatypes" ,perl-lwp-mediatypes)
1596 ("perl-uri" ,perl-uri)))
1597 (home-page "http://search.cpan.org/dist/HTML-Form")
1598 (synopsis "Perl class representing an HTML form element")
1599 (description "Objects of the HTML::Form class represents a single HTML
1600 <form> ... </form> instance.")
1601 (license (package-license perl))))
1602
1603 (define-public perl-html-lint
1604 (package
1605 (name "perl-html-lint")
1606 (version "2.20")
1607 (source
1608 (origin
1609 (method url-fetch)
1610 (uri (string-append "mirror://cpan/authors/id/P/PE/PETDANCE/"
1611 "HTML-Lint-" version ".tar.gz"))
1612 (sha256
1613 (base32
1614 "15vrqjnlb0f8rib1kqdf4islqy6i33h08wy7b1bkgd550p7lfjwk"))))
1615 (build-system perl-build-system)
1616 (propagated-inputs
1617 `(("perl-html-parser" ,perl-html-parser)
1618 ("perl-html-tagset" ,perl-html-tagset)
1619 ("perl-libwww" ,perl-libwww)))
1620 (home-page "http://search.cpan.org/dist/HTML-Lint")
1621 (synopsis "Check for HTML errors in a string or file")
1622 (description "HTML::Lint is a pure-Perl HTML parser and checker for
1623 syntactic legitmacy.")
1624 (license l:artistic2.0)))
1625
1626 (define-public perl-html-tree
1627 (package
1628 (name "perl-html-tree")
1629 (version "5.03")
1630 (source
1631 (origin
1632 (method url-fetch)
1633 (uri (string-append "mirror://cpan/authors/id/C/CJ/CJM/"
1634 "HTML-Tree-" version ".tar.gz"))
1635 (sha256
1636 (base32
1637 "13qlqbpixw470gnck0xgny8hyjj576m8y24bba2p9ai2lvy76vbx"))))
1638 (build-system perl-build-system)
1639 (native-inputs
1640 `(("perl-test-fatal" ,perl-test-fatal)))
1641 (propagated-inputs
1642 `(("perl-html-parser" ,perl-html-parser)
1643 ("perl-html-tagset" ,perl-html-tagset)
1644 ("perl-libwww" ,perl-libwww)))
1645 (home-page "http://search.cpan.org/dist/HTML-Tree")
1646 (synopsis "Work with HTML in a DOM-like tree structure")
1647 (description "This distribution contains a suite of modules for
1648 representing, creating, and extracting information from HTML syntax trees.")
1649 (license (package-license perl))))
1650
1651 (define-public perl-html-parser
1652 (package
1653 (name "perl-html-parser")
1654 (version "3.71")
1655 (source (origin
1656 (method url-fetch)
1657 (uri (string-append
1658 "mirror://cpan/authors/id/G/GA/GAAS/HTML-Parser-"
1659 version ".tar.gz"))
1660 (sha256
1661 (base32
1662 "00nqzdgl7c3jilx7mil19k5jwcw3as14pvkjgxi97zyk94vqp4dy"))))
1663 (build-system perl-build-system)
1664 (inputs
1665 `(("perl-html-tagset" ,perl-html-tagset)))
1666 (license (package-license perl))
1667 (synopsis "Perl HTML parser class")
1668 (description
1669 "Objects of the HTML::Parser class will recognize markup and separate
1670 it from plain text (alias data content) in HTML documents. As different
1671 kinds of markup and text are recognized, the corresponding event handlers
1672 are invoked.")
1673 (home-page "http://search.cpan.org/~gaas/HTML-Parser/")))
1674
1675 (define-public perl-html-tagset
1676 (package
1677 (name "perl-html-tagset")
1678 (version "3.20")
1679 (source (origin
1680 (method url-fetch)
1681 (uri (string-append
1682 "mirror://cpan/authors/id/P/PE/PETDANCE/HTML-Tagset-"
1683 version ".tar.gz"))
1684 (sha256
1685 (base32
1686 "1qh8249wgr4v9vgghq77zh1d2zs176bir223a8gh3k9nksn7vcdd"))))
1687 (build-system perl-build-system)
1688 (license (package-license perl))
1689 (synopsis "Perl data tables useful in parsing HTML")
1690 (description
1691 "The HTML::Tagset module contains several data tables useful in various
1692 kinds of HTML parsing operations.")
1693 (home-page "http://search.cpan.org/dist/HTML-Tagset/")))
1694
1695 (define-public perl-http-body
1696 (package
1697 (name "perl-http-body")
1698 (version "1.19")
1699 (source
1700 (origin
1701 (method url-fetch)
1702 (uri (string-append "mirror://cpan/authors/id/G/GE/GETTY/"
1703 "HTTP-Body-" version ".tar.gz"))
1704 (sha256
1705 (base32
1706 "0ahhksj0zg6wq6glpjkxdr3byd5riwvq2f5aw21n1jcsl71nll01"))))
1707 (build-system perl-build-system)
1708 (native-inputs
1709 `(("perl-test-deep" ,perl-test-deep)))
1710 (propagated-inputs
1711 `(("perl-file-temp" ,perl-file-temp)
1712 ("perl-http-message" ,perl-http-message))) ;For HTTP::Headers
1713 (home-page "http://search.cpan.org/dist/HTTP-Body")
1714 (synopsis "HTTP Body Parser")
1715 (description "HTTP::Body parses chunks of HTTP POST data and supports
1716 application/octet-stream, application/json, application/x-www-form-urlencoded,
1717 and multipart/form-data.")
1718 (license (package-license perl))))
1719
1720 (define-public perl-http-cookiejar
1721 (package
1722 (name "perl-http-cookiejar")
1723 (version "0.006")
1724 (source
1725 (origin
1726 (method url-fetch)
1727 (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/"
1728 "HTTP-CookieJar-" version ".tar.gz"))
1729 (sha256
1730 (base32
1731 "0c7l29ak6ba2j006ca00vnkxpyc1fvpikydjvsb24s50zf1mv7b2"))))
1732 (build-system perl-build-system)
1733 (native-inputs
1734 `(("perl-test-deep" ,perl-test-deep)
1735 ("perl-test-requires" ,perl-test-requires)
1736 ("perl-time-mock" ,perl-time-mock)))
1737 (inputs
1738 `(("perl-time-local" ,perl-time-local)
1739 ("perl-http-date" ,perl-http-date)))
1740 (home-page "http://search.cpan.org/dist/HTTP-CookieJar")
1741 (synopsis "Minimalist HTTP user agent cookie jar")
1742 (description "This module implements a minimalist HTTP user agent cookie
1743 jar in conformance with RFC 6265 <http://tools.ietf.org/html/rfc6265>.")
1744 (license l:asl2.0)))
1745
1746 (define-public perl-http-cookies
1747 (package
1748 (name "perl-http-cookies")
1749 (version "6.01")
1750 (source (origin
1751 (method url-fetch)
1752 (uri (string-append
1753 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Cookies-"
1754 version ".tar.gz"))
1755 (sha256
1756 (base32
1757 "087bqmg22dg3vj7gssh3pcsh9y1scimkbl5h1kc8jqyfhgisvlzm"))))
1758 (build-system perl-build-system)
1759 (propagated-inputs
1760 `(("perl-http-message" ,perl-http-message)))
1761 (license (package-license perl))
1762 (synopsis "Perl HTTP cookie jars")
1763 (description
1764 "The HTTP::Cookies class is for objects that represent a cookie jar,
1765 that is, a database of all the HTTP cookies that a given LWP::UserAgent
1766 object knows about.")
1767 (home-page "http://search.cpan.org/~gaas/HTTP-Cookies/")))
1768
1769 (define-public perl-http-daemon
1770 (package
1771 (name "perl-http-daemon")
1772 (version "6.01")
1773 (source (origin
1774 (method url-fetch)
1775 (uri (string-append
1776 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Daemon-"
1777 version ".tar.gz"))
1778 (sha256
1779 (base32
1780 "1hmd2isrkilf0q0nkxms1q64kikjmcw9imbvrjgky6kh89vqdza3"))))
1781 (build-system perl-build-system)
1782 (propagated-inputs
1783 `(("perl-http-message" ,perl-http-message)
1784 ("perl-lwp-mediatypes" ,perl-lwp-mediatypes)))
1785 (license (package-license perl))
1786 (synopsis "Perl simple http server class")
1787 (description
1788 "Instances of the HTTP::Daemon class are HTTP/1.1 servers that listen
1789 on a socket for incoming requests. The HTTP::Daemon is a subclass of
1790 IO::Socket::INET, so you can perform socket operations directly on it too.")
1791 (home-page "http://search.cpan.org/~gaas/HTTP-Daemon/")))
1792
1793 (define-public perl-http-date
1794 (package
1795 (name "perl-http-date")
1796 (version "6.02")
1797 (source (origin
1798 (method url-fetch)
1799 (uri (string-append
1800 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Date-"
1801 version ".tar.gz"))
1802 (sha256
1803 (base32
1804 "0cz357kafhhzw7w59iyi0wvhw7rlh5g1lh38230ckw7rl0fr9fg8"))))
1805 (build-system perl-build-system)
1806 (license (package-license perl))
1807 (synopsis "Perl date conversion routines")
1808 (description
1809 "The HTTP::Date module provides functions that deal with date formats
1810 used by the HTTP protocol (and then some more).")
1811 (home-page "http://search.cpan.org/~gaas/HTTP-Date/")))
1812
1813 (define-public perl-http-message
1814 (package
1815 (name "perl-http-message")
1816 (version "6.06")
1817 (source (origin
1818 (method url-fetch)
1819 (uri (string-append
1820 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Message-"
1821 version ".tar.gz"))
1822 (sha256
1823 (base32
1824 "0qxdrcak97azjvqyx1anpb2ky6vp6vc37x0wcfjdqfajkh09fzh8"))))
1825 (build-system perl-build-system)
1826 (propagated-inputs
1827 `(("perl-http-date" ,perl-http-date)
1828 ("perl-io-html" ,perl-io-html)
1829 ("perl-lwp-mediatypes" ,perl-lwp-mediatypes)
1830 ("perl-uri" ,perl-uri)))
1831 (license (package-license perl))
1832 (synopsis "Perl HTTP style message")
1833 (description
1834 "An HTTP::Message object contains some headers and a content body.")
1835 (home-page "http://search.cpan.org/~gaas/HTTP-Message/")))
1836
1837 (define-public perl-http-negotiate
1838 (package
1839 (name "perl-http-negotiate")
1840 (version "6.01")
1841 (source (origin
1842 (method url-fetch)
1843 (uri (string-append
1844 "mirror://cpan/authors/id/G/GA/GAAS/HTTP-Negotiate-"
1845 version ".tar.gz"))
1846 (sha256
1847 (base32
1848 "05p053vjs5g91v5cmjnny7a3xzddz5k7vnjw81wfh01ilqg9qwhw"))))
1849 (build-system perl-build-system)
1850 (propagated-inputs
1851 `(("perl-http-message" ,perl-http-message)))
1852 (license (package-license perl))
1853 (synopsis "Perl http content negotiation")
1854 (description
1855 "The HTTP::Negotiate module provides a complete implementation of the
1856 HTTP content negotiation algorithm specified in
1857 draft-ietf-http-v11-spec-00.ps chapter 12. Content negotiation allows for
1858 the selection of a preferred content representation based upon attributes
1859 of the negotiable variants and the value of the various Accept* header
1860 fields in the request.")
1861 (home-page "http://search.cpan.org/~gaas/HTTP-Negotiate/")))
1862
1863 (define-public perl-http-parser
1864 (package
1865 (name "perl-http-parser")
1866 (version "0.06")
1867 (source
1868 (origin
1869 (method url-fetch)
1870 (uri (string-append "mirror://cpan/authors/id/E/ED/EDECA/"
1871 "HTTP-Parser-" version ".tar.gz"))
1872 (sha256
1873 (base32
1874 "0idwq3jk595xil65lmxz128ha7s3r2n5zknisddpgwnqrghs3igq"))))
1875 (build-system perl-build-system)
1876 (propagated-inputs
1877 `(("perl-http-message" ,perl-http-message)
1878 ("perl-uri" ,perl-uri)))
1879 (home-page "http://search.cpan.org/dist/HTTP-Parser")
1880 (synopsis "Parse HTTP/1.1 requests")
1881 (description "This is an HTTP request parser. It takes chunks of text as
1882 received and returns a 'hint' as to what is required, or returns the
1883 HTTP::Request when a complete request has been read. HTTP/1.1 chunking is
1884 supported.")
1885 (license (package-license perl))))
1886
1887 (define-public perl-http-parser-xs
1888 (package
1889 (name "perl-http-parser-xs")
1890 (version "0.17")
1891 (source
1892 (origin
1893 (method url-fetch)
1894 (uri (string-append "mirror://cpan/authors/id/K/KA/KAZUHO/"
1895 "HTTP-Parser-XS-" version ".tar.gz"))
1896 (sha256
1897 (base32
1898 "02d84xq1mm53c7jl33qyb7v5w4372vydp74z6qj0vc96wcrnhkkr"))))
1899 (build-system perl-build-system)
1900 (home-page "http://search.cpan.org/dist/HTTP-Parser-XS")
1901 (synopsis "Fast HTTP request parser")
1902 (description "HTTP::Parser::XS is a fast, primitive HTTP request/response
1903 parser.")
1904 (license (package-license perl))))
1905
1906 (define-public perl-http-request-ascgi
1907 (package
1908 (name "perl-http-request-ascgi")
1909 (version "1.2")
1910 (source
1911 (origin
1912 (method url-fetch)
1913 (uri (string-append "mirror://cpan/authors/id/F/FL/FLORA/"
1914 "HTTP-Request-AsCGI-" version ".tar.gz"))
1915 (sha256
1916 (base32
1917 "1smwmiarwcgq7vjdblnb6ldi2x1s5sk5p15p7xvm5byiqq3znnwl"))))
1918 (build-system perl-build-system)
1919 (propagated-inputs
1920 `(("perl-class-accessor" ,perl-class-accessor)
1921 ("perl-http-message" ,perl-http-message)))
1922 (home-page "http://search.cpan.org/dist/HTTP-Request-AsCGI")
1923 (synopsis "Set up a CGI environment from an HTTP::Request")
1924 (description "This module provides a convenient way to set up a CGI
1925 environment from an HTTP::Request.")
1926 (license (package-license perl))))
1927
1928 (define-public perl-http-server-simple
1929 (package
1930 (name "perl-http-server-simple")
1931 (version "0.44")
1932 (source
1933 (origin
1934 (method url-fetch)
1935 (uri (string-append "mirror://cpan/authors/id/J/JE/JESSE/"
1936 "HTTP-Server-Simple-" version ".tar.gz"))
1937 (sha256
1938 (base32
1939 "05klpfkss2a6i5ihmvcm27fyar0f2v4ispg2f49agab3va1gix6g"))))
1940 (build-system perl-build-system)
1941 (arguments
1942 ;; See the discussion of a related tests issue at
1943 ;; https://lists.gnu.org/archive/html/guix-devel/2015-01/msg00346.html
1944 `(#:tests? #f))
1945 (home-page "http://search.cpan.org/dist/HTTP-Server-Simple")
1946 (synopsis "Lightweight HTTP server")
1947 (description "HTTP::Server::Simple is a simple standalone HTTP daemon with
1948 no non-core module dependencies. It can be used for building a standalone
1949 http-based UI to your existing tools.")
1950 (license (package-license perl))))
1951
1952 (define-public perl-http-tiny
1953 (package
1954 (name "perl-http-tiny")
1955 (version "0.053")
1956 (source
1957 (origin
1958 (method url-fetch)
1959 (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/"
1960 "HTTP-Tiny-" version ".tar.gz"))
1961 (sha256
1962 (base32
1963 "1bwy31xrcz5zfx1n3vc50vj1aqvzn5ccr7lgacl8wmi03a6w2af2"))))
1964 (build-system perl-build-system)
1965 (inputs
1966 `(("perl-http-cookiejar" ,perl-http-cookiejar)
1967 ("perl-io-socket-ip" ,perl-io-socket-ip)
1968 ("perl-io-socket-ssl" ,perl-io-socket-ssl)
1969 ("perl-net-ssleay" ,perl-net-ssleay)))
1970 (home-page "http://search.cpan.org/dist/HTTP-Tiny")
1971 (synopsis "HTTP/1.1 client")
1972 (description "This is a very simple HTTP/1.1 client, designed for doing
1973 simple requests without the overhead of a large framework like LWP::UserAgent.
1974 It supports proxies and redirection. It also correctly resumes after EINTR.")
1975 (license (package-license perl))))
1976
1977 (define-public perl-io-html
1978 (package
1979 (name "perl-io-html")
1980 (version "1.00")
1981 (source (origin
1982 (method url-fetch)
1983 (uri (string-append
1984 "mirror://cpan/authors/id/C/CJ/CJM/IO-HTML-"
1985 version ".tar.gz"))
1986 (sha256
1987 (base32
1988 "06nj3a0xgp5jxwxx6ayglfk2v7npf5a7gwkqsjlkapjkybarzqh4"))))
1989 (build-system perl-build-system)
1990 (license (package-license perl))
1991 (synopsis "Perl module to open an HTML file with automatic charset detection")
1992 (description
1993 "IO::HTML provides an easy way to open a file containing HTML while
1994 automatically determining its encoding. It uses the HTML5 encoding sniffing
1995 algorithm specified in section 8.2.2.1 of the draft standard.")
1996 (home-page "http://search.cpan.org/~cjm/IO-HTML/")))
1997
1998 (define-public perl-io-socket-ip
1999 (package
2000 (name "perl-io-socket-ip")
2001 (version "0.36")
2002 (source
2003 (origin
2004 (method url-fetch)
2005 (uri (string-append "mirror://cpan/authors/id/P/PE/PEVANS/"
2006 "IO-Socket-IP-" version ".tar.gz"))
2007 (sha256
2008 (base32
2009 "0ky20hmln6waipzqikizyw04vpszf70fgpshz7ib8zv8480ri456"))))
2010 (build-system perl-build-system)
2011 (home-page "http://search.cpan.org/dist/IO-Socket-IP")
2012 (synopsis "Family-neutral IP socket supporting both IPv4 and IPv6")
2013 (description "This module provides a protocol-independent way to use IPv4
2014 and IPv6 sockets, intended as a replacement for IO::Socket::INET.")
2015 (license (package-license perl))))
2016
2017 (define-public perl-io-socket-ssl
2018 (package
2019 (name "perl-io-socket-ssl")
2020 (version "2.002")
2021 (source (origin
2022 (method url-fetch)
2023 (uri (string-append "mirror://cpan/authors/id/S/SU/SULLR/"
2024 "IO-Socket-SSL-" version ".tar.gz"))
2025 (sha256
2026 (base32
2027 "1mph52lw6x5v44wf8mw00llzi8pp6k5c4jnrnrvlacrlfv260jb8"))))
2028 (build-system perl-build-system)
2029 (propagated-inputs `(("perl-net-ssleay" ,perl-net-ssleay)))
2030 (synopsis "Nearly transparent SSL encapsulation for IO::Socket::INET")
2031 (description
2032 "IO::Socket::SSL makes using SSL/TLS much easier by wrapping the
2033 necessary functionality into the familiar IO::Socket interface and providing
2034 secure defaults whenever possible. This way existing applications can be made
2035 SSL-aware without much effort, at least if you do blocking I/O and don't use
2036 select or poll.")
2037 (license (package-license perl))
2038 (home-page "https://github.com/noxxi/p5-io-socket-ssl")))
2039
2040 (define-public perl-libwww
2041 (package
2042 (name "perl-libwww")
2043 (version "6.13")
2044 (source (origin
2045 (method url-fetch)
2046 (uri (string-append
2047 "mirror://cpan/authors/id/E/ET/ETHER/libwww-perl-"
2048 version ".tar.gz"))
2049 (sha256
2050 (base32
2051 "1cpqjl59viw50bnbdyn8xzrwzg7g54b2rszw0fifacqrppp17gaz"))))
2052 (build-system perl-build-system)
2053 (propagated-inputs
2054 `(("perl-encode-locale" ,perl-encode-locale)
2055 ("perl-file-listing" ,perl-file-listing)
2056 ("perl-html-parser" ,perl-html-parser)
2057 ("perl-http-cookies" ,perl-http-cookies)
2058 ("perl-http-daemon" ,perl-http-daemon)
2059 ("perl-http-negotiate" ,perl-http-negotiate)
2060 ("perl-net-http" ,perl-net-http)
2061 ("perl-www-robotrules" ,perl-www-robotrules)))
2062 (license (package-license perl))
2063 (synopsis "Perl modules for the WWW")
2064 (description
2065 "The libwww-perl collection is a set of Perl modules which provides a
2066 simple and consistent application programming interface to the
2067 World-Wide Web. The main focus of the library is to provide classes
2068 and functions that allow you to write WWW clients. The library also
2069 contains modules that are of more general use and even classes that
2070 help you implement simple HTTP servers.")
2071 (home-page "http://search.cpan.org/dist/libwww-perl/")))
2072
2073 (define-public perl-lwp-mediatypes
2074 (package
2075 (name "perl-lwp-mediatypes")
2076 (version "6.02")
2077 (source (origin
2078 (method url-fetch)
2079 (uri (string-append
2080 "mirror://cpan/authors/id/G/GA/GAAS/LWP-MediaTypes-"
2081 version ".tar.gz"))
2082 (sha256
2083 (base32
2084 "0xmnblp962qy02akah30sji8bxrqcyqlff2w95l199ghql60ny8q"))))
2085 (build-system perl-build-system)
2086 (license (package-license perl))
2087 (synopsis "Perl module to guess the media type for a file or a URL")
2088 (description
2089 "The LWP::MediaTypes module provides functions for handling media (also
2090 known as MIME) types and encodings. The mapping from file extensions to
2091 media types is defined by the media.types file. If the ~/.media.types file
2092 exists it is used instead.")
2093 (home-page "http://search.cpan.org/~gaas/LWP-MediaTypes/")))
2094
2095 (define-public perl-lwp-protocol-https
2096 (package
2097 (name "perl-lwp-protocol-https")
2098 (version "6.06")
2099 (source
2100 (origin
2101 (method url-fetch)
2102 (uri (string-append "mirror://cpan/authors/id/M/MS/MSCHILLI/"
2103 "LWP-Protocol-https-" version ".tar.gz"))
2104 (sha256
2105 (base32
2106 "1vxdjqj4bwq56m9h1bqqwkk3c6jr76f2zqzvwa26yjng3p686v5q"))))
2107 (build-system perl-build-system)
2108 (propagated-inputs
2109 `(("perl-io-socket-ssl" ,perl-io-socket-ssl)
2110 ("perl-libwww" ,perl-libwww)
2111 ;; Users should instead make sure SSL_ca_path is set properly.
2112 ;; ("perl-mozilla-ca" ,perl-mozilla-ca)
2113 ("perl-net-http" ,perl-net-http)))
2114 (home-page "http://search.cpan.org/dist/LWP-Protocol-https")
2115 (synopsis "HTTPS support for LWP::UserAgent")
2116 (description "The LWP::Protocol::https module provides support for using
2117 https schemed URLs with LWP.")
2118 (license (package-license perl))))
2119
2120 (define-public perl-lwp-useragent-determined
2121 (package
2122 (name "perl-lwp-useragent-determined")
2123 (version "1.07")
2124 (source
2125 (origin
2126 (method url-fetch)
2127 (uri (string-append "mirror://cpan/authors/id/A/AL/ALEXMV/"
2128 "LWP-UserAgent-Determined-" version ".tar.gz"))
2129 (sha256
2130 (base32
2131 "0lyvbpjng7yfvyha9rp2y2c6liz5hhplmd2grc8jlsfkih7dbn06"))))
2132 (build-system perl-build-system)
2133 (propagated-inputs
2134 `(("perl-libwww" ,perl-libwww)))
2135 (home-page "http://search.cpan.org/dist/LWP-UserAgent-Determined")
2136 (synopsis "Virtual browser that retries errors")
2137 (description "LWP::UserAgent::Determined works just like LWP::UserAgent,
2138 except that when you use it to get a web page but run into a
2139 possibly-temporary error (like a DNS lookup timeout), it'll wait a few seconds
2140 and retry a few times.")
2141 (license (package-license perl))))
2142
2143 (define-public perl-net-amazon-s3
2144 (package
2145 (name "perl-net-amazon-s3")
2146 (version "0.60")
2147 (source
2148 (origin
2149 (method url-fetch)
2150 (uri (string-append "mirror://cpan/authors/id/P/PF/PFIG/"
2151 "Net-Amazon-S3-" version ".tar.gz"))
2152 (sha256
2153 (base32
2154 "10dcsq4s2kc9cb1vccx17r187c81drirc3s1hbxh3rb8489kg2b2"))
2155 (patches (list
2156 (search-patch "perl-net-amazon-s3-moose-warning.patch")))))
2157 (build-system perl-build-system)
2158 (native-inputs
2159 `(("perl-libwww" ,perl-libwww)
2160 ("perl-test-exception" ,perl-test-exception)))
2161 (propagated-inputs
2162 `(("perl-data-stream-bulk" ,perl-data-stream-bulk)
2163 ("perl-datetime-format-http" ,perl-datetime-format-http)
2164 ("perl-digest-hmac" ,perl-digest-hmac)
2165 ("perl-digest-md5-file" ,perl-digest-md5-file)
2166 ("perl-file-find-rule" ,perl-file-find-rule)
2167 ("perl-http-date" ,perl-http-date)
2168 ("perl-http-message" ,perl-http-message)
2169 ("perl-lwp-useragent-determined" ,perl-lwp-useragent-determined)
2170 ("perl-mime-types" ,perl-mime-types)
2171 ("perl-moose" ,perl-moose)
2172 ("perl-moosex-strictconstructor" ,perl-moosex-strictconstructor)
2173 ("perl-moosex-types-datetime-morecoercions"
2174 ,perl-moosex-types-datetime-morecoercions)
2175 ("perl-path-class" ,perl-path-class)
2176 ("perl-regexp-common" ,perl-regexp-common)
2177 ("perl-term-encoding" ,perl-term-encoding)
2178 ("perl-term-progressbar-simple" ,perl-term-progressbar-simple)
2179 ("perl-uri" ,perl-uri)
2180 ("perl-xml-libxml" ,perl-xml-libxml)))
2181 (home-page "http://search.cpan.org/dist/Net-Amazon-S3")
2182 (synopsis "Perl interface to Amazon S3")
2183 (description "This module provides a Perlish interface to Amazon S3.")
2184 (license (package-license perl))))
2185
2186 (define-public perl-net-http
2187 (package
2188 (name "perl-net-http")
2189 (version "6.07")
2190 (source (origin
2191 (method url-fetch)
2192 (uri (string-append
2193 "mirror://cpan/authors/id/M/MS/MSCHILLI/Net-HTTP-"
2194 version ".tar.gz"))
2195 (sha256
2196 (base32
2197 "0r034hhci0yqbrkrh1gv6vi5g3i0kpd1k84z62nk02asb8rf0ccz"))))
2198 (build-system perl-build-system)
2199 (propagated-inputs
2200 `(("perl-io-socket-ssl" ,perl-io-socket-ssl)
2201 ("perl-uri" ,perl-uri)))
2202 (license (package-license perl))
2203 (synopsis "Perl low-level HTTP connection (client)")
2204 (description
2205 "The Net::HTTP class is a low-level HTTP client. An instance of the
2206 Net::HTTP class represents a connection to an HTTP server. The HTTP protocol
2207 is described in RFC 2616. The Net::HTTP class supports HTTP/1.0 and
2208 HTTP/1.1.")
2209 (home-page "http://search.cpan.org/dist/Net-HTTP")))
2210
2211 (define-public perl-net-server
2212 (package
2213 (name "perl-net-server")
2214 (version "2.008")
2215 (source
2216 (origin
2217 (method url-fetch)
2218 (uri (string-append "mirror://cpan/authors/id/R/RH/RHANDOM/"
2219 "Net-Server-" version ".tar.gz"))
2220 (sha256
2221 (base32
2222 "182gfikn7r40kmm3d35m2qc6r8g0y1j8gxbn9ffaawf8xmm0a889"))))
2223 (build-system perl-build-system)
2224 (home-page "http://search.cpan.org/dist/Net-Server")
2225 (synopsis "Extensible Perl server engine")
2226 (description "Net::Server is an extensible, generic Perl server engine.
2227 It attempts to be a generic server as in Net::Daemon and NetServer::Generic.
2228 It includes with it the ability to run as an inetd
2229 process (Net::Server::INET), a single connection server (Net::Server or
2230 Net::Server::Single), a forking server (Net::Server::Fork), a preforking
2231 server which maintains a constant number of preforked
2232 children (Net::Server::PreForkSimple), or as a managed preforking server which
2233 maintains the number of children based on server load (Net::Server::PreFork).
2234 In all but the inetd type, the server provides the ability to connect to one
2235 or to multiple server ports.")
2236 (license (package-license perl))))
2237
2238 (define-public perl-plack
2239 (package
2240 (name "perl-plack")
2241 (version "1.0033")
2242 (source
2243 (origin
2244 (method url-fetch)
2245 (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/"
2246 "Plack-" version ".tar.gz"))
2247 (sha256
2248 (base32
2249 "081jg0xddzpg2anmqi9i6d7vs6c8z7k557bf8xl6vgb3h95pin5w"))))
2250 (build-system perl-build-system)
2251 (native-inputs
2252 `(("perl-test-requires" ,perl-test-requires)
2253 ("perl-file-sharedir-install" ,perl-file-sharedir-install)))
2254 (propagated-inputs
2255 `(("perl-apache-logformat-compiler" ,perl-apache-logformat-compiler)
2256 ("perl-devel-stacktrace" ,perl-devel-stacktrace)
2257 ("perl-devel-stacktrace-ashtml" ,perl-devel-stacktrace-ashtml)
2258 ("perl-file-sharedir" ,perl-file-sharedir)
2259 ("perl-hash-multivalue" ,perl-hash-multivalue)
2260 ("perl-http-body" ,perl-http-body)
2261 ("perl-http-message" ,perl-http-message)
2262 ("perl-http-tiny" ,perl-http-tiny)
2263 ("perl-libwww" ,perl-libwww)
2264 ("perl-stream-buffered" ,perl-stream-buffered)
2265 ("perl-test-tcp" ,perl-test-tcp)
2266 ("perl-try-tiny" ,perl-try-tiny)
2267 ("perl-uri" ,perl-uri)))
2268 (home-page "http://search.cpan.org/dist/Plack")
2269 (synopsis "Perl Superglue for Web frameworks and servers (PSGI toolkit)")
2270 (description "Plack is a set of tools for using the PSGI stack. It
2271 contains middleware components, a reference server, and utilities for Web
2272 application frameworks. Plack is like Ruby's Rack or Python's Paste for
2273 WSGI.")
2274 (license (package-license perl))))
2275
2276 (define-public perl-plack-middleware-fixmissingbodyinredirect
2277 (package
2278 (name "perl-plack-middleware-fixmissingbodyinredirect")
2279 (version "0.12")
2280 (source
2281 (origin
2282 (method url-fetch)
2283 (uri (string-append "mirror://cpan/authors/id/S/SW/SWEETKID/"
2284 "Plack-Middleware-FixMissingBodyInRedirect-"
2285 version ".tar.gz"))
2286 (sha256
2287 (base32
2288 "14dkrmccq7a5vpymx5dv8032gfcvhsw2i6v5sh3c4ym5ymlx08kc"))))
2289 (build-system perl-build-system)
2290 (native-inputs
2291 `(("perl-html-parser" ,perl-html-parser) ;for HTML::Entities
2292 ("perl-http-message" ,perl-http-message)
2293 ("perl-plack" ,perl-plack))) ;for Plack::Test
2294 (home-page
2295 "http://search.cpan.org/dist/Plack-Middleware-FixMissingBodyInRedirect")
2296 (synopsis "Plack::Middleware which sets body for redirect response")
2297 (description "This module sets the body in redirect response, if it's not
2298 already set.")
2299 (license (package-license perl))))
2300
2301 (define-public perl-plack-middleware-methodoverride
2302 (package
2303 (name "perl-plack-middleware-methodoverride")
2304 (version "0.11")
2305 (source
2306 (origin
2307 (method url-fetch)
2308 (uri (string-append "mirror://cpan/authors/id/D/DW/DWHEELER/"
2309 "Plack-Middleware-MethodOverride-"
2310 version ".tar.gz"))
2311 (sha256
2312 (base32
2313 "1hb8dx7i4vs74n0p737wrvpdnnw6argxrjpr6kj6432zabp8325z"))))
2314 (build-system perl-build-system)
2315 (propagated-inputs
2316 `(("perl-plack" ,perl-plack)))
2317 (home-page "http://search.cpan.org/dist/Plack-Middleware-MethodOverride")
2318 (synopsis "Override REST methods to Plack apps via POST")
2319 (description "This middleware allows for POST requests that pretend to be
2320 something else: by adding either a header named X-HTTP-Method-Override to the
2321 request, or a query parameter named x-tunneled-method to the URI, the client
2322 can say what method it actually meant.")
2323 (license (package-license perl))))
2324
2325 (define-public perl-plack-middleware-removeredundantbody
2326 (package
2327 (name "perl-plack-middleware-removeredundantbody")
2328 (version "0.05")
2329 (source
2330 (origin
2331 (method url-fetch)
2332 (uri (string-append "mirror://cpan/authors/id/S/SW/SWEETKID/"
2333 "Plack-Middleware-RemoveRedundantBody-"
2334 version ".tar.gz"))
2335 (sha256
2336 (base32
2337 "1n3wm0zi8dnk54jx937asl951lslj3jvw0fry4jpzsibg4f6wrx0"))))
2338 (build-system perl-build-system)
2339 (propagated-inputs
2340 `(("perl-plack" ,perl-plack)))
2341 (home-page
2342 "http://search.cpan.org/dist/Plack-Middleware-RemoveRedundantBody")
2343 (synopsis "Plack::Middleware which removes body for HTTP response")
2344 (description "This module removes the body in an HTTP response if it's not
2345 required.")
2346 (license (package-license perl))))
2347
2348 (define-public perl-plack-middleware-reverseproxy
2349 (package
2350 (name "perl-plack-middleware-reverseproxy")
2351 (version "0.15")
2352 (source
2353 (origin
2354 (method url-fetch)
2355 (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/"
2356 "Plack-Middleware-ReverseProxy-"
2357 version ".tar.gz"))
2358 (sha256
2359 (base32
2360 "1zmsccdy6wr5hxzj07r1nsmaymyibk87p95z0wzknjw10lwmqs9f"))))
2361 (build-system perl-build-system)
2362 (propagated-inputs
2363 `(("perl-plack" ,perl-plack)))
2364 (home-page "http://search.cpan.org/dist/Plack-Middleware-ReverseProxy")
2365 (synopsis "Supports app to run as a reverse proxy backend")
2366 (description "Plack::Middleware::ReverseProxy resets some HTTP headers,
2367 which are changed by reverse-proxy. You can specify the reverse proxy address
2368 and stop fake requests using 'enable_if' directive in your app.psgi.")
2369 (license (package-license perl))))
2370
2371 (define-public perl-plack-test-externalserver
2372 (package
2373 (name "perl-plack-test-externalserver")
2374 (version "0.01")
2375 (source
2376 (origin
2377 (method url-fetch)
2378 (uri (string-append "mirror://cpan/authors/id/F/FL/FLORA/"
2379 "Plack-Test-ExternalServer-" version ".tar.gz"))
2380 (sha256
2381 (base32
2382 "1dbg1p3rgvvbkkpvca5jlc2mzx8iqyiybk88al93pvbca65h1g7h"))))
2383 (build-system perl-build-system)
2384 (propagated-inputs
2385 `(("perl-plack" ,perl-plack)))
2386 (home-page "http://search.cpan.org/dist/Plack-Test-ExternalServer")
2387 (synopsis "Run HTTP tests on external live servers")
2388 (description "This module allows your to run your Plack::Test tests
2389 against an external server instead of just against a local application through
2390 either mocked HTTP or a locally spawned server.")
2391 (license (package-license perl))))
2392
2393 (define-public perl-test-tcp
2394 (package
2395 (name "perl-test-tcp")
2396 (version "2.06")
2397 (source
2398 (origin
2399 (method url-fetch)
2400 (uri (string-append "mirror://cpan/authors/id/T/TO/TOKUHIROM/"
2401 "Test-TCP-" version ".tar.gz"))
2402 (sha256
2403 (base32
2404 "0acjwm21y2an4f3fasci9qa0isakh9cgp74fk0bzcdi506xmcjbi"))))
2405 (build-system perl-build-system)
2406 (propagated-inputs
2407 `(("perl-test-sharedfork" ,perl-test-sharedfork)))
2408 (arguments `(#:tests? #f)) ;related to signaling in t/05_sigint.t
2409 (home-page "http://search.cpan.org/dist/Test-TCP")
2410 (synopsis "Testing TCP programs")
2411 (description "Test::TCP is test utilities for TCP/IP programs.")
2412 (license (package-license perl))))
2413
2414 (define-public perl-test-www-mechanize
2415 (package
2416 (name "perl-test-www-mechanize")
2417 (version "1.44")
2418 (source
2419 (origin
2420 (method url-fetch)
2421 (uri (string-append "mirror://cpan/authors/id/P/PE/PETDANCE/"
2422 "Test-WWW-Mechanize-" version ".tar.gz"))
2423 (sha256
2424 (base32
2425 "062pj242vsc73bw11jqpap92ax9wzc9f2m4xhyp1wzrwkfchpl2q"))))
2426 (build-system perl-build-system)
2427 (native-inputs
2428 `(("perl-test-exception" ,perl-test-exception)))
2429 (propagated-inputs
2430 `(("perl-carp-assert-more" ,perl-carp-assert-more)
2431 ("perl-html-form" ,perl-html-form)
2432 ("perl-html-lint" ,perl-html-lint)
2433 ("perl-html-tree" ,perl-html-tree)
2434 ("perl-http-server-simple" ,perl-http-server-simple)
2435 ("perl-libwww" ,perl-libwww)
2436 ("perl-test-longstring" ,perl-test-longstring)
2437 ("perl-www-mechanize" ,perl-www-mechanize)))
2438 (home-page "http://search.cpan.org/dist/Test-WWW-Mechanize")
2439 (synopsis "Testing-specific WWW::Mechanize subclass")
2440 (description "Test::WWW::Mechanize is a subclass of the Perl module
2441 WWW::Mechanize that incorporates features for web application testing.")
2442 (license l:artistic2.0)))
2443
2444 (define-public perl-test-www-mechanize-catalyst
2445 (package
2446 (name "perl-test-www-mechanize-catalyst")
2447 (version "0.60")
2448 (source
2449 (origin
2450 (method url-fetch)
2451 (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
2452 "Test-WWW-Mechanize-Catalyst-" version ".tar.gz"))
2453 (sha256
2454 (base32
2455 "0nhhfrrai3ndziz873vpa1j0vljjnib4wqafd6yyvkf58ad7v0lv"))))
2456 (build-system perl-build-system)
2457 (native-inputs
2458 `(("perl-catalyst-plugin-session" ,perl-catalyst-plugin-session)
2459 ("perl-catalyst-plugin-session-state-cookie"
2460 ,perl-catalyst-plugin-session-state-cookie)
2461 ("perl-test-exception" ,perl-test-exception)
2462 ("perl-test-pod" ,perl-test-pod)
2463 ("perl-test-utf8" ,perl-test-utf8)))
2464 (propagated-inputs
2465 `(("perl-catalyst-runtime" ,perl-catalyst-runtime)
2466 ("perl-class-load" ,perl-class-load)
2467 ("perl-libwww" ,perl-libwww)
2468 ("perl-moose" ,perl-moose)
2469 ("perl-namespace-clean" ,perl-namespace-clean)
2470 ("perl-test-www-mechanize" ,perl-test-www-mechanize)
2471 ("perl-www-mechanize" ,perl-www-mechanize)))
2472 (home-page "http://search.cpan.org/dist/Test-WWW-Mechanize-Catalyst")
2473 (synopsis "Test::WWW::Mechanize for Catalyst")
2474 (description "The Test::WWW::Mechanize::Catalyst module meshes the
2475 Test::WWW:Mechanize module and the Catalyst web application framework to allow
2476 testing of Catalyst applications without needing to start up a web server.")
2477 (license (package-license perl))))
2478
2479 (define-public perl-test-www-mechanize-psgi
2480 (package
2481 (name "perl-test-www-mechanize-psgi")
2482 (version "0.35")
2483 (source
2484 (origin
2485 (method url-fetch)
2486 (uri (string-append "mirror://cpan/authors/id/L/LB/LBROCARD/"
2487 "Test-WWW-Mechanize-PSGI-" version ".tar.gz"))
2488 (sha256
2489 (base32
2490 "1hih8s49zf38bisvhnhzrrj0zwyiivkrbs7nmmdqm1qqy27wv7pc"))))
2491 (build-system perl-build-system)
2492 (native-inputs
2493 `(("perl-test-pod" ,perl-test-pod)))
2494 (propagated-inputs
2495 `(("perl-plack" ,perl-plack)
2496 ("perl-test-www-mechanize" ,perl-test-www-mechanize)))
2497 (home-page "http://search.cpan.org/dist/Test-WWW-Mechanize-PSGI")
2498 (synopsis "Test PSGI programs using WWW::Mechanize")
2499 (description "PSGI is a specification to decouple web server environments
2500 from web application framework code. Test::WWW::Mechanize is a subclass of
2501 WWW::Mechanize that incorporates features for web application testing. The
2502 Test::WWW::Mechanize::PSGI module meshes the two to allow easy testing of PSGI
2503 applications.")
2504 (license (package-license perl))))
2505
2506 (define-public perl-uri
2507 (package
2508 (name "perl-uri")
2509 (version "1.67")
2510 (source (origin
2511 (method url-fetch)
2512 (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
2513 "URI-" version ".tar.gz"))
2514 (sha256
2515 (base32
2516 "0ki7i830gs0cwwwjsyv3s6yy1l76ym8pfqp0lp7vw0j9bwyx923h"))))
2517 (build-system perl-build-system)
2518 (license (package-license perl))
2519 (synopsis "Perl Uniform Resource Identifiers (absolute and relative)")
2520 (description
2521 "The URI module implements the URI class. Objects of this class
2522 represent \"Uniform Resource Identifier references\" as specified in RFC 2396
2523 and updated by RFC 2732.")
2524 (home-page "http://search.cpan.org/dist/URI/")))
2525
2526 (define-public perl-uri-find
2527 (package
2528 (name "perl-uri-find")
2529 (version "20140709")
2530 (source
2531 (origin
2532 (method url-fetch)
2533 (uri (string-append "mirror://cpan/authors/id/M/MS/MSCHWERN/"
2534 "URI-Find-" version ".tar.gz"))
2535 (sha256
2536 (base32
2537 "0czc4h182s7sx3k123m7qlg7yybnwxgh369hap3c3b6xgrglrhy0"))))
2538 (build-system perl-build-system)
2539 (propagated-inputs
2540 `(("perl-uri" ,perl-uri)))
2541 (home-page "http://search.cpan.org/dist/URI-Find")
2542 (synopsis "Find URIs in arbitrary text")
2543 (description "This module finds URIs and URLs (according to what URI.pm
2544 considers a URI) in plain text. It only finds URIs which include a
2545 scheme (http:// or the like), for something a bit less strict, consider
2546 URI::Find::Schemeless. For a command-line interface, urifind is provided.")
2547 (license (package-license perl))))
2548
2549 (define-public perl-uri-ws
2550 (package
2551 (name "perl-uri-ws")
2552 (version "0.03")
2553 (source
2554 (origin
2555 (method url-fetch)
2556 (uri (string-append "mirror://cpan/authors/id/P/PL/PLICEASE/"
2557 "URI-ws-" version ".tar.gz"))
2558 (sha256
2559 (base32
2560 "1vs1wm80sq685944g1l4a0fxcbccc00c0f9648yabdmcf90hwsvf"))))
2561 (build-system perl-build-system)
2562 (propagated-inputs
2563 `(("perl-uri" ,perl-uri)))
2564 (home-page "http://search.cpan.org/dist/URI-ws")
2565 (synopsis "WebSocket support for URI package")
2566 (description "With this module, the URI package provides the same set of
2567 methods for WebSocket URIs as it does for HTTP URIs.")
2568 (license (package-license perl))))
2569
2570 (define-public perl-www-curl
2571 (package
2572 (name "perl-www-curl")
2573 (version "4.17")
2574 (source (origin
2575 (method url-fetch)
2576 (uri (string-append
2577 "mirror://cpan/authors/id/S/SZ/SZBALINT/WWW-Curl-"
2578 version".tar.gz"))
2579 (sha256
2580 (base32
2581 "1fmp9aib1kaps9vhs4dwxn7b15kgnlz9f714bxvqsd1j1q8spzsj"))))
2582 (build-system perl-build-system)
2583 (arguments
2584 '(#:tests? #f)) ;XXX: tests require network access
2585 (inputs `(("curl" ,curl)))
2586 (synopsis "Perl extension interface for libcurl")
2587 (description
2588 "This is a Perl extension interface for the libcurl file downloading
2589 library.")
2590 (license (package-license perl))
2591 (home-page "http://search.cpan.org/~szbalint/WWW-Curl-4.17/lib/WWW/Curl.pm")))
2592
2593 (define-public perl-www-mechanize
2594 (package
2595 (name "perl-www-mechanize")
2596 (version "1.73")
2597 (source
2598 (origin
2599 (method url-fetch)
2600 (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
2601 "WWW-Mechanize-" version ".tar.gz"))
2602 (sha256
2603 (base32
2604 "1zrw8aadhwy48q51x2z2rqlkwf17bya4j4h3hy89mw783j96rmg9"))))
2605 (build-system perl-build-system)
2606 (propagated-inputs
2607 `(("perl-html-form" ,perl-html-form)
2608 ("perl-html-parser" ,perl-html-parser)
2609 ("perl-http-message" ,perl-http-message)
2610 ("perl-http-server-simple" ,perl-http-server-simple)
2611 ("perl-libwww" ,perl-libwww)
2612 ("perl-test-warn" ,perl-test-warn)
2613 ("perl-uri" ,perl-uri)))
2614 (home-page "http://search.cpan.org/dist/WWW-Mechanize")
2615 (synopsis "Web browsing in a Perl object")
2616 (description "WWW::Mechanize is a Perl module for stateful programmatic
2617 web browsing, used for automating interaction with websites.")
2618 (license (package-license perl))))
2619
2620 (define-public perl-www-robotrules
2621 (package
2622 (name "perl-www-robotrules")
2623 (version "6.02")
2624 (source (origin
2625 (method url-fetch)
2626 (uri (string-append
2627 "mirror://cpan/authors/id/G/GA/GAAS/WWW-RobotRules-"
2628 version ".tar.gz"))
2629 (sha256
2630 (base32
2631 "07m50dp5n5jxv3m93i55qvnd67a6g7cvbvlik115kmc8lbkh5da6"))))
2632 (build-system perl-build-system)
2633 (propagated-inputs
2634 `(("perl-uri" ,perl-uri)))
2635 (license (package-license perl))
2636 (synopsis "Perl database of robots.txt-derived permissions")
2637 (description
2638 "The WWW::RobotRules module parses /robots.txt files as specified in
2639 \"A Standard for Robot Exclusion\", at
2640 <http://www.robotstxt.org/wc/norobots.html>. Webmasters can use the
2641 /robots.txt file to forbid conforming robots from accessing parts of
2642 their web site.")
2643 (home-page "http://search.cpan.org/~gaas/WWW-RobotRules/")))