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