Commit | Line | Data |
---|---|---|
233e7676 | 1 | ;;; GNU Guix --- Functional package management for GNU |
45f5cae6 | 2 | ;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org> |
15974e63 | 3 | ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> |
aeccd1bd | 4 | ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> |
73fc71ba | 5 | ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org> |
c44899a2 | 6 | ;;; |
233e7676 | 7 | ;;; This file is part of GNU Guix. |
c44899a2 | 8 | ;;; |
233e7676 | 9 | ;;; GNU Guix is free software; you can redistribute it and/or modify it |
c44899a2 LC |
10 | ;;; under the terms of the GNU General Public License as published by |
11 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
12 | ;;; your option) any later version. | |
13 | ;;; | |
233e7676 | 14 | ;;; GNU Guix is distributed in the hope that it will be useful, but |
c44899a2 LC |
15 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of |
16 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 | ;;; GNU General Public License for more details. | |
18 | ;;; | |
19 | ;;; You should have received a copy of the GNU General Public License | |
233e7676 | 20 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. |
c44899a2 | 21 | |
1ffa7090 | 22 | (define-module (gnu packages perl) |
4a44e743 | 23 | #:use-module (guix licenses) |
59a43334 | 24 | #:use-module (gnu packages) |
c44899a2 | 25 | #:use-module (guix packages) |
87f5d366 | 26 | #:use-module (guix download) |
15974e63 AE |
27 | #:use-module (guix build-system gnu) |
28 | #:use-module (guix build-system perl)) | |
c44899a2 | 29 | |
73fc71ba EB |
30 | ;;; |
31 | ;;; Please: Try to add new module packages in alphabetic order. | |
32 | ;;; | |
33 | ||
34 | \f | |
c44899a2 LC |
35 | (define-public perl |
36 | ;; Yeah, Perl... It is required early in the bootstrap process by Linux. | |
37 | (package | |
38 | (name "perl") | |
39 | (version "5.16.1") | |
40 | (source (origin | |
87f5d366 | 41 | (method url-fetch) |
c44899a2 LC |
42 | (uri (string-append "http://www.cpan.org/src/5.0/perl-" |
43 | version ".tar.gz")) | |
44 | (sha256 | |
45 | (base32 | |
de80b504 LC |
46 | "15qxzba3a50c9nik5ydgyfp62x7h9vxxn12yd1jgl93hb1wj96km")) |
47 | (patches (list (search-patch "perl-no-sys-dirs.patch"))))) | |
c44899a2 LC |
48 | (build-system gnu-build-system) |
49 | (arguments | |
12abb19d | 50 | '(#:tests? #f |
12abb19d LC |
51 | #:phases |
52 | (alist-replace | |
53 | 'configure | |
54 | (lambda* (#:key inputs outputs #:allow-other-keys) | |
55 | (let ((out (assoc-ref outputs "out")) | |
56 | (libc (assoc-ref inputs "libc"))) | |
57 | ;; Use the right path for `pwd'. | |
58 | (substitute* "dist/Cwd/Cwd.pm" | |
59 | (("/bin/pwd") | |
60 | (which "pwd"))) | |
c44899a2 | 61 | |
12abb19d LC |
62 | (zero? |
63 | (system* "./Configure" | |
64 | (string-append "-Dprefix=" out) | |
65 | (string-append "-Dman1dir=" out "/share/man/man1") | |
66 | (string-append "-Dman3dir=" out "/share/man/man3") | |
67 | "-de" "-Dcc=gcc" | |
68 | "-Uinstallusrbinperl" | |
69 | "-Dinstallstyle=lib/perl5" | |
70 | "-Duseshrplib" | |
71 | (string-append "-Dlocincpth=" libc "/include") | |
72 | (string-append "-Dloclibpth=" libc "/lib"))))) | |
73 | %standard-phases))) | |
a18eda27 LC |
74 | (native-search-paths (list (search-path-specification |
75 | (variable "PERL5LIB") | |
af070955 | 76 | (files '("lib/perl5/site_perl"))))) |
c44899a2 LC |
77 | (synopsis "Implementation of the Perl programming language") |
78 | (description | |
79 | "Perl 5 is a highly capable, feature-rich programming language with over | |
80 | 24 years of development.") | |
81 | (home-page "http://www.perl.org/") | |
4a44e743 | 82 | (license gpl1+))) ; or "Artistic" |
15974e63 | 83 | |
ba5324c3 JD |
84 | (define-public perl-archive-zip |
85 | (package | |
86 | (name "perl-archive-zip") | |
87 | (version "1.30") | |
88 | (source | |
89 | (origin | |
90 | (method url-fetch) | |
91 | (uri (string-append | |
92 | "mirror://cpan/authors/id/A/AD/ADAMK/Archive-Zip-" | |
93 | version ".tar.gz")) | |
94 | (sha256 | |
95 | (base32 | |
96 | "0633zah5z9njiqnvy3vh42fjymncmil1jdfb7d18w8xpfzzp5d7q")))) | |
97 | (build-system perl-build-system) | |
98 | (synopsis "Perl API to zip files") | |
99 | (description "The Archive::Zip module allows a Perl program to create, | |
100 | manipulate, read, and write Zip archive files.") | |
101 | (home-page "http://search.cpan.org/~phred/Archive-Zip-1.37/lib/Archive/Zip.pm") | |
102 | (license (package-license perl)))) | |
05093579 | 103 | |
2aa46624 EB |
104 | (define-public perl-benchmark-timer |
105 | (package | |
106 | (name "perl-benchmark-timer") | |
107 | (version "0.7102") | |
108 | (source (origin | |
109 | (method url-fetch) | |
110 | (uri (string-append "mirror://cpan/authors/id/D/DC/DCOPPIT/" | |
111 | "Benchmark-Timer-" version ".tar.gz")) | |
112 | (sha256 | |
113 | (base32 | |
114 | "1gl9ybm9hgia3ld5s11b7bv2p2hmx5rss5hxcfy6rmbzrjcnci01")))) | |
115 | (build-system perl-build-system) | |
116 | ;; The optional input module Statistics::PointEstimation (from | |
117 | ;; Statistics-TTest) lists no license. | |
118 | (synopsis "Benchmarking with statistical confidence") | |
119 | (description | |
120 | "The Benchmark::Timer class allows you to time portions of code | |
121 | conveniently, as well as benchmark code by allowing timings of repeated | |
122 | trials. It is perfect for when you need more precise information about the | |
123 | running time of portions of your code than the Benchmark module will give you, | |
124 | but don't want to go all out and profile your code.") | |
125 | (home-page (string-append "http://search.cpan.org/~dcoppit/" | |
126 | "Benchmark-Timer-" version)) | |
127 | (license gpl2))) | |
63edfca4 | 128 | |
6f38dce7 RW |
129 | (define-public perl-capture-tiny |
130 | (package | |
131 | (name "perl-capture-tiny") | |
132 | (version "0.28") | |
133 | (source | |
134 | (origin | |
135 | (method url-fetch) | |
136 | (uri (string-append | |
137 | "mirror://cpan/authors/id/D/DA/DAGOLDEN/Capture-Tiny-" | |
138 | version ".tar.gz")) | |
139 | (sha256 | |
140 | (base32 | |
141 | "117gmwipql1y5xnw9jil3lhdsrf2wsm9wjdzqj66x971n3fwm573")))) | |
142 | (build-system perl-build-system) | |
143 | (home-page "http://search.cpan.org/dist/Capture-Tiny") | |
144 | (synopsis "Capture STDOUT and STDERR from Perl, XS or external programs") | |
145 | (description | |
146 | "Capture::Tiny provides a simple, portable way to capture almost anything | |
147 | sent to STDOUT or STDERR, regardless of whether it comes from Perl, from XS | |
148 | code or from an external program. Optionally, output can be teed so that it | |
149 | is captured while being passed through to the original file handles.") | |
150 | (license asl2.0))) | |
151 | ||
73fc71ba EB |
152 | (define-public perl-clone |
153 | (package | |
154 | (name "perl-clone") | |
155 | (version "0.37") | |
156 | (source (origin | |
157 | (method url-fetch) | |
158 | (uri (string-append "mirror://cpan/authors/id/G/GA/GARU/" | |
159 | "Clone-" version ".tar.gz")) | |
160 | (sha256 | |
161 | (base32 | |
162 | "17fdhxpzrq2nwim3zkcrz4m9gjixp0i886yz54ysrshxy3k53wnr")))) | |
163 | (build-system perl-build-system) | |
164 | (synopsis "Recursively copy Perl datatypes") | |
165 | (description | |
166 | "This module provides a clone() method which makes recursive copies of | |
167 | nested hash, array, scalar and reference types, including tied variables and | |
168 | objects.") | |
169 | (home-page (string-append "http://search.cpan.org/~garu/" | |
170 | "Clone-" version)) | |
171 | (license (package-license perl)))) | |
172 | ||
a77ed67d EB |
173 | (define-public perl-cpan-meta-check |
174 | (package | |
175 | (name "perl-cpan-meta-check") | |
176 | (version "0.009") | |
177 | (source | |
178 | (origin | |
179 | (method url-fetch) | |
180 | (uri (string-append "mirror://cpan/authors/id/L/LE/LEONT/" | |
181 | "CPAN-Meta-Check-" version ".tar.gz")) | |
182 | (sha256 | |
183 | (base32 | |
184 | "0qbk5dwvhd78qgq5x6nim2n0l78pylvlklpbrm56w9yss6pl6bgb")))) | |
185 | (build-system perl-build-system) | |
186 | (native-inputs `(("perl-test-deep" ,perl-test-deep))) | |
187 | (propagated-inputs `(("perl-cpan-meta" ,perl-cpan-meta))) | |
188 | (home-page "http://search.cpan.org/dist/CPAN-Meta-Check") | |
189 | (synopsis "Verify requirements in a CPAN::Meta object") | |
190 | (description "This module verifies if requirements described in a | |
191 | CPAN::Meta object are present.") | |
192 | (license (package-license perl)))) | |
193 | ||
14205764 RW |
194 | (define-public perl-data-optlist |
195 | (package | |
196 | (name "perl-data-optlist") | |
197 | (version "0.109") | |
198 | (source | |
199 | (origin | |
200 | (method url-fetch) | |
201 | (uri (string-append | |
202 | "mirror://cpan/authors/id/R/RJ/RJBS/Data-OptList-" | |
203 | version ".tar.gz")) | |
204 | (sha256 | |
205 | (base32 | |
206 | "1j44rm2spprlq3bc80cxni3dzs3gfjiqv1qc9q7820n1qj0wgmqw")))) | |
207 | (build-system perl-build-system) | |
208 | (propagated-inputs | |
fc8c2f7b EB |
209 | `(("perl-sub-install" ,perl-sub-install) |
210 | ("perl-params-util" ,perl-params-util))) | |
14205764 RW |
211 | (home-page "http://search.cpan.org/dist/Data-OptList") |
212 | (synopsis "Parse and validate simple name/value option pairs") | |
213 | (description | |
214 | "Data::OptList provides a simple syntax for name/value option pairs.") | |
215 | (license (package-license perl)))) | |
216 | ||
73fc71ba EB |
217 | (define-public perl-digest-sha1 |
218 | (package | |
219 | (name "perl-digest-sha1") | |
220 | (version "2.13") | |
221 | (source (origin | |
222 | (method url-fetch) | |
223 | (uri (string-append "mirror://cpan/authors/id/G/GA/GAAS/" | |
224 | "Digest-SHA1-" version ".tar.gz")) | |
225 | (sha256 | |
226 | (base32 | |
227 | "1k23p5pjk42vvzg8xcn4iwdii47i0qm4awdzgbmz08bl331dmhb8")))) | |
228 | (build-system perl-build-system) | |
229 | (synopsis "Perl implementation of the SHA-1 message digest algorithm") | |
230 | (description | |
231 | "This package provides 'Digest::SHA1', an implementation of the NIST | |
232 | SHA-1 message digest algorithm for use by Perl programs.") | |
233 | (home-page (string-append "http://search.cpan.org/~gaas/Digest-SHA1-" | |
234 | version "/SHA1.pm")) | |
235 | (license (package-license perl)))) | |
236 | ||
b7d9aa59 EB |
237 | (define-public perl-dist-checkconflicts |
238 | (package | |
239 | (name "perl-dist-checkconflicts") | |
240 | (version "0.11") | |
241 | (source (origin | |
242 | (method url-fetch) | |
243 | (uri (string-append "mirror://cpan/authors/id/D/DO/DOY/" | |
244 | "Dist-CheckConflicts-" version ".tar.gz")) | |
245 | (sha256 | |
246 | (base32 | |
247 | "1i7dr9jpdiy2nijl2p4q5zg2q2s9ckbj2hs4kmnnckf9hsb4p17a")))) | |
248 | (build-system perl-build-system) | |
249 | (native-inputs `(("perl-test-fatal" ,perl-test-fatal))) | |
250 | (propagated-inputs | |
251 | `(("perl-module-runtime" ,perl-module-runtime))) | |
252 | (home-page "http://search.cpan.org/dist/Dist-CheckConflicts") | |
253 | (synopsis "Declare version conflicts for your dist") | |
254 | (description "This module allows you to specify conflicting versions of | |
255 | modules separately and deal with them after the module is done installing.") | |
256 | (license (package-license perl)))) | |
257 | ||
63edfca4 EB |
258 | (define-public perl-exporter-lite |
259 | (package | |
260 | (name "perl-exporter-lite") | |
261 | (version "0.06") | |
262 | (source (origin | |
263 | (method url-fetch) | |
264 | (uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/" | |
265 | "Exporter-Lite-" version ".tar.gz")) | |
266 | (sha256 | |
267 | (base32 | |
268 | "0k4gkvid4fr8yvwj0axdx5111mzfw2iipls3qllxr364fqhmclpj")))) | |
269 | (build-system perl-build-system) | |
270 | (synopsis "Lightweight exporting of functions and variables") | |
271 | (description | |
272 | "Exporter::Lite is an alternative to Exporter, intended to provide a | |
273 | lightweight subset of the most commonly-used functionality. It supports | |
274 | import(), @EXPORT and @EXPORT_OK and not a whole lot else.") | |
275 | (home-page (string-append "http://search.cpan.org/~neilb/" | |
276 | "Exporter-Lite-" version)) | |
277 | (license (package-license perl)))) | |
8ba06a38 | 278 | |
73fc71ba EB |
279 | (define-public perl-file-list |
280 | (package | |
281 | (name "perl-file-list") | |
282 | (version "0.3.1") | |
283 | (source (origin | |
284 | (method url-fetch) | |
285 | (uri (string-append | |
286 | "mirror://cpan/authors/id/D/DO/DOPACKI/File-List-" | |
287 | version ".tar.gz")) | |
288 | (sha256 | |
289 | (base32 | |
290 | "00m5ax4aq59hdvav6yc4g63vhx3a57006rglyypagvrzfxjvm8s8")))) | |
291 | (build-system perl-build-system) | |
292 | (arguments | |
293 | `(#:phases | |
294 | (alist-cons-after | |
295 | 'unpack 'cd | |
296 | (lambda* _ | |
297 | (chdir "List")) | |
298 | %standard-phases))) | |
299 | (license (package-license perl)) | |
300 | (synopsis "Perl extension for crawling directory trees and compiling | |
301 | lists of files") | |
302 | (description | |
303 | "The File::List module crawls the directory tree starting at the | |
304 | provided base directory and can return files (and/or directories if desired) | |
305 | matching a regular expression.") | |
306 | (home-page "http://search.cpan.org/~dopacki/File-List/"))) | |
307 | ||
308 | (define-public perl-file-which | |
309 | (package | |
310 | (name "perl-file-which") | |
311 | (version "1.09") | |
312 | (source (origin | |
313 | (method url-fetch) | |
314 | (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" | |
315 | "File-Which-" version ".tar.gz")) | |
316 | (sha256 | |
317 | (base32 | |
318 | "1hxjyh9yrv32f3g8vrnr8iylzprajsac14vjm75kf1qnj1jyqbxp")))) | |
319 | (build-system perl-build-system) | |
320 | (native-inputs `(("test-script" ,perl-test-script))) | |
321 | (synopsis "Portable implementation of the `which' utility") | |
322 | (description | |
323 | "File::Which was created to be able to get the paths to executable | |
324 | programs on systems under which the `which' program wasn't implemented in the | |
325 | shell.") | |
326 | (home-page (string-append "http://search.cpan.org/~adamk/" | |
327 | "File-Which-" version)) | |
328 | (license (package-license perl)))) | |
329 | ||
330 | (define-public perl-getopt-tabular | |
331 | (package | |
332 | (name "perl-getopt-tabular") | |
333 | (version "0.3") | |
334 | (source (origin | |
335 | (method url-fetch) | |
336 | (uri (string-append "mirror://cpan/authors/id/G/GW/GWARD/" | |
337 | "Getopt-Tabular-" version ".tar.gz")) | |
338 | (sha256 | |
339 | (base32 | |
340 | "0xskl9lcj07sdfx5dkma5wvhhgf5xlsq0khgh8kk34dm6dv0dpwv")))) | |
341 | (build-system perl-build-system) | |
342 | (synopsis "Table-driven argument parsing for Perl") | |
343 | (description | |
344 | "Getopt::Tabular is a Perl 5 module for table-driven argument parsing, | |
345 | vaguely inspired by John Ousterhout's Tk_ParseArgv.") | |
346 | (home-page (string-append "http://search.cpan.org/~gward/" | |
347 | "Getopt-Tabular-" version)) | |
348 | (license (package-license perl)))) | |
349 | ||
350 | (define-public perl-io-tty | |
351 | (package | |
352 | (name "perl-io-tty") | |
353 | (version "1.11") | |
354 | (source (origin | |
355 | (method url-fetch) | |
356 | (uri (string-append "mirror://cpan/authors/id/T/TO/TODDR/IO-Tty-" | |
357 | version ".tar.gz")) | |
358 | (sha256 | |
359 | (base32 | |
360 | "0lgd9xcbi4gf4gw1ka6fj94my3w1f3k1zamb4pfln0qxz45zlxx4")))) | |
361 | (build-system perl-build-system) | |
362 | (home-page "http://search.cpan.org/~toddr/IO-Tty/") | |
363 | (synopsis "Perl interface to pseudo ttys") | |
364 | (description | |
365 | "This package provides the 'IO::Pty' and 'IO::Tty' Perl interfaces to | |
366 | pseudo ttys.") | |
367 | (license (package-license perl)))) | |
368 | ||
369 | (define-public perl-ipc-run3 | |
370 | (package | |
371 | (name "perl-ipc-run3") | |
372 | (version "0.048") | |
373 | (source (origin | |
374 | (method url-fetch) | |
375 | (uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/" | |
376 | "IPC-Run3-" version ".tar.gz")) | |
377 | (sha256 | |
378 | (base32 | |
379 | "0r9m8q78bg7yycpixd7738jm40yz71p2q7inm766kzsw3g6c709x")))) | |
380 | (build-system perl-build-system) | |
381 | (synopsis "Run a subprocess with input/ouput redirection") | |
382 | (description | |
383 | "The IPC::Run3 module allows you to run a subprocess and redirect stdin, | |
384 | stdout, and/or stderr to files and perl data structures. It aims to satisfy | |
385 | 99% of the need for using system, qx, and open3 with a simple, extremely | |
386 | Perlish API and none of the bloat and rarely used features of IPC::Run.") | |
387 | (home-page (string-append "http://search.cpan.org/~rjbs/" | |
388 | "IPC-Run3-" version)) | |
389 | ;; "You may use this module under the terms of the BSD, Artistic, or GPL | |
390 | ;; licenses, any version." | |
391 | (license (list bsd-3 gpl3+)))) | |
392 | ||
185082c8 EB |
393 | (define-public perl-module-runtime |
394 | (package | |
395 | (name "perl-module-runtime") | |
396 | (version "0.014") | |
397 | (source | |
398 | (origin | |
399 | (method url-fetch) | |
400 | (uri (string-append "mirror://cpan/authors/id/Z/ZE/ZEFRAM/" | |
401 | "Module-Runtime-" version ".tar.gz")) | |
402 | (sha256 | |
403 | (base32 | |
404 | "19326f094jmjs6mgpwkyisid54k67w34br8yfh0gvaaml87gwi2c")))) | |
405 | (build-system perl-build-system) | |
406 | (home-page "http://search.cpan.org/dist/Module-Runtime") | |
407 | (synopsis "Perl runtime module handling") | |
408 | (description "The functions exported by this module deal with runtime | |
409 | handling of Perl modules, which are normally handled at compile time.") | |
410 | (license (package-license perl)))) | |
411 | ||
8ba06a38 RW |
412 | (define-public perl-params-util |
413 | (package | |
414 | (name "perl-params-util") | |
415 | (version "1.07") | |
416 | (source | |
417 | (origin | |
418 | (method url-fetch) | |
419 | (uri (string-append | |
420 | "mirror://cpan/authors/id/A/AD/ADAMK/Params-Util-" | |
421 | version ".tar.gz")) | |
422 | (sha256 | |
423 | (base32 | |
424 | "0v67sx93yhn7xa0nh9mnbf8mixf54czk6wzrjsp6dzzr5hzyrw9h")))) | |
425 | (build-system perl-build-system) | |
426 | (home-page "http://search.cpan.org/dist/Params-Util") | |
427 | (synopsis "Simple, compact and correct param-checking functions") | |
428 | (description | |
429 | "Params::Util provides a basic set of importable functions that makes | |
430 | checking parameters easier.") | |
431 | (license (package-license perl)))) | |
7850f47a EB |
432 | |
433 | (define-public perl-probe-perl | |
434 | (package | |
435 | (name "perl-probe-perl") | |
436 | (version "0.03") | |
437 | (source (origin | |
438 | (method url-fetch) | |
439 | (uri (string-append "mirror://cpan/authors/id/K/KW/KWILLIAMS/" | |
440 | "Probe-Perl-" version ".tar.gz")) | |
441 | (sha256 | |
442 | (base32 | |
443 | "0c9wiaz0mqqknafr4jdr0g2gdzxnn539182z0icqaqvp5qgd5r6r")))) | |
444 | (build-system perl-build-system) | |
445 | (synopsis "Information about the currently running perl") | |
446 | (description | |
447 | "Probe::Perl provides methods for obtaining information about the | |
448 | currently running perl interpreter. It originally began life as code in the | |
449 | Module::Build project, but has been externalized here for general use.") | |
450 | (home-page (string-append "http://search.cpan.org/~kwilliams/" | |
451 | "Probe-Perl-" version)) | |
452 | (license (package-license perl)))) | |
c7518b04 | 453 | |
73fc71ba | 454 | (define-public perl-regexp-common |
c7518b04 | 455 | (package |
73fc71ba EB |
456 | (name "perl-regexp-common") |
457 | (version "2013031301") | |
c7518b04 EB |
458 | (source (origin |
459 | (method url-fetch) | |
73fc71ba EB |
460 | (uri (string-append "mirror://cpan/authors/id/A/AB/ABIGAIL/" |
461 | "Regexp-Common-" version ".tar.gz")) | |
c7518b04 EB |
462 | (sha256 |
463 | (base32 | |
73fc71ba | 464 | "112wybsm0vr8yfannx6sdfvgp5vza28gjgr3pgn69ak4sac836kj")))) |
c7518b04 | 465 | (build-system perl-build-system) |
73fc71ba | 466 | (synopsis "Provide commonly requested regular expressions") |
c7518b04 | 467 | (description |
73fc71ba EB |
468 | "This module exports a single hash (`%RE') that stores or generates |
469 | commonly needed regular expressions. Patterns currently provided include: | |
470 | balanced parentheses and brackets, delimited text (with escapes), integers and | |
471 | floating-point numbers in any base (up to 36), comments in 44 languages, | |
472 | offensive language, lists of any pattern, IPv4 addresses, URIs, and Zip | |
473 | codes.") | |
474 | (home-page (string-append "http://search.cpan.org/~abigail/" | |
475 | "Regexp-Common-" version)) | |
476 | ;; Quad-licensed: Perl Artistic, Perl Artistic 2.0, X11, and BSD. | |
477 | (license (list (package-license perl) x11 bsd-3)))) | |
2e66590a | 478 | |
61593ab3 RW |
479 | (define-public perl-sub-exporter |
480 | (package | |
481 | (name "perl-sub-exporter") | |
482 | (version "0.987") | |
483 | (source | |
484 | (origin | |
485 | (method url-fetch) | |
486 | (uri (string-append | |
487 | "mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-" | |
488 | version ".tar.gz")) | |
489 | (sha256 | |
490 | (base32 | |
491 | "1ml3n1ck4ln9qjm2mcgkczj1jb5n1fkscz9c4x23v4db0glb4g2l")))) | |
492 | (build-system perl-build-system) | |
493 | (propagated-inputs | |
494 | `(("perl-data-optlist" ,perl-data-optlist) | |
495 | ("perl-params-util" ,perl-params-util))) | |
496 | (home-page "http://search.cpan.org/dist/Sub-Exporter") | |
497 | (synopsis "Sophisticated exporter for custom-built routines") | |
498 | (description | |
499 | "Sub::Exporter provides a sophisticated alternative to Exporter.pm for | |
500 | custom-built routines.") | |
501 | (license (package-license perl)))) | |
502 | ||
aeccd1bd RW |
503 | (define-public perl-sub-install |
504 | (package | |
505 | (name "perl-sub-install") | |
506 | (version "0.928") | |
507 | (source | |
508 | (origin | |
509 | (method url-fetch) | |
510 | (uri (string-append | |
511 | "mirror://cpan/authors/id/R/RJ/RJBS/Sub-Install-" | |
512 | version ".tar.gz")) | |
513 | (sha256 | |
514 | (base32 | |
515 | "03zgk1yh128gciyx3q77zxzxg9kf8yy2gm46gdxqi24mcykngrb1")))) | |
516 | (build-system perl-build-system) | |
517 | (home-page "http://search.cpan.org/dist/Sub-Install") | |
518 | (synopsis "Install subroutines into packages easily") | |
519 | (description | |
520 | "Sub::Install makes it easy to install subroutines into packages without | |
521 | the unsightly mess of C<no strict> or typeglobs lying about where just anyone | |
522 | can see them.") | |
523 | (license (package-license perl)))) | |
524 | ||
73fc71ba EB |
525 | (define-public perl-sys-cpu |
526 | (package | |
527 | (name "perl-sys-cpu") | |
528 | (version "0.61") | |
529 | (source (origin | |
530 | (method url-fetch) | |
531 | (uri (string-append "mirror://cpan/authors/id/M/MZ/MZSANFORD/" | |
532 | "Sys-CPU-" version ".tar.gz")) | |
533 | (sha256 | |
534 | (base32 | |
535 | "1r6976bs86j7zp51m5vh42xlyah951jgdlkimv202413kjvqc2i5")))) | |
536 | (build-system perl-build-system) | |
537 | (synopsis "Perl extension for getting CPU information") | |
538 | (description | |
539 | "In responce to a post on perlmonks.org, a module for counting the number | |
540 | of CPU's on a system. Support has now also been added for type of CPU and | |
541 | clock speed.") | |
542 | (home-page (string-append "http://search.cpan.org/~mzsanford/" | |
543 | "Sys-CPU-" version)) | |
544 | (license (package-license perl)))) | |
545 | ||
0ad3969f RW |
546 | (define-public perl-test-deep |
547 | (package | |
548 | (name "perl-test-deep") | |
549 | (version "0.114") | |
550 | (source (origin | |
551 | (method url-fetch) | |
552 | (uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/" | |
553 | "Test-Deep-" version ".tar.gz")) | |
554 | (sha256 | |
555 | (base32 | |
556 | "09yr47vw7vj27sdik312x08938higcij8ybyq8k67mlccx8cpqf0")))) | |
557 | (build-system perl-build-system) | |
558 | (inputs `(("perl-test-tester" ,perl-test-tester) | |
559 | ("perl-test-nowarnings" ,perl-test-nowarnings))) | |
560 | (synopsis "Flexible deep comparison for the Test::Builder framework") | |
561 | (description | |
562 | "Test::Deep compares two structures by going through each level, ensuring | |
563 | that the values match, that arrays and hashes have the same elements and that | |
564 | references are blessed into the correct class. It also handles circular data | |
565 | structures without getting caught in an infinite loop.") | |
566 | (home-page (string-append "http://search.cpan.org/~rjbs/" | |
567 | "Test-Deep-" version)) | |
568 | (license gpl1+))) ; or "Artistic License" | |
569 | ||
07b2c254 EB |
570 | (define-public perl-test-fatal |
571 | (package | |
572 | (name "perl-test-fatal") | |
573 | (version "0.014") | |
574 | (source | |
575 | (origin | |
576 | (method url-fetch) | |
577 | (uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/" | |
578 | "Test-Fatal-" version ".tar.gz")) | |
579 | (sha256 | |
580 | (base32 | |
581 | "1c6bs68mss4q7cyapkv2c0jn66i21050p0faxf3s3417gdffzp5w")))) | |
582 | (build-system perl-build-system) | |
583 | (propagated-inputs `(("perl-try-tiny" ,perl-try-tiny))) | |
584 | (home-page "http://search.cpan.org/dist/Test-Fatal") | |
585 | (synopsis "Simple helpers for testing code with exceptions") | |
586 | (description "Test::Fatal is an alternative to the popular | |
587 | Test::Exception. It does much less, but should allow greater flexibility in | |
588 | testing exception-throwing code with about the same amount of typing.") | |
589 | (license (package-license perl)))) | |
590 | ||
9dc8a157 RW |
591 | (define-public perl-test-nowarnings |
592 | (package | |
593 | (name "perl-test-nowarnings") | |
594 | (version "1.04") | |
595 | (source (origin | |
596 | (method url-fetch) | |
597 | (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" | |
598 | "Test-NoWarnings-" version ".tar.gz")) | |
599 | (sha256 | |
600 | (base32 | |
601 | "0v385ch0hzz9naqwdw2az3zdqi15gka76pmiwlgsy6diiijmg2k3")))) | |
602 | (build-system perl-build-system) | |
603 | (inputs `(("perl-test-tester" ,perl-test-tester))) | |
604 | (synopsis "Ensure no warnings are produced while testing") | |
605 | (description | |
606 | "This modules causes any warnings during testing to be captured and | |
607 | stored. It automatically adds an extra test that will run when your script | |
608 | ends to check that there were no warnings. If there were any warings, the | |
609 | test will fail and output diagnostics of where, when and what the warning was, | |
610 | including a stack trace of what was going on when it occurred.") | |
611 | (home-page (string-append "http://search.cpan.org/~adamk/" | |
612 | "Test-NoWarnings-" version)) | |
613 | (license lgpl2.1))) | |
614 | ||
73fc71ba EB |
615 | (define-public perl-test-output |
616 | (package | |
617 | (name "perl-test-output") | |
618 | (version "1.03") | |
619 | (source (origin | |
620 | (method url-fetch) | |
621 | (uri (string-append "mirror://cpan/authors/id/B/BD/BDFOY/" | |
622 | "Test-Output-" version ".tar.gz")) | |
623 | (sha256 | |
624 | (base32 | |
625 | "12991jnzj4cbw9whhprmqvnzd1ayii84g2mh8vxbjngwqrjsy41i")))) | |
626 | (build-system perl-build-system) | |
627 | (propagated-inputs | |
628 | `(("perl-capture-tiny" ,perl-capture-tiny) | |
629 | ("perl-test-tester" ,perl-test-tester) | |
630 | ("perl-sub-exporter" ,perl-sub-exporter))) | |
631 | (synopsis "Utilities to test STDOUT and STDERR messages") | |
632 | (description | |
633 | "Test::Output provides a simple interface for testing output sent to | |
634 | STDOUT or STDERR. A number of different utilities are included to try and be | |
635 | as flexible as possible to the tester.") | |
636 | (home-page (string-append "http://search.cpan.org/~bdfoy/" | |
637 | "Test-Output-" version)) | |
638 | (license (package-license perl)))) | |
639 | ||
2e66590a EB |
640 | (define-public perl-test-script |
641 | (package | |
642 | (name "perl-test-script") | |
643 | (version "1.07") | |
644 | (source (origin | |
645 | (method url-fetch) | |
646 | (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" | |
647 | "Test-Script-" version ".tar.gz")) | |
648 | (sha256 | |
649 | (base32 | |
650 | "15pb4zzsnm33msc1syhig2bk05xqc0pckmfyahdwbd177bj5w7p2")))) | |
651 | (build-system perl-build-system) | |
652 | (propagated-inputs | |
653 | `(("probe-perl" ,perl-probe-perl) | |
654 | ("ipc-run3" ,perl-ipc-run3))) | |
655 | (synopsis "Basic cross-platform tests for scripts") | |
656 | (description | |
657 | "The intent of the Test::Script module is to provide a series of basic | |
658 | tests for 80% of the testing you will need to do for scripts in the script (or | |
659 | bin as is also commonly used) paths of your Perl distribution.") | |
660 | (home-page (string-append "http://search.cpan.org/~adamk/" | |
661 | "Test-Script-" version)) | |
662 | (license (package-license perl)))) | |
31f3976a | 663 | |
7576cbd6 RW |
664 | (define-public perl-test-simple |
665 | (package | |
666 | (name "perl-test-simple") | |
884529b7 | 667 | (version "1.001014") |
7576cbd6 RW |
668 | (source (origin |
669 | (method url-fetch) | |
670 | (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/" | |
671 | "Test-Simple-" version ".tar.gz")) | |
672 | (sha256 | |
673 | (base32 | |
884529b7 | 674 | "0szi95shwwdvc4nqykzgx05g2m1001mjhvqqhjg5wypbi771992m")))) |
7576cbd6 RW |
675 | (build-system perl-build-system) |
676 | (synopsis "Basic utilities for writing tests") | |
677 | (description | |
678 | "Test::Simple contains basic utilities for writing tests.") | |
679 | (home-page (string-append "http://search.cpan.org/~exodist/" | |
680 | "Test-Simple-" version)) | |
681 | (license (package-license perl)))) | |
682 | ||
ea0a52d7 RW |
683 | (define-public perl-test-tester |
684 | (package | |
685 | (name "perl-test-tester") | |
686 | (version "0.109") | |
687 | (source (origin | |
688 | (method url-fetch) | |
689 | (uri (string-append "mirror://cpan/authors/id/F/FD/FDALY/" | |
690 | "Test-Tester-" version ".tar.gz")) | |
691 | (sha256 | |
692 | (base32 | |
693 | "0m9n28z09kq455r5nydj1bnr85lvmbfpcbjdkjfbpmfb5xgciiyk")))) | |
694 | (build-system perl-build-system) | |
695 | (synopsis "Simplify running Test::Builder tests") | |
696 | (description | |
697 | "Test::Tester allows testing of test modules based on Test::Builder with | |
698 | a minimum of effort.") | |
699 | (home-page (string-append "http://search.cpan.org/~fdaly/" | |
700 | "Test-Tester-" version)) | |
701 | ;; "Under the same license as Perl itself" | |
702 | (license (package-license perl)))) | |
90fb2e24 | 703 | |
90ae6151 EB |
704 | (define-public perl-try-tiny |
705 | (package | |
706 | (name "perl-try-tiny") | |
707 | (version "0.22") | |
708 | (source | |
709 | (origin | |
710 | (method url-fetch) | |
711 | (uri (string-append "mirror://cpan/authors/id/D/DO/DOY/" | |
712 | "Try-Tiny-" version ".tar.gz")) | |
713 | (sha256 | |
714 | (base32 | |
715 | "068vdbpacfawc3lkfs0b82xxl27h3l0gj14iada3vlwk8rps9yv0")))) | |
716 | (build-system perl-build-system) | |
717 | (home-page "http://search.cpan.org/dist/Try-Tiny") | |
718 | (synopsis "Minimal try/catch with proper preservation of $@") | |
719 | (description "This module provides bare bones try/catch/finally statements | |
720 | that are designed to minimize common mistakes with eval blocks, and nothing | |
721 | else.") | |
722 | (license x11))) | |
723 | ||
90fb2e24 EB |
724 | \f |
725 | ;;; Some packaged modules need versions of core modules that are newer than | |
726 | ;;; those in our perl 5.16.1. | |
727 | ||
e0b8689c EB |
728 | (define-public perl-cpan-meta |
729 | (package | |
730 | (name "perl-cpan-meta") | |
731 | (version "2.143240") | |
732 | (source | |
733 | (origin | |
734 | (method url-fetch) | |
735 | (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" | |
736 | "CPAN-Meta-" version ".tar.gz")) | |
737 | (sha256 | |
738 | (base32 | |
739 | "1d80bxphpp5dq7fx5ipxszn7j8q9d85w6fnapdrbym21k1vsmlf6")))) | |
740 | (build-system perl-build-system) | |
741 | (propagated-inputs | |
742 | `(("perl-cpan-meta-requirements" ,perl-cpan-meta-requirements) | |
743 | ("perl-cpan-meta-yaml" ,perl-cpan-meta-yaml) | |
744 | ("perl-parse-cpan-meta" ,perl-parse-cpan-meta))) | |
745 | (home-page "http://search.cpan.org/dist/CPAN-Meta") | |
746 | (synopsis "Distribution metadata for a CPAN dist") | |
747 | (description "Software distributions released to the CPAN include a | |
748 | META.json or, for older distributions, META.yml, which describes the | |
749 | distribution, its contents, and the requirements for building and installing | |
750 | the distribution. The data structure stored in the META.json file is | |
751 | described in CPAN::Meta::Spec. CPAN::Meta provides a simple class to | |
752 | represent this distribution metadata (or distmeta), along with some helpful | |
753 | methods for interrogating that data.") | |
754 | (license (package-license perl)))) | |
755 | ||
90fb2e24 EB |
756 | (define-public perl-cpan-meta-requirements |
757 | (package | |
758 | (name "perl-cpan-meta-requirements") | |
759 | (version "2.131") | |
760 | (source | |
761 | (origin | |
762 | (method url-fetch) | |
763 | (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" | |
764 | "CPAN-Meta-Requirements-" version ".tar.gz")) | |
765 | (sha256 | |
766 | (base32 | |
767 | "12p5s7w3cwcrbpcrxzanvpr0syswhwlqzbaki6m044c45jix2fss")))) | |
768 | (build-system perl-build-system) | |
769 | (home-page "http://search.cpan.org/dist/CPAN-Meta-Requirements") | |
770 | (synopsis "Set of version requirements for a CPAN dist") | |
771 | (description "A CPAN::Meta::Requirements object models a set of version | |
772 | constraints like those specified in the META.yml or META.json files in CPAN | |
773 | distributions, and as defined by CPAN::Meta::Spec. It can be built up by | |
774 | adding more and more constraints, and will reduce them to the simplest | |
775 | representation.") | |
776 | (license (package-license perl)))) | |
777 | ||
6f2768c3 EB |
778 | (define-public perl-cpan-meta-yaml |
779 | (package | |
780 | (name "perl-cpan-meta-yaml") | |
781 | (version "0.012") | |
782 | (source | |
783 | (origin | |
784 | (method url-fetch) | |
785 | (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" | |
786 | "CPAN-Meta-YAML-" version ".tar.gz")) | |
787 | (sha256 | |
788 | (base32 | |
789 | "0a0d62w8d81kkas4j1h48znk0f0vrpibl31gvz9r8hm77dbqqwkw")))) | |
790 | (build-system perl-build-system) | |
791 | (arguments | |
792 | `(#:tests? #f)) ;Tests require Test::More >= 0.99 | |
793 | (home-page "http://search.cpan.org/dist/CPAN-Meta-YAML") | |
794 | (synopsis "Read and write a subset of YAML for CPAN Meta files") | |
795 | (description "This module implements a subset of the YAML specification | |
796 | for use in reading and writing CPAN metadata files like META.yml and | |
797 | MYMETA.yml.") | |
798 | (license (package-license perl)))) | |
90fb2e24 | 799 | |
70e83462 EB |
800 | (define-public perl-parse-cpan-meta |
801 | (package | |
802 | (name "perl-parse-cpan-meta") | |
803 | (version "1.4414") | |
804 | (source | |
805 | (origin | |
806 | (method url-fetch) | |
807 | (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" | |
808 | "Parse-CPAN-Meta-" version ".tar.gz")) | |
809 | (sha256 | |
810 | (base32 | |
811 | "06ya2rg599qanqb1fxiyrd489mvmdgzbw4ph23hwjwpv9lahhxnd")))) | |
812 | (build-system perl-build-system) | |
813 | (propagated-inputs | |
814 | `(("perl-cpan-meta-yaml" ,perl-cpan-meta-yaml))) | |
815 | (home-page "http://search.cpan.org/dist/Parse-CPAN-Meta") | |
816 | (synopsis "Parse META.yml and META.json CPAN metadata files") | |
817 | (description "Parse::CPAN::Meta is a parser for META.json and META.yml | |
818 | files, using JSON::PP and/or CPAN::Meta::YAML.") | |
819 | (license (package-license perl)))) | |
820 | ||
90fb2e24 | 821 | ;;; END: Core module overrides |