;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2013, 2019 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2013, 2019, 2020 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017, 2019, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
;;; Copyright © 2016, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2016 ng0 <ng0@n0.is>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co>
;;; Copyright © 2016, 2018, 2020 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
-;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017 Raoul J.P. Bonnal <ilpuccio.febo@gmail.com>
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Stephen J. Scheck <sscheck@cpan.org>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
+;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
+;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
(define-module (gnu packages perl)
#:use-module (srfi srfi-1)
- #:use-module (guix licenses)
+ #:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system perl)
#:use-module (gnu packages base)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages databases)
+ #:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages gd)
+ #:use-module (gnu packages gl)
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages hurd)
+ #:use-module (gnu packages image)
#:use-module (gnu packages less)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages perl-web)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages readline)
- #:use-module (gnu packages textutils))
+ #:use-module (gnu packages sdl)
+ #:use-module (gnu packages textutils)
+ #:use-module (gnu packages video)
+ #:use-module (gnu packages web)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
;; Yeah, Perl... It is required early in the bootstrap process by Linux.
(package
(name "perl")
- (version "5.30.1")
+ (version "5.30.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cpan/src/5.0/perl-"
version ".tar.gz"))
(sha256
(base32
- "0r7r8a7pkgxp3w5lza559ahxczw6hzpwvhkpc4c99vpi3xbjagdz"))
+ "128nfdxcvxfn5kq55qcfrx2851ys8hv794dcdxbyny8rm7w7vnv6"))
(patches (search-patches
"perl-no-sys-dirs.patch"
"perl-autosplit-default-time.patch"
(add-before 'configure 'setup-configure
(lambda _
;; Use the right path for `pwd'.
+ ;; TODO: use coreutils from INPUTS instead of 'which'
+ ;; in next rebuild cycle, see fixup below.
(substitute* "dist/PathTools/Cwd.pm"
(("/bin/pwd")
(which "pwd")))
(("-std=c89")
"-std=gnu89"))
#t))
- (replace 'configure
- (lambda* (#:key configure-flags #:allow-other-keys)
- (format #t "Perl configure flags: ~s~%" configure-flags)
- (apply invoke "./Configure" configure-flags)))
+ ,@(if (%current-target-system)
+ `((add-after 'unpack 'unpack-cross
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (let ((cross-checkout
+ (assoc-ref native-inputs "perl-cross"))
+ (cross-patch
+ (assoc-ref native-inputs "perl-cross-patch")))
+ (rename-file "Artistic" "Artistic.perl")
+ (rename-file "Copying" "Copying.perl")
+ (copy-recursively cross-checkout ".")
+ (format #t "Applying ~a\n" cross-patch)
+ (invoke "patch" "-p1" "-i" cross-patch))
+ (let ((bash (assoc-ref inputs "bash")))
+ (substitute* '("Makefile.config.SH"
+ "cnf/config.guess"
+ "cnf/config.sub"
+ "cnf/configure"
+ "cnf/configure_misc.sh"
+ "miniperl_top")
+ (("! */bin/sh") (string-append "! " bash "/bin/bash"))
+ ((" /bin/sh") (string-append bash "/bin/bash")))
+ (substitute* '("ext/Errno/Errno_pm.PL")
+ (("\\$cpp < errno.c") "$Config{cc} -E errno.c")))
+ #t))
+ (replace 'configure
+ (lambda* (#:key configure-flags outputs inputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (store-directory (%store-directory))
+ (configure-flags
+ (cons*
+ ;; `perl-cross' confuses target and host
+ (string-append "--target=" ,(%current-target-system))
+ (string-append "--prefix=" out)
+ (string-append "-Dcc=" ,(%current-target-system) "-gcc")
+ "-Dbyteorder=1234"
+ (filter (negate
+ (lambda (x) (or (string-prefix? "-d" x)
+ (string-prefix? "-Dcc=" x))))
+ configure-flags)))
+ (bash (assoc-ref inputs "bash"))
+ (coreutils (assoc-ref inputs "coreutils")))
+ (format (current-error-port)
+ "running ./configure ~a\n" (string-join configure-flags))
+ (apply invoke (cons "./configure" configure-flags))
+ (substitute* "config.sh"
+ (((string-append store-directory "/[^/]*-bash-[^/]*"))
+ bash))
+ (substitute* '("config.h")
+ (("^#define SH_PATH .*")
+ (string-append "#define SH_PATH \"" bash "/bin/bash\"\n")))
+ ;;TODO: fix this in setup-configure next rebuild cycle
+ (substitute* "dist/PathTools/Cwd.pm"
+ (((string-append store-directory "/[^/]*-coreutils-[^/]*"))
+ coreutils))
+ #t)))
+ (add-after 'build 'touch-non-built-files-for-install
+ (lambda _
+ ;; `make install' wants to install these although they do
+ ;; not get built...
+ (with-directory-excursion "cpan"
+ (mkdir-p "Pod-Usage/blib/script")
+ (mkdir-p "Pod-Parser/blib/script")
+ (for-each (lambda (file)
+ (call-with-output-file file
+ (lambda (port) (display "" port))))
+ '("Pod-Usage/blib/script/pod2text"
+ "Pod-Usage/blib/script/pod2usage"
+ "Pod-Checker/blib/script/podchecker"
+ "Pod-Parser/blib/script/podselect")))
+ #t)))
+ `((replace 'configure
+ (lambda* (#:key configure-flags #:allow-other-keys)
+ (format #t "Perl configure flags: ~s~%" configure-flags)
+ (apply invoke "./Configure" configure-flags)))))
(add-after 'install 'remove-extra-references
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
"/lib',\n"))))
config2)
#t))))))
+ (inputs
+ (if (%current-target-system)
+ `(("bash" ,bash-minimal)
+ ("coreutils" ,coreutils))
+ '()))
+ (native-inputs
+ (if (%current-target-system)
+ `(("perl-cross"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/arsv/perl-cross")
+ (commit "1.3.3")))
+ (file-name (git-file-name "perl-cross" "1.3.3"))
+ (sha256
+ (base32 "065qbl1x44maykaj8p8za0b6qxj74bz7fi2zsrlydir1mqb1js3d"))))
+ ("perl-cross-patch" ,@(search-patches "perl-cross.patch")))
+ '()))
(native-search-paths (list (search-path-specification
(variable "PERL5LIB")
(files '("lib/perl5/site_perl")))))
administration, web development, network programming, GUI development, and
more.")
(home-page "https://www.perl.org/")
- (license gpl1+))) ; or "Artistic"
+ (license license:gpl1+))) ; or "Artistic"
(define-public perl-algorithm-c3
(package
(name "perl-algorithm-c3")
- (version "0.10")
+ (version "0.11")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
"Algorithm-C3-" version ".tar.gz"))
(sha256
- (base32
- "01hlcaxndls86bl92rkd3fvf9pfa3inxqaimv88bxs95803kmkss"))))
+ (base32 "02ck52cf0yyk57354rd1rp5l0kbfwi1pvg2lh3jadvjxfrkq9x5a"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Algorithm-C3")
(synopsis "Module for merging hierarchies using the C3 algorithm")
implicitly.")
(license (package-license perl))))
+(define-public perl-alien-sdl
+ (package
+ (name "perl-alien-sdl")
+ (version "1.446")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/F/FR/FROGGS/"
+ "Alien-SDL-" version ".tar.gz"))
+ (sha256
+ (base32 "0ajipk43syhlmw0zinbj1i6r46vdlkr06wkx7ivqjgf6qffjran9"))))
+ (build-system perl-build-system)
+ (arguments
+ `(#:module-build-flags
+ ;; XXX: For some reason, `sdl-config' reports stand-alone SDL
+ ;; directory, not SDL-union provided as an input to the
+ ;; package. We force the latter with "--prefix=" option.
+ (list (let ((sdl (assoc-ref %build-inputs "sdl")))
+ (string-append "--with-sdl-config=" sdl "/bin/sdl-config"
+ " --prefix=" sdl)))
+ #:phases
+ (modify-phases %standard-phases
+ ;; Fix "unrecognized option: --with-sdl-config" during build.
+ ;; Reported upstream as
+ ;; <https://github.com/PerlGameDev/SDL/issues/261>. See also
+ ;; <https://github.com/PerlGameDev/SDL/issues/272>.
+ (add-after 'unpack 'fix-build.pl
+ (lambda _
+ (substitute* "Build.PL"
+ (("use Getopt::Long;") "")
+ (("GetOptions\\( \"travis\" => \\\\\\$travis \\);") ""))
+ #t)))))
+ (native-inputs
+ `(("perl-archive-extract" ,perl-archive-extract)
+ ("perl-archive-zip" ,perl-archive-zip)
+ ("perl-capture-tiny" ,perl-capture-tiny)
+ ("perl-file-sharedir" ,perl-file-sharedir)
+ ("perl-file-which" ,perl-file-which)
+ ("perl-module-build" ,perl-module-build)
+ ("perl-text-patch" ,perl-text-patch)))
+ (inputs
+ `(("freetype" ,freetype)
+ ("fontconfig" ,fontconfig)
+ ("pango" ,pango)
+ ("sdl" ,(sdl-union
+ (list sdl sdl-gfx sdl-image sdl-mixer sdl-net sdl-ttf
+ sdl-pango)))
+ ("zlib" ,zlib)))
+ (home-page "https://metacpan.org/release/Alien-SDL")
+ (synopsis "Get, build and use SDL libraries")
+ (description
+ "Alien::SDL can be used to detect and get configuration settings from an
+installed SDL and related libraries. Based on your platform it offers the
+possibility to download and install prebuilt binaries or to build SDL & co.@:
+from source codes.")
+ (license license:perl-license)))
+
(define-public perl-any-moose
(package
(name "perl-any-moose")
(define-public perl-async-interrupt
(package
(name "perl-async-interrupt")
- (version "1.25")
+ (version "1.26")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/ML/MLEHMANN/"
"Async-Interrupt-" version ".tar.gz"))
(sha256
(base32
- "0jh94wj1b6a0cnni8prsb59g5lak5rfj2fw5ng96291zmz2yqp1w"))))
+ "0nq8wqy0gsnwhiw23wsp1dmgzzbf2q1asi85yd0d7cmg4haxsmib"))))
(build-system perl-build-system)
(native-inputs
`(("perl-canary-stability" ,perl-canary-stability)))
(build-system perl-build-system)
(home-page "https://metacpan.org/pod/Attribute::Util")
(synopsis "Assorted general utility attributes")
- (description "This packages provides various utility functions. When used
+ (description "This package provides various utility functions. When used
without argument, this module provides four universally accessible attributes
of general interest as follows:
@itemize
@end itemize")
(license (package-license perl))))
+(define-public perl-authen-dechpwd
+ (package
+ (name "perl-authen-dechpwd")
+ (version "2.007")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Authen-DecHpwd-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0xzind7zr2prjq3zbs2j18snfpshd4xrd7igv4kp67xl0axr6fpl"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (propagated-inputs
+ `(("perl-data-integer" ,perl-data-integer)
+ ("perl-digest-crc" ,perl-digest-crc)
+ ("perl-scalar-string" ,perl-scalar-string)))
+ (home-page "https://metacpan.org/release/Authen-DecHpwd")
+ (synopsis "DEC VMS password hashing")
+ (description "@code{Authen::DecHpwd} implements the
+SYS$HASH_PASSWORD password hashing function from VMS (also known as
+LGI$HPWD) and some associated VMS username and password handling
+functions. The password hashing function is implemented in XS with a
+pure Perl backup version for systems that cannot handle XS.")
+ (license license:gpl2+)))
+
+(define-public perl-authen-passphrase
+ (package
+ (name "perl-authen-passphrase")
+ (version "0.008")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Authen-Passphrase-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0qq4krap687rxf6xr31bg5nj5dqmm1frcm7fq249v1bxc4h4bnsm"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (propagated-inputs
+ `(("perl-authen-dechpwd" ,perl-authen-dechpwd)
+ ("perl-crypt-des" ,perl-crypt-des)
+ ("perl-crypt-eksblowfish" ,perl-crypt-eksblowfish)
+ ("perl-crypt-mysql" ,perl-crypt-mysql)
+ ("perl-crypt-passwdmd5" ,perl-crypt-passwdmd5)
+ ("perl-crypt-unixcrypt_xs" ,perl-crypt-unixcrypt_xs)
+ ("perl-data-entropy" ,perl-data-entropy)
+ ("perl-digest-md4" ,perl-digest-md4)
+ ("perl-module-runtime" ,perl-module-runtime)
+ ("perl-params-classify" ,perl-params-classify)))
+ (home-page "https://metacpan.org/release/Authen-Passphrase")
+ (synopsis "Hashed passwords/passphrases as objects")
+ (description "@code{Authen-Passphrase} is the base class for a
+system of objects that encapsulate passphrases. An object of this
+type is a passphrase recogniser; its job is to recognise whether an
+offered passphrase is the right one. For security such passphrase
+recognisers usually do not themselves know the passphrase they are
+looking for; they can merely recognise it when they see it. There are
+many schemes in use to achieve this effect and the intent of this
+class is to provide a consistent interface to them all. In addition
+to the base class, this module also contains implementations of
+several specific passphrase schemes.")
+ (license license:perl-license)))
+
(define-public perl-autovivification
(package
(name "perl-autovivification")
@@Functions, @@Barewords, @@TieIOMethods, @@UNIVERSALMethods and
@@ExporterSymbols}.")
;; GPLv2 only
- (license gpl2)))
+ (license license:gpl2)))
(define-public perl-benchmark-timer
(package
running time of portions of your code than the Benchmark module will give you,
but don't want to go all out and profile your code.")
(home-page "https://metacpan.org/release/Benchmark-Timer")
- (license gpl2)))
+ (license license:gpl2)))
(define-public perl-bit-vector
(package
object-oriented Perl module for accessing the C library from Perl, and
optionally features overloaded operators for maximum ease of use. The C
library can nevertheless be used stand-alone, without Perl.")
- (license (list (package-license perl) lgpl2.0+))))
+ (license (list (package-license perl) license:lgpl2.0+))))
(define-public perl-boolean
(package
(synopsis "Work with International Standard Book Numbers")
(description "This modules provides tools to deal with International
Standard Book Numbers, including ISBN-10 and ISBN-13.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-business-issn
(package
sent to STDOUT or STDERR, regardless of whether it comes from Perl, from XS
code or from an external program. Optionally, output can be teed so that it
is captured while being passed through to the original file handles.")
- (license asl2.0)))
+ (license license:asl2.0)))
(define-public perl-canary-stability
(package
(synopsis "Convenience wrappers around Carp::Assert")
(description "Carp::Assert::More is a set of handy assertion functions for
Perl.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-carp-clan
(package
(synopsis "Read the CDDB entry for an audio CD in your drive")
(description "This module can retrieve information from the CDDB.")
;; Either GPLv2 or the "Artistic" license.
- (license (list gpl2 artistic2.0))))
+ (license (list license:gpl2 license:artistic2.0))))
+
+(define-public circos
+ (package
+ (name "circos")
+ (version "0.69-9")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://circos.ca/distribution/circos-" version ".tgz"))
+ (sha256
+ (base32 "1ll9yxbk0v64813np0qz6h8bc53qlnhg9y1053b57xgkxgmxgn1l"))
+ (patches (list (search-patch "circos-remove-findbin.patch")))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; There are no tests.
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'build)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (datapath (string-append out "/share/Circos"))
+ (error (string-append out "/share/Circos/error"))
+ (fonts (string-append out "/share/Circos/fonts"))
+ (data (string-append out "/share/Circos/data"))
+ (tiles (string-append out "/share/Circos/tiles"))
+ (etc (string-append out "/share/Circos/etc"))
+ (lib (string-append out "/lib/perl5/site_perl/"
+ ,(package-version perl)))
+ (install-directory (lambda (source target)
+ (mkdir-p target)
+ (copy-recursively source target))))
+ ;; Circos looks into a relative path for its configuration
+ ;; files. We need to provide an absolute path towards the
+ ;; corresponding paths in the store.
+ (substitute* '("bin/circos" "etc/colors_fonts_patterns.conf"
+ "etc/gddiag.conf" "etc/brewer.conf" "README")
+ (("<<include etc") (string-append "<<include " etc)))
+ (substitute* '("etc/colors.conf" "etc/image.black.conf"
+ "etc/patterns.conf" "etc/image.conf")
+ (("<<include ") (string-append "<<include " etc "/")))
+ (substitute* '("etc/fonts.conf" "fonts/README.fonts")
+ (("= fonts") (string-append "= " fonts)))
+ (substitute* "etc/patterns.conf"
+ (("= tiles") (string-append "= " tiles)))
+ (substitute* "lib/Circos/Error.pm"
+ (("error/configuration.missing.txt")
+ (string-append error "/configuration.missing.txt")))
+ (substitute* "etc/housekeeping.conf"
+ (("# data_path = /home/martink/circos-tutorials ")
+ (string-append "data_path = " datapath)))
+ (substitute* "lib/Circos/Configuration.pm"
+ (("my @possibilities = \\(")
+ (string-append "my @possibilities = ("
+ "catfile( \"" datapath "\", $arg ), "
+ "catfile( \"" etc "\", $arg ), "
+ "catfile( \"" etc "/tracks\", $arg ), ")))
+ (for-each install-directory
+ (list "error" "fonts" "data" "tiles" "etc" "lib")
+ (list error fonts data tiles etc lib))
+ (install-file "bin/circos" bin)
+ #t))))))
+ (propagated-inputs
+ `(("perl" ,perl)
+ ("perl-carp" ,perl-carp)
+ ("perl-clone" ,perl-clone)
+ ("perl-config-general" ,perl-config-general)
+ ("perl-digest-md5" ,perl-digest-md5)
+ ("perl-file-temp" ,perl-file-temp)
+ ("perl-font-ttf" ,perl-font-ttf)
+ ("perl-gd" ,perl-gd)
+ ("perl-getopt-long" ,perl-getopt-long)
+ ("perl-list-allutils" ,perl-list-allutils)
+ ("perl-math-bezier" ,perl-math-bezier)
+ ("perl-math-round" ,perl-math-round)
+ ("perl-math-vecstat" ,perl-math-vecstat)
+ ("perl-memoize" ,perl-memoize)
+ ("perl-number-format" ,perl-number-format)
+ ("perl-params-validate" ,perl-params-validate)
+ ("perl-readonly" ,perl-readonly)
+ ("perl-regexp-common" ,perl-regexp-common)
+ ("perl-set-intspan" ,perl-set-intspan)
+ ("perl-statistics-basic" ,perl-statistics-basic)
+ ("perl-svg" ,perl-svg)
+ ("perl-text-balanced" ,perl-text-balanced)
+ ("perl-text-format" ,perl-text-format)
+ ("perl-time-hires" ,perl-time-hires)))
+ (home-page "http://circos.ca/")
+ (synopsis "Generation of circularly composited renditions")
+ (description
+ "Circos is a program for the generation of publication-quality, circularly
+composited renditions of genomic data and related annotations.")
+ (license license:gpl2+)))
(define-public perl-class-accessor
(package
(define-public perl-class-c3
(package
(name "perl-class-c3")
- (version "0.34")
+ (version "0.35")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
"Class-C3-" version ".tar.gz"))
(sha256
- (base32 "1dcibc31v5jwmi6hsdzi7c5ag1sb4wp3kxkibc889qrdj7jm12sd"))))
+ (base32 "0gp3czp6y0jxx4448kz37f7gdxq4vw514bvc0l98rk4glvqkq1c4"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-algorithm-c3" ,perl-algorithm-c3)))
(synopsis "XS implementation of parts of Class::Load")
(description "This module provides an XS implementation for portions of
Class::Load.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-class-methodmaker
(package
with a hook to easily call that original method.")
(license (package-license perl))))
+(define-public perl-class-mix
+ (package
+ (name "perl-class-mix")
+ (version "0.006")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Class-Mix-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "02vwzzqn1s24g525arbrjh9s9j0y1inp3wbr972gh51ri51zciw7"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (propagated-inputs
+ `(("perl-params-classify" ,perl-params-classify)))
+ (home-page "https://metacpan.org/release/Class-Mix")
+ (synopsis "Dynamic class mixing")
+ (description "The @code{mix_class} function provided by this
+module dynamically generates anonymous classes with specified
+inheritance. This is useful where an incomplete class requires use of
+a mixin in order to become instantiable.")
+ (license license:perl-license)))
+
(define-public perl-class-singleton
(package
(name "perl-class-singleton")
(synopsis "Minimalist class construction")
(description "This module offers a minimalist class construction kit. It
uses no non-core modules for any recent Perl.")
- (license asl2.0)))
+ (license license:asl2.0)))
(define-public perl-class-unload
(package
(description "This @code{Clone::Choose} module checks several different
modules which provide a @code{clone()} function and selects an appropriate
one.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-clone-pp
(package
(name "perl-clone-pp")
- (version "1.07")
+ (version "1.08")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/Clone-PP-"
version ".tar.gz"))
(sha256
- (base32
- "15dkhqvih6rx9dnngfwwljcm9s8afb0nbyl2vdvhd8frnw4y31dz"))))
+ (base32 "0y7m25fksiavzg4xj4cm9zkz8rmnk4iqy7lm01m4nmyqlna3082p"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Clone-PP")
(synopsis "Recursively copy Perl datatypes")
counterpart. It reduces the effort required to implement a configuration file
parser in your Perl programme and allows sharing configuration files between
languages.")
- (license bsd-3)))
+ (license license:bsd-3)))
(define-public perl-config-grammar
(package
(description
"This module handles parsing, modifying and creating configuration files
of the style used by the Git version control system.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-config-ini
(package
(synopsis "Extract data from Macintosh BinHex files")
(description
"BinHex is a format for transporting files safely through electronic
-mail, as short-lined, 7-bit, semi-compressed data streams. Ths module
+mail, as short-lined, 7-bit, semi-compressed data streams. This module
provides a means of converting those data streams back into into binary
data.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-cpan-changes
(package
(description
"@code{CPAN::Changes} helps users programmatically read and write
@file{Changes} files that conform to a common specification.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-cpan-distnameinfo
(package
(description
"@code{CPAN::DistnameInfo} uses heuristics to extract the distribution
name and version from filenames.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-cpan-meta-check
(package
versa.")
(license (package-license perl))))
+(define-public perl-crypt-cbc
+ (package
+ (name "perl-crypt-cbc")
+ (version "2.33")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/L/LD/LDS/Crypt-CBC-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0ig698lmpjz7fslnznxm0609lvlnvf4f3s370082nzycnqhxww3a"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-crypt-rijndael" ,perl-crypt-rijndael)))
+ (home-page "https://metacpan.org/release/Crypt-CBC")
+ (synopsis "Encrypt Data with Cipher Block Chaining Mode")
+ (description "@code{Crypt::CBC} is a Perl-only implementation of
+the cryptographic Cipher Block Chaining (CBC) mode. In combination
+with a block cipher such as @code{Crypt::Rijndael} you can encrypt and
+decrypt messages of arbitrarily long length. The encrypted messages
+are compatible with the encryption format used by SSLeay.")
+ (license license:perl-license)))
+
+(define-public perl-crypt-des
+ (package
+ (name "perl-crypt-des")
+ (version "2.07")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/D/DP/DPARIS/Crypt-DES-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1rypxlhpd1jc0c327aghgl9y6ls47drmpvn0a40b4k3vhfsypc9d"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-crypt-cbc" ,perl-crypt-cbc)))
+ (home-page "https://metacpan.org/release/Crypt-DES")
+ (synopsis "DES encryption module")
+ (description "@code{Crypt::DES} is an XS-based implementation of
+the DES cryptography algorithm. The module implements the
+@code{Crypt::CBC} interface which has blocksize, keysize, encrypt and
+decrypt functions.")
+ (license license:bsd-3)))
+
+(define-public perl-crypt-eksblowfish
+ (package
+ (name "perl-crypt-eksblowfish")
+ (version "0.009")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Crypt-Eksblowfish-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0k01aw3qb2s4m1w4dqsc9cycyry1zg3wabdym4vp4421b1ni5irw"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (propagated-inputs
+ `(("perl-class-mix" ,perl-class-mix)))
+ (home-page "https://metacpan.org/release/Crypt-Eksblowfish")
+ (synopsis "The Eksblowfish block cipher")
+ (description "Eksblowfish is a variant of the Blowfish cipher,
+modified to make the key setup very expensive. This doesn't make it
+significantly cryptographically stronger but is intended to hinder
+brute-force attacks. Eksblowfish is a parameterised (family-keyed)
+cipher. It takes a cost parameter that controls how expensive the key
+scheduling is. It also takes a family key, known as the \"salt\".
+Cost and salt parameters together define a cipher family. Within each
+family, the key determines the encryption function. This distribution
+also includes an implementation of @code{bcrypt}, the Unix crypt()
+password hashing algorithm based on Eksblowfish.")
+ (license license:perl-license)))
+
+(define-public perl-crypt-mysql
+ (package
+ (name "perl-crypt-mysql")
+ (version "0.04")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/I/IK/IKEBE/Crypt-MySQL-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1qyx6ha13r0rh80ldv5wy2bq2pa74igwh8817xlapsfgxymdzswk"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-dbd-mysql" ,perl-dbd-mysql)))
+ (propagated-inputs
+ `(("perl-digest-sha1" ,perl-digest-sha1)))
+ (home-page "https://metacpan.org/release/Crypt-MySQL")
+ (synopsis "Emulate the MySQL PASSWORD() function")
+ (description "@code{Crypt::MySQL} emulates the MySQL PASSWORD()
+function. The module does not depend on an interface to the MySQL
+database server. This enables the comparison of encrypted passwords
+without the need for a real MySQL environment.")
+ (license license:perl-license)))
+
+(define-public perl-crypt-passwdmd5
+ (package
+ (name "perl-crypt-passwdmd5")
+ (version "1.40")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/R/RS/RSAVAGE/Crypt-PasswdMD5-"
+ version ".tgz"))
+ (sha256
+ (base32
+ "0j0r74f18nk63phddzqbf7wqma2ci4p4bxvrwrxsy0aklbp6lzdp"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)))
+ (home-page "https://metacpan.org/release/Crypt-PasswdMD5")
+ (synopsis "Interoperable MD5-based crypt() functions")
+ (description "@code{Crypt::PasswdMD5} provides various
+crypt()-compatible interfaces to the MD5-based crypt() function found
+in various *nixes. It is based on the implementation found on FreeBSD
+2.2.[56]-RELEASE.")
+ (license license:perl-license)))
+
(define-public perl-crypt-randpasswd
(package
(name "perl-crypt-randpasswd")
Password Generator\".")
(license (package-license perl))))
+(define-public perl-crypt-rijndael
+ (package
+ (name "perl-crypt-rijndael")
+ (version "1.15")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/L/LE/LEONT/Crypt-Rijndael-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "0qs1b6ma4sj0ip5d8544fzgc1bbankc4qlmznp8hay8dk5arp650"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/Crypt-Rijndael")
+ (synopsis "Crypt::CBC compliant Rijndael encryption module")
+ (description "This module implements the Rijndael cipher which has
+been selected as the Advanced Encryption Standard. The keysize for
+Rijndael is 32 bytes. The blocksize is 16 bytes (128 bits). The
+supported encryption modes are:
+
+@itemize
+@item @code{MODE_CBC}---Cipher Block Chaining
+@item @code{MODE_CFB}---Cipher feedback
+@item @code{MODE_CTR}---Counter mode
+@item @code{MODE_ECB}---Electronic cookbook mode
+@item @code{MODE_OFB}---Output feedback
+@end itemize")
+ (license license:gpl3)))
+
(define-public perl-crypt-rc4
(package
(name "perl-crypt-rc4")
(description "A pure Perl implementation of the RC4 algorithm.")
(license (package-license perl))))
+(define-public perl-crypt-unixcrypt_xs
+ (package
+ (name "perl-crypt-unixcrypt_xs")
+ (version "0.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/B/BO/BORISZ/Crypt-UnixCrypt_XS-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1ajg3x6kwxy4x9p3nw1j36qjxpjvdpi9wkca5gfd86y9q8939sv2"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/Crypt-UnixCrypt_XS")
+ (synopsis "XS interface for a portable traditional crypt function")
+ (description "@code{Crypt::UnixCrypt_XS} implements the DES-based
+Unix @code{crypt} function. For those who need to construct
+non-standard variants of @code{crypt}, the various building blocks
+used in @code{crypt} are also supplied separately.")
+ ;; Files in the 'fcrypt' directory are covered by a BSD licence.
+ (license (list license:perl-license license:bsd-3))))
+
(define-public perl-cwd-guard
(package
(name "perl-cwd-guard")
(description "Chaolin Zhang's Perl Library (czplib) contains assorted
functions and data structures for processing and analysing genomic and
bioinformatics data.")
- (license gpl3+)))
+ (license license:gpl3+)))
(define-public perl-data
(package
they are copies of each other.")
(license (package-license perl))))
+(define-public perl-data-entropy
+ (package
+ (name "perl-data-entropy")
+ (version "0.007")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Data-Entropy-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1r176jjzir2zg5kidx85f7vzi6jsw7ci9vd4kvbr9183lfhw8496"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (propagated-inputs
+ `(("perl-crypt-rijndael" ,perl-crypt-rijndael)
+ ("perl-data-float" ,perl-data-float)
+ ("perl-http-lite" ,perl-http-lite)
+ ("perl-params-classify" ,perl-params-classify)))
+ (home-page "https://metacpan.org/release/Data-Entropy")
+ (synopsis "Entropy (randomness) management")
+ (description "@code{Data::Entropy} provides modules relating to
+the generation and use of entropy. The Data::Entropy::Source class
+manages the entropy coming from a particular source. This class acts
+as a layer over a raw entropy source, which may be a normal I/O handle
+or a special-purpose class. The Data::Entropy::RawSource::* classes
+provide fundamental sources of entropy. The sources specially
+supported are an OS-supplied entropy collector, downloads from servers
+on the Internet, and cryptographic fake entropy. The
+Data::Entropy::Algorithms module contains a collection of fundamental
+algorithms that use entropy. There are random number generators and
+functions to shuffle arrays.")
+ (license license:perl-license)))
+
+(define-public perl-data-integer
+ (package
+ (name "perl-data-integer")
+ (version "0.006")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Data-Integer-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0m53zxhx9sn49yqh7azlpyy9m65g54v8cd2ha98y77337gg7xdv3"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (home-page "https://metacpan.org/release/Data-Integer")
+ (synopsis "Details of the native integer data type")
+ (description "This module is about the native integer numerical
+data type. A native integer is one of the types of datum that can
+appear in the numeric part of a Perl scalar. This module supplies
+constants describing the native integer type. Both signed and
+unsigned representations are handled.")
+ (license license:perl-license)))
+
(define-public perl-data-uniqid
(package
(name "perl-data-uniqid")
@code{Data::Dumper} writes out their contents in Perl syntax. The references
can also be objects. The content of each variable is output in a single Perl
statement. It handles self-referential structures correctly.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-data-dumper-concise
(package
indentation and newlines plus sub deparsing.")
(license (package-license perl))))
+(define-public perl-data-float
+ (package
+ (name "perl-data-float")
+ (version "0.013")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Data-Float-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "12ji4yf3nc965rqqgfhr96w7irpm6n1g15nivfxvhc49hlym5cg2"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (home-page "https://metacpan.org/release/Data-Float")
+ (synopsis "Details of the floating point data type")
+ (description "@code{Data::Float} is about the native floating
+point numerical data type. A floating point number is one of the
+types of datum that can appear in the numeric part of a Perl scalar.
+This module supplies constants describing the native floating point
+type, classification functions and functions to manipulate floating
+point values at a low level.")
+ (license license:perl-license)))
+
(define-public perl-data-optlist
(package
(name "perl-data-optlist")
@item @code{Data::Perl::Bool}
@item @code{Data::Perl::Code}
@end itemize")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-data-printer
(package
of data out of your DATA section.")
(license (package-license perl))))
+(define-public perl-data-section-simple
+ (package
+ (name "perl-data-section-simple")
+ (version "0.07")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/"
+ "Data-Section-Simple-" version ".tar.gz"))
+ (sha256
+ (base32 "1jx9g5sxcw0i2zkm2z895k422i49kpx0idnnvvvs36lhvgzkac0b"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-test-requires" ,perl-test-requires)))
+ (home-page "https://metacpan.org/release/Data-Section-Simple")
+ (synopsis "Read data from __DATA__")
+ (description
+ "Data::Section::Simple is a simple module to extract data from __DATA__
+section of the file.")
+ (license license:perl-license)))
+
(define-public perl-data-stag
(package
(name "perl-data-stag")
(synopsis "XS wrapper for Date::Calc")
(description "Date::Calc::XS is an XS wrapper and C library plug-in for
Date::Calc.")
- (license (list (package-license perl) lgpl2.0+))))
+ (license (list (package-license perl) license:lgpl2.0+))))
(define-public perl-date-manip
(package
(name "perl-date-manip")
- (version "6.78")
+ (version "6.82")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/S/SB/SBECK/"
"Date-Manip-" version ".tar.gz"))
(sha256
- (base32 "1faxj6gafrqir9hvy9r8q57s93n57b412s04qycrks7r0520hdnb"))))
+ (base32 "0ak72kpydwhq2z03mhdfwm3ganddzb8gawzh6crpsjvb9kwvr5ps"))))
(build-system perl-build-system)
(arguments
;; Tests would require tzdata for timezone information, but tzdata is in
interval arithmetic, and day-of-week calculation. It does not deal with
hours, minutes, seconds, and time zones.")
;; Can be used with either license.
- (license (list (package-license perl) gpl2+))))
+ (license (list (package-license perl) license:gpl2+))))
(define-public perl-datetime
(package
(description "DateTime is a class for the representation of date/time
combinations. It represents the Gregorian calendar, extended backwards in
time before its creation (in 1582).")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-datetime-calendar-julian
(package
string formats of dates and times are simple and just require a basic regular
expression to extract the relevant information. Builder provides a simple way
to do this without writing reams of structural code.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-datetime-format-flexible
(package
order to create the appropriate objects.")
(license (package-license perl))))
+(define-public perl-datetime-format-iso8601
+ (package
+ (name "perl-datetime-format-iso8601")
+ (version "0.08")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/J/JH/JHOBLITT/DateTime-Format-ISO8601-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1syccqd5jlwms8v78ksnf68xijzl97jky5vbwhnyhxi5gvgfx8xk"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)))
+ (propagated-inputs
+ `(("perl-datetime" ,perl-datetime)
+ ("perl-datetime-format-builder" ,perl-datetime-format-builder)
+ ("perl-file-find-rule" ,perl-file-find-rule)
+ ("perl-test-distribution" ,perl-test-distribution)
+ ("perl-test-pod" ,perl-test-pod)))
+ (home-page "https://metacpan.org/release/DateTime-Format-ISO8601")
+ (synopsis "Parse ISO8601 date and time formats")
+ (description "@code{DateTime::Format::ISO8601} is a DateTime
+extension that parses almost all ISO8601 date and time formats.")
+ (license license:perl-license)))
+
(define-public perl-datetime-format-natural
(package
(name "perl-datetime-format-natural")
function that is the reverse of `strftime(3)`, for `DateTime`. While
`strftime` takes a `DateTime` and a pattern and returns a string, `strptime`
takes a string and a pattern and returns the `DateTime` object associated.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-datetime-locale
(package
the appropriate objects.")
(license (package-license perl))))
+(define-public perl-devel-callchecker
+ (package
+ (name "perl-devel-callchecker")
+ (version "0.008")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Devel-CallChecker-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1p0ij2k2i81zhl7064h9ghld1w5xy2zsbghkpdzm2hjryl5lwn2x"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (propagated-inputs
+ `(("perl-b-hooks-op-check" ,perl-b-hooks-op-check)
+ ("perl-dynaloader-functions" ,perl-dynaloader-functions)))
+ (home-page "https://metacpan.org/release/Devel-CallChecker")
+ (synopsis "Custom op checking attached to subroutines")
+ (description "This module makes some new features of the Perl
+5.14.0 C API available to XS modules running on older versions of
+Perl. The features are centred around the function
+@code{cv_set_call_checker}, which allows XS code to attach a magical
+annotation to a Perl subroutine, resulting in resolvable calls to that
+subroutine being mutated at compile time by arbitrary C code. This
+module makes @code{cv_set_call_checker} and several supporting
+functions available.")
+ (license license:perl-license)))
+
(define-public perl-devel-caller
(package
(name "perl-devel-caller")
C library and its headers are available. You can also check for the presence of
particular functions in a library, or even that those functions return
particular results.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-devel-checkcompiler
(package
"@code{Devel::Cycle} This is a tool for finding circular references in
objects and other types of references. Because of Perl's reference-count
based memory management, circular references will cause memory leaks.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-devel-globaldestruction
(package
(description
"This module provides a basic way to discover if a piece of perl code is
allocating perl data and not releasing them again.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-devel-lexalias
(package
Devel::StackTrace and Devel::StackTrace::Frame. These objects encapsulate the
information that can be retrieved via Perl's caller() function, as well as
providing a simple interface to this data.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-devel-stacktrace-ashtml
(package
(description "Devel::Symdump provides access to the perl symbol table.")
(license (package-license perl))))
+(define-public perl-digest-crc
+ (package
+ (name "perl-digest-crc")
+ (version "0.22")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/O/OL/OLIMAUL/Digest-CRC-"
+ version ".2.tar.gz"))
+ (sha256
+ (base32
+ "1jvqcyrbi11cj3vlfc9sq2g6rv9caizyjkjqsksvmxn6zgvm0aqi"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/Digest-CRC")
+ (synopsis "Generic CRC functions")
+ (description "The @code{Digest::CRC} module calculates CRC sums of
+all sorts. It contains wrapper functions with the correct parameters
+for CRC-CCITT, CRC-16 and CRC-32.")
+ (license license:public-domain)))
+
(define-public perl-digest-hmac
(package
(name "perl-digest-hmac")
interface for the RFC 2104 HMAC mechanism.")
(license (package-license perl))))
+(define-public perl-digest-md4
+ (package
+ (name "perl-digest-md4")
+ (version "1.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/M/MI/MIKEM/DigestMD4/Digest-MD4-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "19ma1hmvgiznq95ngzvm6v4dfxc9zmi69k8iyfcg6w14lfxi0lb6"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/Digest-MD4")
+ (synopsis "Interface to the MD4 Algorithm")
+ (description "The @code{Digest::MD4} module allows you to use the
+RSA Data Security Inc.@: MD4 Message Digest algorithm from within Perl
+programs. The algorithm takes as input a message of arbitrary length
+and produces as output a 128-bit \"fingerprint\" or \"message digest\"
+of the input. MD4 is described in RFC 1320.")
+ (license license:perl-license)))
+
(define-public perl-digest-md5
(package
(name "perl-digest-md5")
- (version "2.55")
+ (version "2.58")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://cpan/authors/id/G/GA/GAAS/Digest-MD5-"
+ (uri (string-append "mirror://cpan/authors/id/T/TO/TODDR/Digest-MD5-"
version ".tar.gz"))
(sha256
- (base32
- "0g0fklbrm2krswc1xhp4iwn1dhqq71fqh2p5wm8xj9a4s6i9ic83"))))
+ (base32 "057psy6k7im0pr3344ny6k5rsnbqj8aizkmwgw53kbbngabh20kx"))))
(build-system perl-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'build 'set-permissions
- (lambda _
- ;; Make MD5.so read-write so it can be stripped.
- (chmod "blib/arch/auto/Digest/MD5/MD5.so" #o755)
- #t)))))
(home-page "https://metacpan.org/release/Digest-MD5")
(synopsis "Perl interface to the MD-5 algorithm")
(description
modules separately and deal with them after the module is done installing.")
(license (package-license perl))))
+(define-public perl-dynaloader-functions
+ (package
+ (name "perl-dynaloader-functions")
+ (version "0.003")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/DynaLoader-Functions-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "10x13q920j9kid7vmbj6fiaz153042dy4mwdmpzrdrxw2ir39ciy"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (home-page "https://metacpan.org/release/DynaLoader-Functions")
+ (synopsis "Deconstructed dynamic C library loading")
+ (description "This module provides a function-based interface to
+dynamic loading as used by Perl. Some details of dynamic loading are
+very platform-dependent, so correct use of these functions requires
+the programmer to be mindfulof the space of platform variations.")
+ (license license:perl-license)))
+
(define-public perl-encode-detect
(package
(name "perl-encode-detect")
(synopsis "Detect the encoding of data")
(description "This package provides a class @code{Encode::Detect} to detect
the encoding of data.")
- (license mpl1.1)))
+ (license license:mpl1.1)))
(define-public perl-encode-eucjpascii
(package
part of Perl by default, including \"BIG5-1984\", \"BIG5-2003\", \"BIG5PLUS\",
\"BIG5EXT\", \"CCCII\", \"EUC-TW\", \"CNS11643-*\", \"GB18030\", and
\"UNISYS\".")
- (license expat)))
+ (license license:expat)))
(define-public perl-env-path
(package
@command{pkg-config} utility, intended for use in the @file{Makefile.PL}
of perl extensions which bind libraries that @command{pkg-config} knows.
It is really just boilerplate code that you would have written yourself.")
- (license lgpl2.1+)))
+ (license license:lgpl2.1+)))
(define-public perl-extutils-typemaps-default
(package
(synopsis "Watch for changes to files")
(description "This module provides a class to monitor a directory for
changes made to any file.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-file-configdir
(package
@code{chdir} to revert to the original working directory. By storing the
object in a lexical variable with a limited scope, this happens automatically
at the end of the scope.")
- (license asl2.0)))
+ (license license:asl2.0)))
(define-public perl-file-list
(package
have their newest entries appended to them. By default files are assumed to
be plain text and have a line ending appropriate to the OS. But you can set
the input record separator string on a per file basis.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-file-remove
(package
Linux, fsevents on OS X, @code{kqueue} on FreeBSD, and
@code{FindFirstChangeNotification} on Windows if they're installed, and falls
back to a full directory scan if none of these are available.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-getopt-long
(package
(name "perl-getopt-long")
- (version "v2.49.1")
+ (version "2.51")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/J/JV/JV/"
- "Getopt-Long-" (substring version 1) ".tar.gz"))
+ "Getopt-Long-" version ".tar.gz"))
(sha256
- (base32
- "0bw8gbhj8s5gmkqvs3m7pk9arqhgqssrby4yimh29ah9alix9ylq"))))
+ (base32 "0r659i6rkz8zkfgdccbn29zmd4bk9lcdc4y20ng6w2glqaa3pd10"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Getopt-Long")
(synopsis "Module to handle parsing command line options")
bundling of command line options, as was the case with the more traditional
single-letter approach, is provided but not enabled by default.")
;; Can be used with either license.
- (license (list (package-license perl) gpl2+))))
+ (license (list (package-license perl) license:gpl2+))))
(define-public perl-getopt-long-descriptive
(package
(define-public perl-hash-merge
(package
(name "perl-hash-merge")
- (version "0.300")
+ (version "0.302")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://cpan/authors/id/R/RE/REHSACK/"
+ (uri (string-append "mirror://cpan/authors/id/H/HE/HERMES/"
"Hash-Merge-" version ".tar.gz"))
(sha256
- (base32
- "0h3wfnpv5d4d3f9xzmwkchay6251nhzngdv3f6xia56mj4hxabs0"))))
+ (base32 "0i46agids6pk445gfck80f8z7q3pjvkp0ip1vmhqnq1rcpvj41df"))))
(build-system perl-build-system)
+ (native-inputs
+ ;; For tests only.
+ `(("perl-clone" ,perl-clone)
+ ("perl-clone-pp" ,perl-clone-pp)))
(propagated-inputs
`(("perl-clone-choose" ,perl-clone-choose)))
(home-page "https://metacpan.org/release/Hash-Merge")
that may contain multiple values per key, inspired by MultiDict of WebOb.")
(license (package-license perl))))
+(define-public perl-hook-lexwrap
+ (package
+ (name "perl-hook-lexwrap")
+ (version "0.26")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
+ "Hook-LexWrap-" version ".tar.gz"))
+ (sha256
+ (base32 "0bgc6w8zs45n6ksgk0zisn9a2vcr3lmzipkan2a94kzrk1gxq2xn"))))
+ (build-system perl-build-system)
+ (home-page
+ "https://metacpan.org/release/Hook-LexWrap")
+ (synopsis "Lexically scoped subroutine wrappers")
+ (description
+ "Hook::LexWrap allows you to install a pre- or post-wrapper (or
+both) around an existing subroutine. Unlike other modules that
+provide this capacity (e.g., Hook::PreAndPost and Hook::WrapSub),
+Hook::LexWrap implements wrappers in such a way that the standard
+caller function works correctly within the wrapped subroutine.")
+ (license license:perl-license)))
+
(define-public perl-importer
(package
(name "perl-importer")
(description "The inc::latest module helps bootstrap configure-time
dependencies for CPAN distributions. These dependencies get bundled into the
inc directory within a distribution and are used by Makefile.PL or Build.PL.")
- (license asl2.0)))
+ (license license:asl2.0)))
(define-public perl-indirect
(package
a single nifty object oriented interface to greatly simplify your everyday
Perl IO idioms. It exports a single function called io, which returns a new
@code{IO::All} object. And that object can do it all!")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-io-captureoutput
(package
(define-public perl-io-tty
(package
(name "perl-io-tty")
- (version "1.12")
+ (version "1.14")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/T/TO/TODDR/IO-Tty-"
version ".tar.gz"))
(sha256
(base32
- "0399anjy3bc0w8xzsc3qx5vcyqryc9gc52lc7wh7i49hsdq8gvx2"))))
+ "1dcmxdhrapxvvzlfp6yzz7655f3c6x8jrw0md8ndp2qj27iy9wsi"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/IO-Tty")
(synopsis "Perl interface to pseudo ttys")
(home-page "https://metacpan.org/release/IPC-Run3")
;; "You may use this module under the terms of the BSD, Artistic, or GPL
;; licenses, any version."
- (license (list bsd-3 gpl3+))))
+ (license (list license:bsd-3 license:gpl3+))))
(define-public perl-ipc-sharelite
(package
"Lexical::SealRequireHints prevents leakage of lexical hints")
(license (package-license perl))))
+(define-public perl-locale-maketext-lexicon
+ (package
+ (name "perl-locale-maketext-lexicon")
+ (version "1.00")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/D/DR/DRTECH/"
+ "Locale-Maketext-Lexicon-" version ".tar.gz"))
+ (sha256
+ (base32 "0z6w3m6f3r29ljicdigsyvpa9w9j2m65l4gjxcw0wgwdll26ngxp"))))
+ (build-system perl-build-system)
+ (propagated-inputs
+ `(("perl-html-parser" ,perl-html-parser)
+ ("perl-lingua-en-sentence" ,perl-lingua-en-sentence)
+ ("perl-ppi" ,perl-ppi)
+ ("perl-template-toolkit" ,perl-template-toolkit)
+ ("perl-text-haml" ,perl-text-haml)
+ ("perl-yaml" ,perl-yaml)))
+ (home-page "https://metacpan.org/release/Locale-Maketext-Lexicon")
+ (synopsis "Use other catalog formats in Maketext")
+ (description
+ "This module provides lexicon-handling modules to read from other
+localization formats, such as Gettext, Msgcat, and so on.")
+ (license license:x11)))
+
(define-public perl-log-any
(package
(name "perl-log-any")
(define-public perl-libintl-perl
(package
(name "perl-libintl-perl")
- (version "1.31")
+ (version "1.32")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/G/GU/GUIDO/"
"libintl-perl-" version ".tar.gz"))
(sha256
- (base32 "1afandrl44mq9c32r57xr489gkfswdgc97h8x86k98dz1byv3l6a"))))
+ (base32 "19gbbh9w3rl805mv6mg1q80fsrg610h098qhf7ycnkjnyac84440"))))
(build-system perl-build-system)
(arguments
`(#:phases
(description "This package is an internationalization library for Perl
that aims to be compatible with the Uniforum message translations system as
implemented for example in GNU gettext.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public perl-lingua-en-sentence
+ (package
+ (name "perl-lingua-en-sentence")
+ (version "0.31")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/K/KI/KIMRYAN/"
+ "Lingua-EN-Sentence-" version ".tar.gz"))
+ (sha256
+ (base32 "11hlg92khd2azbxndnffsj9lggbxb3lqfdbwc6asr1c9lxlqddms"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)))
+ (home-page "https://metacpan.org/release/Lingua-EN-Sentence")
+ (synopsis "Split text into sentences")
+ (description
+ "The Lingua::EN::Sentence module contains the function get_sentences,
+which splits text into its constituent sentences, based on a regular
+expression and a list of abbreviations (built in and given).")
+ (license license:perl-license)))
(define-public perl-lingua-translit
(package
(define-public perl-list-moreutils
(package
(name "perl-list-moreutils")
- (version "0.428")
+ (version "0.430")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/R/RE/REHSACK/"
"List-MoreUtils-" version ".tar.gz"))
(sha256
- (base32
- "1hkc8xkd27yzfkgaglzn77j4qjmilyva4gaz3pc64vpism2hjgki"))))
+ (base32 "09v5cipjf634a1176wy2wicibzz51lry0d0yim9rnbfl5j2ggcb3"))))
(build-system perl-build-system)
(arguments
`(#:phases
(description "@code{List::MoreUtils::XS} provides some trivial but
commonly needed functionality on lists which is not going to go into
@code{List::Util}.")
- (license asl2.0)))
+ (license license:asl2.0)))
(define-public perl-list-someutils
(package
@item Mail::Util
\"Smart functions\" you should not depend on.
@end table")
- (license perl-license)))
+ (license license:perl-license)))
+
+(define-public perl-mail-sendmail
+ (package
+ (name "perl-mail-sendmail")
+ (version "0.80")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/N/NE/NEILB/Mail-Sendmail-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1r38qbkj7jwj8cqy1rnqzkk81psxi08b1aiq392817f3bk5ri2jv"))))
+ (build-system perl-build-system)
+ (arguments `(#:tests? #f)) ;socket not available during build
+ (home-page "https://metacpan.org/release/Mail-Sendmail")
+ (synopsis "Simple platform independent mailer")
+ (description "Mail::Sendmail is a pure perl module that provides a
+simple means to send email from a perl script. The module only
+requires Perl5 and a network connection.")
+ (license license:perl-license)))
(define-public perl-math-bezier
(package
(description "This module implements the algorithm for the solution of Bezier
curves as presented by Robert D Miller in Graphics Gems V, \"Quick and Simple
Bezier Curve Drawing\".")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-math-round
(package
(synopsis "Perl extension for rounding numbers")
(description "@code{Math::Round} provides functions to round numbers,
both positive and negative, in various ways.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-math-vecstat
(package
(synopsis "Make functions faster by trading space for time")
(description "This package transparently speeds up functions by caching
return values, trading space for time.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-memoize-expirelru
(package
"MIME-tools is a collection of Perl5 MIME:: modules for parsing,
decoding, and generating single- or multipart (even nested multipart) MIME
messages.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-mime-types
(package
XS and pure Perl implementations of a module, or it could be used to load an
implementation for a given OS or any other case of needing to provide multiple
implementations.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-module-install
(package
It can load a @file{MANIFEST} file that comes in a Perl distribution tarball,
examine the contents, and perform some simple tasks. It can also load the
@file{MANIFEST.SKIP} file and check that.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-module-pluggable
(package
using MooseX::MarkAsMethods your overloads will be recognized by Class::MOP as
being methods, and class extension as well as composition from roles with
overloads will \"just work\".")
- (license lgpl2.1)))
+ (license license:lgpl2.1)))
(define-public perl-moosex-methodattributes
(package
changes the default naming policy for the loading class so that accessors are
separated into get and set methods. The get methods have the same name as the
accessor, while set methods are prefixed with \"_set_\".")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-moosex-strictconstructor
(package
(description "Simply loading this module makes your constructors
\"strict\". If your constructor is called with an attribute init argument
that your class does not declare, then it calls Moose->throw_error().")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-moosex-traits-pluggable
(package
(synopsis
"Using Moo and MooX:: packages the most lazy way")
(description "Contains the MooX and MooX::Role packages.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-moox-cmd
(package
(define-public perl-moox-file-configdir
(package
(name "perl-moox-file-configdir")
- (version "0.007")
+ (version "0.008")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/R/RE/REHSACK/"
"MooX-File-ConfigDir-" version ".tar.gz"))
(sha256
- (base32
- "074v150wrbddhy1n0qc8s80zrb71l3c4is968cnr06ac5l9kmshz"))))
+ (base32 "1b033injzk9d8clgip67ps5j5bpkrnag28q89ddwhrgqx12i3m7q"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-file-configdir" ,perl-file-configdir)
(define-public perl-moox-handlesvia
(package
(name "perl-moox-handlesvia")
- (version "0.001008")
+ (version "0.001009")
(source
(origin
(method url-fetch)
(uri (string-append
- "mirror://cpan/authors/id/M/MA/MATTP/MooX-HandlesVia-"
+ "mirror://cpan/authors/id/T/TO/TOBYINK/MooX-HandlesVia-"
version
".tar.gz"))
(sha256
- (base32
- "137yrjn2jmw4cj0fjdajnkjgqr5arnpq72kbm6w66xskncinz55h"))))
+ (base32 "04kcyflg49rclxa1nm035c05jpyvhdacjyy1wklbgv4li3im6qvi"))))
(build-system perl-build-system)
(native-inputs
`(("perl-moox-types-mooselike"
"@code{MooX::HandlesVia} is an extension of Moo's @code{handles}
attribute functionality. It provides a means of proxying functionality from
an external class to the given attribute.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-moox-late
(package
Currently Hash, Array and Code are supported. This feature requires
MooX::HandlesVia.
@end enumerate")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-moox-options
(package
"Loading @code{MooX::StrictConstructor} makes your constructors \"strict\".
If your constructor is called with an attribute init argument that your class
does not declare, then it dies.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-moox-types-mooselike
(package
(description "@code{Mozilla::CA} provides a copy of Mozilla's bundle of
Certificate Authority certificates in a form that can be consumed by modules
and libraries based on OpenSSL.")
- (license mpl2.0)))
+ (license license:mpl2.0)))
(define-public perl-multidimensional
(package
functionality of a RIB (Routing Information Base) nor does it modify the
kernel routing table of the host system. However, such operations could be
implemented using the API provided by the module.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-net-dns-native
(package
native @code{getaddrinfo(3)} implementation, called in a separate thread to
avoid blocking the entire application. Threading overhead is limited by using
system threads instead of Perl threads.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-net-idn-encode
(package
Use this module if you just want to convert domain names (or email addresses),
using whatever IDNA standard is the best choice at the moment.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-net-statsd
(package
each group of three characters counting right to left from the decimal point.
The characters used for the decimal point and the thousands separator come from
the locale information or can be specified by the user.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-number-range
(package
documents within a single file.")
(license (package-license perl))))
+(define-public perl-opengl
+ (package
+ (name "perl-opengl")
+ (version "0.70")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/C/CH/CHM/OpenGL-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1q3lz168q081iwl9jg21fbzhp9la79gav9mv6nmh2jab83s2l3mj"))))
+ (build-system perl-build-system)
+ (inputs `(("freeglut" ,freeglut)
+ ("libxi" ,libxi)
+ ("libxmu" ,libxmu)))
+ (arguments
+ '(#:tests? #f ; test.pl fails with our empty glversion.txt, while
+ ; the package still seems to work on the examples
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'glversion
+ ;; Building utils/glversion.txt fails, and is probably
+ ;; dependent on the graphics card in the build system.
+ ;; Replace it by a content-free file; while this breaks
+ ;; the tests, the examples in the examples/ subdirectory
+ ;; can be run.
+ (lambda _
+ (substitute* "Makefile.PL"
+ (("unlink") "# unlink") ; prevent utils/glversion.txt
+ ; from being deleted once...
+ (("\\.\"\\$make_ver clean\"") "")) ; ...and twice...
+ (substitute* "utils/Makefile"
+ (("all: glversion.txt") "all: ")) ; ...and thrice.
+ (call-with-output-file "utils/glversion.txt"
+ (lambda (port)
+ (display (string-append "FREEGLUT=\nGLUT=\nVERSION=\n"
+ "VENDOR=\nRENDERER=\n"
+ "EXTENSIONS=\n")
+ port)))
+ #t))
+ (add-before 'configure 'fix-library-flags
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "Makefile.PL"
+ (("-L/usr/local/freeglut/lib")
+ (string-append "-L" (assoc-ref inputs "freeglut") "/lib\n"
+ "-L" (assoc-ref inputs "glu") "/lib\n"
+ "-L" (assoc-ref inputs "mesa") "/lib\n")))
+ #t)))))
+ (home-page "https://metacpan.org/release/OpenGL")
+ (synopsis
+ "Perl bindings to the OpenGL API, GLU, and GLUT/FreeGLUT")
+ (description "The package provides Perl bindings to OpenGL, GLU
+and FreeGLUT.")
+ (license (package-license perl))))
+
(define-public perl-package-anon
(package
(name "perl-package-anon")
(synopsis "Manage deprecation warnings for your distribution")
(description "This module allows you to manage a set of deprecations for
one or more modules.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-package-stash
(package
processes to be forked off should be limited.")
(license (package-license perl))))
+(define-public perl-params-classify
+ (package
+ (name "perl-params-classify")
+ (version "0.015")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Params-Classify-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "052r198xyrsv8wz21gijdigz2cgnidsa37nvyfzdiz4rv1fc33ir"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (propagated-inputs
+ `(("perl-devel-callchecker" ,perl-devel-callchecker)))
+ (home-page "https://metacpan.org/release/Params-Classify")
+ (synopsis "Argument type classification")
+ (description "This module provides various type-testing functions.
+These are intended for functions that care what type of data they are
+operating on. There are two flavours of function. Functions of the
+first flavour provide type classification only. Functions of the
+second flavour also check that an argument is of an expected type.
+The type enforcement functions handle only the simplest requirements
+for arguments of the types handled by the classification functions.
+Enforcement of more complex types may be built using the
+classification functions, or it may be more convenient to use a module
+designed for the more complex job, such as @code{Params::Validate}")
+ (license license:perl-license)))
+
(define-public perl-params-util
(package
(name "perl-params-util")
(synopsis "Validate method/function parameters")
(description "The Params::Validate module allows you to validate method or
function call parameters to an arbitrary level of specificity.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-params-validationcompiler
(package
parameters, and can return the parameters as key/value pairs or a list
of values. In addition to type checks, it also supports parameter
defaults, optional parameters, and extra \"slurpy\" parameters.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-par-dist
(package
(synopsis "Tools for working with directory and file names")
(description "This package provides functions to work with directory and
file names.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-path-tiny
(package
(synopsis "File path utility")
(description "This module provides a small, fast utility for working
with file paths.")
- (license asl2.0)))
+ (license license:asl2.0)))
(define-public perl-pdf-api2
(package
(name "perl-pdf-api2")
- (version "2.036")
+ (version "2.038")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.gz"))
(sha256
(base32
- "0x0pa75wpb87pcshl92y5nh8pzikjp46ljlr2pqvdgpqzvll8107"))))
+ "02dxz798sx0ncdphjrfvfl2a3c1lkplyriyk4psq99q2kdsc8ivl"))))
(build-system perl-build-system)
(native-inputs
`(("perl-test-exception" ,perl-test-exception)
(synopsis "Facilitates the creation and modification of PDF files")
(description "This Perl module facilitates the creation and modification
of PDF files.")
- (license lgpl2.1)))
+ (license license:lgpl2.1)))
(define-public perl-perlio-utf8_strict
(package
applications.")
(license (package-license perl))))
+(define-public perl-ppi
+ (package
+ (name "perl-ppi")
+ (version "1.270")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/M/MI/MITHALDU/"
+ "PPI-" version ".tar.gz"))
+ (sha256
+ (base32 "0mzlz9rxqx93rqgy16jcfxwkplvhzr0f1gvvvwmmvf0vg266jak2"))))
+ (build-system perl-build-system)
+ (arguments
+ `(#:tests? #f)) ;FIXME: some tests fail
+ (native-inputs
+ `(("perl-class-inspector" ,perl-class-inspector)
+ ("perl-test-deep" ,perl-test-deep)
+ ("perl-test-nowarnings" ,perl-test-nowarnings)
+ ("perl-test-object" ,perl-test-object)
+ ("perl-test-subcalls" ,perl-test-subcalls)))
+ (propagated-inputs
+ `(("perl-clone" ,perl-clone)
+ ("perl-io-string" ,perl-io-string)
+ ("perl-params-util" ,perl-params-util)
+ ("perl-task-weaken" ,perl-task-weaken)))
+ (home-page "https://metacpan.org/release/PPI")
+ (synopsis "Parse, analyze and manipulate Perl (without Perl)")
+ (description "The PPI module parses, analyzes and manipulates Perl
+code.")
+ (license license:perl-license)))
+
(define-public perl-probe-perl
(package
(name "perl-probe-perl")
@code{Ref::Util}, which provides several functions to help identify references
in a more convenient way than the usual approach of examining the return value
of @code{ref}.")
- (license x11)))
+ (license license:x11)))
(define-public perl-regexp-common
(package
codes.")
(home-page "https://metacpan.org/release/Regexp-Common")
;; Quad-licensed: Perl Artistic, Perl Artistic 2.0, X11, and BSD.
- (license (list (package-license perl) x11 bsd-3))))
+ (license (list (package-license perl) license:x11 license:bsd-3))))
(define-public perl-regexp-util
(package
(define-public perl-role-tiny-2
(package
(inherit perl-role-tiny)
- (version "2.001001")
+ (version "2.001004")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
"Role-Tiny-" version ".tar.gz"))
(sha256
- (base32 "16yryg3cr14xw201gm8k8ci00hs60fy8lk2xhnaqa85n5m68flk8"))))))
+ (base32 "11qn516352yhi794www3ykwa9xv2gxpfnhn9jcn10x0ahl95gflj"))))))
(define-public perl-safe-isa
(package
safely on things that may not be objects.")
(license (package-license perl))))
+(define-public perl-scalar-string
+ (package
+ (name "perl-scalar-string")
+ (version "0.003")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/Z/ZE/ZEFRAM/Scalar-String-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0llbsqk7rsg9p7l1f4yk6iv7wij91gvavprsqhnb04w7nz4ifjpm"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build" ,perl-module-build)
+ ("perl-test-pod" ,perl-test-pod)
+ ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+ (home-page "https://metacpan.org/release/Scalar-String")
+ (synopsis "String aspects of scalars")
+ (description "@code{Scalar::String} is about the string part of
+plain Perl scalars. A scalar has a string value, which is notionally
+a sequence of Unicode codepoints but may be internally encoded in
+either ISO-8859-1 or UTF-8. In places, more so in older versions of
+Perl, the internal encoding shows through. To fully understand Perl
+strings it is necessary to understand these implementation details.
+This module provides functions to classify a string by encoding and to
+encode a string in a desired way. The module is implemented in XS,
+with a pure Perl backup version for systems that cannot handle XS.")
+ (license license:perl-license)))
+
(define-public perl-scope-guard
(package
(name "perl-scope-guard")
(synopsis "Manage sets of integers")
(description "@code{Set::IntSpan} manages sets of integers. It is
optimized for sets that have long runs of consecutive integers.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-set-object
(package
(synopsis "Unordered collections of Perl Objects")
(description "Set::Object provides efficient sets, unordered collections
of Perl objects without duplicates for scalars and references.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-set-scalar
(package
to a variable. In fact, there's no built-in way to apply a type to a variable at
all. Instead, you can explicitly check a value against a type, and optionally
coerce values to that type.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-spiffy
(package
(synopsis "Collection of very basic statistics modules")
(description "This package provides basic statistics functions like
@code{median()}, @code{mean()}, @code{variance()} and @code{stddev()}.")
- (license lgpl2.0)))
+ (license license:lgpl2.0)))
(define-public perl-stream-buffered
(package
"@code{String::Formatter} is a tool for building sprintf-like formatting
routines. It supports named or positional formatting, custom conversions,
fixed string interpolation, and simple width-matching.")
- (license gpl2)))
+ (license license:gpl2)))
(define-public perl-string-rewriteprefix
(package
nicer equivalents to the native Perl syntax for calling superclasses, along with
a universal @code{super} method to determine a class' own superclass, and better
support for run-time mix-ins and roles.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-svg
(package
"Sys::Syscall allows one to use epoll and sendfile system calls from
Perl. Support is mostly Linux-only for now, but other syscalls/OSes are
planned for the future.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-task-weaken
(package
(synopsis "Profiling for Template Toolkit")
(description "Template::Timer provides inline profiling of the template
processing in Perl code.")
- (license (list gpl3 artistic2.0))))
+ (license (list license:gpl3 license:artistic2.0))))
(define-public perl-template-tiny
(package
It is intended for use in light-usage, low-memory, or low-cpu templating
situations, where you may need to upgrade to the full feature set in the
future, or if you want the retain the familiarity of TT-style templates.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-term-encoding
(package
(synopsis "Align text")
(description "Text::Aligner exports a single function, align(), which is
used to justify strings to various alignment styles.")
- (license x11)))
+ (license license:x11)))
(define-public perl-text-balanced
(package
(define-public perl-text-csv-xs
(package
(name "perl-text-csv-xs")
- (version "1.39")
+ (version "1.44")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/H/HM/HMBRAND/"
"Text-CSV_XS-" version ".tgz"))
(sha256
- (base32 "1gcy1bxym6f7qsxivkl3c5p94r1bjhf9csy1x38a1gk8mx744kma"))))
+ (base32 "1i4viyf61lzss474ndnmqhdqlhksn9hcxhjbqhv4frg2m3f2v0f4"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Text-CSV_XS")
(synopsis "Routines for manipulating CSV files")
(define-public perl-text-format
(package
(name "perl-text-format")
- (version "0.61")
+ (version "0.62")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.gz"))
(sha256
(base32
- "0axfyiml3zwawwd127z8rl2lm53z6dlsflzmp80m3j0myn7kp2mv"))))
+ "0104z7jjv46kqh77rnx8kvmsbr5dy0s56xm01dckq4ly65br0hkx"))))
(build-system perl-build-system)
(native-inputs
`(("perl-module-build" ,perl-module-build)
(description "This package provides functions to format text in various
ways like centering, paragraphing, and converting tabs to spaces and spaces
to tabs.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-text-glob
(package
you want to do full file globbing use the File::Glob module instead.")
(license (package-license perl))))
+(define-public perl-text-haml
+ (package
+ (name "perl-text-haml")
+ (version "0.990118")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/V/VT/VTI/"
+ "Text-Haml-" version ".tar.gz"))
+ (sha256
+ (base32 "1siq8hgj7s8gwpf3n3h1is5v50rwi6av8lfb19khiyyqz0rp7a57"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-module-build-tiny" ,perl-module-build-tiny)))
+ (propagated-inputs
+ `(("perl-data-section-simple" ,perl-data-section-simple)
+ ("perl-uri" ,perl-uri)))
+ (home-page "https://metacpan.org/release/Text-Haml")
+ (synopsis "Haml Perl implementation")
+ (description
+ "Text::Haml implements Haml
+@url{http://haml.info/docs/yardoc/file.REFERENCE.html} specification.")
+ (license license:artistic2.0)))
+
(define-public perl-text-neattemplate
(package
(name "perl-text-neattemplate")
yet need more features than simple variable substitution.")
(license (package-license perl))))
+(define-public perl-text-patch
+ (package
+ (name "perl-text-patch")
+ (version "1.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/C/CA/CADE/"
+ "Text-Patch-" version ".tar.gz"))
+ (sha256
+ (base32 "1k1xbhxwn9fymqqwnam9pm7hr2p5ikq6dk578qw18gkap9hqxwga"))))
+ (build-system perl-build-system)
+ (propagated-inputs
+ `(("perl-text-diff" ,perl-text-diff)))
+ (home-page "https://metacpan.org/release/Text-Patch")
+ (synopsis "Patches text with given patch")
+ (description "Text::Patch combines source text with given
+diff (difference) data. Diff data is produced by Text::Diff module or
+by the standard @code{diff} utility.")
+ (license license:gpl2+)))
+
(define-public perl-text-roman
(package
(name "perl-text-roman")
(home-page "https://metacpan.org/release/Text-SimpleTable")
(synopsis "Simple ASCII tables")
(description "Text::SimpleTable draws simple ASCII tables.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-text-table
(package
(home-page "https://metacpan.org/release/Text-Table")
(synopsis "Organize Data in Tables")
(description "Text::Table renders plaintext tables.")
- (license x11)))
+ (license license:x11)))
(define-public perl-text-template
(package
filling in templates generally. A template is a piece of text that has little
Perl programs embedded in it here and there. When you fill in a template, you
evaluate the little programs and replace them with their values.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-text-unidecode
(package
(home-page "https://metacpan.org/release/threads")
(synopsis "Perl interpreter-based threads")
(description "This module exposes interpreter threads to the Perl level.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-throwable
(package
reformats Perl scripts to make them easier to read. The formatting can be
controlled with command line parameters. The default parameter settings
approximately follow the suggestions in the Perl Style Guide.")
- (license gpl2+)))
+ (license license:gpl2+)))
(define-public perl-tie-cycle
(package
(description
"This modules provides a file handle that hides the beginning of a file,
by modifying the @code{seek()} and @code{tell()} calls.")
- (license asl2.0)))
+ (license license:asl2.0)))
+
+(define-public perl-tie-simple
+ (package
+ (name "perl-tie-simple")
+ (version "1.04")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/H/HA/HANENKAMP/"
+ "Tie-Simple-" version ".tar.gz"))
+ (sha256
+ (base32 "04lbh07nlxhpp03gl20f9w8hxjb2vzlb7w85y9w6q12i749y5s99"))))
+ (build-system perl-build-system)
+ (home-page "https://metacpan.org/release/Tie-Simple")
+ (synopsis "Variable ties made much easier")
+ (description
+ "This module adds the ability to quickly create new types of tie objects
+without creating a complete class. It does so in such a way as to try and
+make the programmers life easier when it comes to single-use ties that I find
+myself wanting to use from time-to-time.
+
+The Tie::Simple package is actually a front-end to other classes which really
+do all the work once tied, but this package does the dwimming to automatically
+figure out what you're trying to do.")
+ (license license:perl-license)))
(define-public perl-tie-toobject
(package
(define-public perl-time-hires
(package
(name "perl-time-hires")
- (version "1.9760")
+ (version "1.9764")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.gz"))
(sha256
(base32
- "0avh25m5ffsqc2xnfczvlnlbfbisw5wjq9d3w0j01h9byjzrif1c"))))
+ "1cfp078spid9z5g7xiswkpkjbkh4mkjvarz25wgwvdxzhxavwhcq"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Time-HiRes")
- (synopsis "High resolution alarm, sleep, gettimeofday, interval timers")
+ (synopsis "High-resolution alarm, sleep, gettimeofday, and interval timers")
(description "This package implements @code{usleep}, @code{ualarm}, and
@code{gettimeofday} for Perl, as well as wrappers to implement @code{time},
@code{sleep}, and @code{alarm} that know about non-integral seconds.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-time-local
(package
functions with implementations that return objects. It does so in a
backwards-compatible manner, so that using these functions as documented will
still work as expected.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-timedate
(package
(name "perl-timedate")
- (version "2.32")
+ (version "2.33")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/A/AT/ATOOMIC/"
"TimeDate-" version ".tar.gz"))
(sha256
- (base32 "1mmk9dy4a26a4d4c5rswqqhxr0295j93bjbcx91d3qkmwfcs1v1l"))))
+ (base32 "1cjyc0yi873597r7xcp9yz0l1c46ik2kxwfrn00zbrlx0d5rrdn0"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/TimeDate")
(synopsis "Date parsing/formatting subroutines")
(define-public perl-time-mock
(package
(name "perl-time-mock")
- (version "v0.0.2")
+ (version "0.0.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/E/EW/EWILHELM/"
- "Time-Mock-" version ".tar.gz"))
+ "Time-Mock-v" version ".tar.gz"))
(sha256
(base32
"0bwqyg8z98m8cjw1qcm4wg502n225k33j2fp8ywxkgfjdd1zgllv"))))
(description "This module provides bare bones try/catch/finally statements
that are designed to minimize common mistakes with eval blocks, and nothing
else.")
- (license x11)))
+ (license license:x11)))
(define-public perl-type-tie
(package
provide faster, C-based implementations of some type constraints. This
package has only core dependencies, and does not depend on @code{Type::Tiny},
so other data validation frameworks might also consider using it.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-types-path-tiny
(package
etc. It handles two important types of coercion: coercing objects with
overloaded stringification, and coercing to absolute paths. It also can check
to ensure that files or directories exist.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-types-serialiser
(package
Unicode data.")
;; The file Unicode/Collate/allkeys.txt is released under the Expat
;; license.
- (license (list (package-license perl) expat))))
+ (license (list (package-license perl) license:expat))))
(define-public perl-unicode-linebreak
(package
attribute names.")
;; Redistribution and use in source and compiled forms, with or without
;; modification, are permitted under any circumstances. No warranty.
- (license public-domain)))
+ (license license:public-domain)))
(define-public perl-xs-object-magic
(package
(define-public perl-yaml
(package
(name "perl-yaml")
- (version "1.29")
+ (version "1.30")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/T/TI/TINITA/"
"YAML-" version ".tar.gz"))
(sha256
- (base32 "0gl5ssvrdajlbc85cy6z873n9cwlssk5q8z97a31vyiikhw5fp4w"))))
+ (base32 "1kbrfksjg4k4vmx1i337m5n69m00m0m5bgsh61c15bzzrgbacc2h"))))
(build-system perl-build-system)
(native-inputs
`(("perl-test-yaml" ,perl-test-yaml)))
(description
"@code{YAML::XS} is a Perl XS binding to libyaml which offers Perl the
best YAML support to date.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-yaml-tiny
(package
(description
"@code{Parse::RecDescent} can incrementally generate top-down
recursive-descent text parsers from simple yacc-like grammar specifications.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-parse-yapp
(package
such that being individual extensions would be wasteful.")
(license (package-license perl))))
+(define-public perl-sdl
+ (package
+ (name "perl-sdl")
+ (version "2.548")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://cpan/authors/id/F/FR/FROGGS/"
+ "SDL-" version ".tar.gz"))
+ (sha256
+ (base32 "1dagpmcpjnwvd4g6mmnc312rqpd4qcwx21rpi2j7084wz8mijai5"))))
+ (build-system perl-build-system)
+ (native-inputs
+ `(("perl-alien-sdl" ,perl-alien-sdl)
+ ("perl-capture-tiny" ,perl-capture-tiny)
+ ("perl-file-sharedir" ,perl-file-sharedir)
+ ("perl-module-build" ,perl-module-build)
+ ("perl-test-most" ,perl-test-most)
+ ("perl-tie-simple" ,perl-tie-simple)))
+ (inputs
+ `(("freeglut" ,freeglut)
+ ("libjpeg" ,libjpeg-turbo)
+ ("libpng" ,libpng)
+ ("libsmpeg" ,libsmpeg)
+ ("libtiff" ,libtiff)
+ ("mesa" ,mesa)
+ ("sdl" ,(sdl-union
+ (list sdl sdl-gfx sdl-image sdl-mixer sdl-pango sdl-ttf)))))
+ (propagated-inputs
+ `(("perl-file-sharedir" ,perl-file-sharedir)
+ ("perl-tie-simple" ,perl-tie-simple)))
+ (home-page "https://metacpan.org/release/SDL")
+ (synopsis "SDL bindings to Perl")
+ (description
+ "SDL Perl is a package of Perl modules that provide both functional and
+object oriented interfaces to the Simple DirectMedia Layer for Perl5. This
+package takes some liberties with the SDL API, and attempts to adhere to the
+spirit of both the SDL and Perl.")
+ (license license:lgpl2.1)))
+
(define-public perl-shell-command
(package
(name "perl-shell-command")
(define-public perl-file-find-object
(package
(name "perl-file-find-object")
- (version "v0.2.13")
+ (version "0.2.13")
(source
(origin
(method url-fetch)
(uri (string-append
- "mirror://cpan/authors/id/S/SH/SHLOMIF/File-Find-Object-"
- version
- ".tar.gz"))
+ "mirror://cpan/authors/id/S/SH/SHLOMIF/File-Find-Object-v"
+ version ".tar.gz"))
(sha256
(base32
"0gf13b76b824s73r5rp00v8xrd6dnb5yi5jjavfc394scqv6ldh4"))))
"Object-oriented File::Find replacement in Perl")
(description "File::Find::Object is an object-oriented
File::Find replacement in Perl.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-file-find-object-rule
(package
object. In this manner, an object can be grown, step by step, by chaining
method calls. Furthermore, a partial sequence can be created and held, and
used as the head of many different sequences.")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-font-ttf
(package
tables: GDEF, GPOS, GSUB, LTSH, OS/2, PCLT, bsln, cmap, cvt, fdsc, feat,
fpgm, glyf, hdmx, head, hhea, hmtx, kern, loca, maxp, mort, name, post, prep,
prop, vhea, vmtx and the reading and writing of all other table types.")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-libtime-parsedate
(package
;; "License hereby granted for anyone to use, modify or redistribute this
;; module at their own risk. Please feed useful changes back to
;; cpan@dave.sharnoff.org."
- (license (non-copyleft "http://metadata.ftp-master.debian.org/\
+ (license (license:non-copyleft "http://metadata.ftp-master.debian.org/\
changelogs/main/libt/libtime-parsedate-perl/\
libtime-parsedate-perl_2015.103-2_copyright"))))
till 5pm\" and \"on the second Tuesday of the month\" and \"between 4pm and
4:15pm\" and \"in the first half of each minute\" and \"in January of
1998\".")
- (license perl-license)))
+ (license license:perl-license)))
(define-public perl-path-iterator-rule
(package
As a convenience, the PIR module is an empty subclass of this one that is less
arduous to type for one-liners.")
- (license asl2.0)))
+ (license license:asl2.0)))
(define-public perl-pod-constants
(package
to open the source file it is called from, and does so directly either by
lookup in %INC or by assuming it is $0 if the caller is @code{main}
(or it can't find %INC{caller()}).")
- (license artistic2.0)))
+ (license license:artistic2.0)))
(define-public perl-regexp-pattern
(package
(synopsis "Parse Lisp S-Expressions into Perl data structures")
(description "Data::SExpression parses Lisp S-Expressions into Perl data
structures.")
- (license perl-license)))
+ (license license:perl-license)))