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