(define-module (xyz euandreh queue)
#:use-module (srfi srfi-26)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system perl)
#:use-module (gnu packages)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages language)
#:use-module (gnu packages markup))
(define-public perl-tidy
(package
(name "perl-tidy")
(version "20210111")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/S/SH/SHANCOCK/Perl-Tidy-"
version ".tar.gz"))
(sha256
(base32
"17qqvass1n726ff1bkl8pc8yijhjy9vlm3wcc1xaykjxmz76cxi0"))))
(build-system perl-build-system)
(home-page "https://perltidy.github.io/perltidy/")
(synopsis "Indent and reformat Perl code")
(description "Perl::Tidy is a module and command-line utility to
indent and format Perl code.")
(license license:gpl2)))
(define-public perl-b-lint
(package
(name "perl-b-lint")
(version "1.20")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/B-Lint-"
version ".tar.gz"))
(sha256
(base32
"1cqhgj17jqlrwdw2lz2sprs2zydry09y14lwhmipk2zxcj4l0jfw"))
(patches
;; Taken from:
;; https://rt.cpan.org/Public/Bug/Display.html?id=101115
(search-patches "xyz/euandreh/patches/B-Lint-1.20-Skip-a-bare-sub-test.patch"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-module-pluggable" ,perl-module-pluggable)))
(home-page "https://metacpan.org/pod/B::Lint")
(synopsis "Simple linter for Perl source code")
(description "The B::Lint module is equivalent to an extended
version of the -w option of perl. It is named after the program lint
which carries out a similar process for C programs.")
(license license:perl-license)))
(define-public perl-config-tiny
(package
(name "perl-config-tiny")
(version "2.26")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/R/RS/RSAVAGE/Config-Tiny-"
version ".tgz"))
(sha256
(base32
"0pyggn3yq9ffjnw3i1n5r9kg4b90jw926apbvzxq8y7cpa8k5dc3"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/pod/Config::Tiny")
(synopsis "Read/Write .ini style files with as little code as possible")
(description "Config::Tiny is a Perl class to read and write .ini
style configuration files with as little code as possible, reducing
load time and memory overhead.")
(license license:perl-license)))
(define-public perl-pod-spell
(package
(name "perl-pod-spell")
(version "1.20")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/D/DO/DOLMEN/Pod-Spell-"
version ".tar.gz"))
(sha256
(base32
"0g6hdnc98gc3widr7sja313b1606g37a0mw0l0wxih1bwazzg0v3"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-class-tiny" ,perl-class-tiny)
("perl-file-sharedir" ,perl-file-sharedir)
("perl-lingua-en-inflect" ,perl-lingua-en-inflect)
("perl-path-tiny" ,perl-path-tiny)))
(native-inputs
`(("perl-file-sharedir-install" ,perl-file-sharedir-install)
("perl-test-deep" ,perl-test-deep)))
(home-page "https://metacpan.org/pod/Pod::Spell")
(synopsis "A formatter for spellchecking Perl Pod")
(description "Pod::Spell is a Pod formatter whose output is good
for spellchecking. Pod::Spell rather like Pod::Text, except that it
doesn't put much effort into actual formatting, and it suppresses
things that look like Perl symbols or Perl jargon (so that your
spellchecking program won't complain about mystery words like
\"$thing\" or \"Foo::Bar\" or \"hashref\").")
(license license:perl-license)))
(define-public perl-string-format
(package
(name "perl-string-format")
(version "1.18")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/S/SR/SREZIC/String-Format-"
version ".tar.gz"))
(sha256
(base32
"0y77frxzjifd4sw0j19cc346ysas1mya84rdxaz279lyin7plhcy"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/pod/String::Format")
(synopsis "sprintf-like string formatting for Perl")
(description "String::Format lets you define arbitrary printf-like
format sequences to be expanded. This module would be most useful in
configuration files and reporting tools, where the results of a query
need to be formatted in a particular way. It was inspired by mutt's
index_format and related directives.")
(license license:perl-license)))
(define-public perl-ppix-regexp
(package
(name "perl-ppix-regexp")
(version "0.078")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/W/WY/WYANT/PPIx-Regexp-"
version ".tar.gz"))
(sha256
(base32
"0h5lfi3m08i86hw89yffcsrsq0h0k2v58j47j5yl4m0g4apg725k"))))
(propagated-inputs
`(("perl-ppi" ,perl-ppi)
("perl-task-weaken" ,perl-task-weaken)))
(native-inputs
`(("perl-module-build" ,perl-module-build)))
(build-system perl-build-system)
(home-page "https://metacpan.org/pod/PPIx::Regexp")
(synopsis "Represent a regular expression of some sort")
(description "The purpose of the PPIx-Regexp package is to parse
regular expressions in a manner similar to the way the PPI package
parses Perl. This class forms the root of the parse tree, playing a
role similar to PPI::Document.")
(license license:perl-license)))
(define-public perl-ppix-quotelike
(package
(name "perl-ppix-quotelike")
(version "0.015")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/W/WY/WYANT/PPIx-QuoteLike-"
version ".tar.gz"))
(sha256
(base32
"16qbhryi4vdjfgx5hf6sl0hj2lv4yn1lmg9jibxrlmipnhm1qdfa"))))
(propagated-inputs
`(("perl-ppix-regexp" ,perl-ppix-regexp)
("perl-ppi" ,perl-ppi)
("perl-readonly" ,perl-readonly)))
(native-inputs
`(("perl-module-build" ,perl-module-build)))
(build-system perl-build-system)
(home-page "https://metacpan.org/pod/PPIx::QuoteLike")
(synopsis "Parse Perl string literals and string-literal-like things")
(description "This Perl class parses Perl string literals and
things that are reasonably like string literals. Its real reason for
being is to find interpolated variables for Perl::Critic policies and
similar code.")
(license license:perl-license)))
(define-public perl-readonly-xs
(package
(name "perl-readonly-xs")
(version "1.05")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/R/RO/ROODE/Readonly-XS-"
version ".tar.gz"))
(sha256
(base32
"03gz7yp194fwah2bc36ww04hgw1qx8p6y68vvnywircrablc9rca"))))
(propagated-inputs
`(("perl-readonly" ,perl-readonly)))
(build-system perl-build-system)
(home-page "https://metacpan.org/pod/Readonly::XS")
(synopsis "Companion module for Readonly.pm")
(description "Perl XS extension to speed up read-only scalar variables")
(license license:perl-license)))
(define-public perl-ppix-utilities
(package
(name "perl-ppix-utilities")
(version "1.001000")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/E/EL/ELLIOTJS/PPIx-Utilities-"
version ".tar.gz"))
(sha256
(base32
"16yb7dnz8lgq2azs8jxj1wac60kbn16x8y4py04ci8nndww87903"))))
(propagated-inputs
`(("perl-exception-class" ,perl-exception-class)
("perl-ppi" ,perl-ppi)
("perl-readonly" ,perl-readonly)
("perl-readonly-xs" ,perl-readonly-xs)
("perl-task-weaken" ,perl-task-weaken)))
(native-inputs
`(("perl-module-build" ,perl-module-build)
("perl-test-deep" ,perl-test-deep)))
(build-system perl-build-system)
(home-page "https://metacpan.org/pod/PPIx::Utilities")
(synopsis "Perl extensions to PPI")
(description "This is a collection of functions for dealing with
PPI objects, many of which originated in Perl::Critic. They are
organized into modules by the kind of PPI class they relate to, by
replacing the \"PPI\" at the front of the module name with
\"PPIx::Utilities\", e.g. functionality related to PPI::Nodes is in
PPIx::Utilities::Node.")
(license license:perl-license)))
(define-public perl-critic
(package
(name "perl-critic")
(version "1.138")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/P/PE/PETDANCE/Perl-Critic-"
version ".tar.gz"))
(sha256
(base32
"10pdi6bzgas131l5qmnmy9sbzsb484nmdhk9hdlz8kgj3vwr9l9a"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-b-keywords" ,perl-b-keywords)
("perl-list-moreutils" ,perl-list-moreutils)
("perl-exception-class" ,perl-exception-class)
("perl-file-which" ,perl-file-which)
("perl-io-string" ,perl-io-string)
("perl-module-pluggable" ,perl-module-pluggable)
("perl-ppi" ,perl-ppi)
("perl-readonly" ,perl-readonly)
("perl-tidy" ,perl-tidy)
("perl-config-tiny" ,perl-config-tiny)
("perl-pod-spell" ,perl-pod-spell)
("perl-string-format" ,perl-string-format)
("perl-ppix-regexp" ,perl-ppix-regexp)
("perl-ppix-quotelike" ,perl-ppix-quotelike)
("perl-ppix-utilities" ,perl-ppix-utilities)
("perl-task-weaken" ,perl-task-weaken)))
(native-inputs
`(("perl-module-build" ,perl-module-build)
("perl-test-deep" ,perl-test-deep)))
(home-page "http://perlcritic.com/")
(synopsis "Static analyzer for Perl best-practices")
(description "Perl::Critic is an extensible framework for creating
and applying coding standards to Perl source code. Essentially, it
is a static source code analysis engine.")
(license license:perl-license)))
(define-public perl-commonmark
(package
(name "perl-commonmark")
(version "0.290000")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/N/NW/NWELLNHOF/CommonMark-"
version ".tar.gz"))
(sha256
(base32
"1pgaqa4f00i9r5z7l9xiya0q51ysq0nhpvgr0f3rza3cxz1v80d5"))))
(build-system perl-build-system)
(arguments
`(#:make-maker-flags
;; MakeMaker doesn't honor $LIBRARY_PATH nor $INCLUDE_PATH.
(list (string-append "LIBS=-L"
(assoc-ref %build-inputs "cmark")
"/lib -lcmark")
(string-append "INC=-I"
(assoc-ref %build-inputs "cmark")
"/include"))))
(native-inputs
`(("cmark" ,cmark)
("perl-devel-checklib", perl-devel-checklib)
("perl-test-leaktrace" ,perl-test-leaktrace)))
(home-page "https://metacpan.org/pod/CommonMark")
(synopsis "Perl interface to the CommonMark C library")
(description "This module is a Perl wrapper around the official
CommonMark C library libcmark. It closely follows the original API.")
(license license:perl-license)))
(define-public perl-escape-houdini
(package
(name "perl-escape-houdini")
(version "0.3.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/Y/YA/YANICK/Escape-Houdini-"
version ".tar.gz"))
(sha256
(base32
"12gc44066028v51v3hli4h1czpcj23ygfnfa38hy80yz81lq4jar"))))
(native-inputs
`(("perl-module-build" ,perl-module-build)
("perl-test-exception" ,perl-test-exception)))
(build-system perl-build-system)
(home-page "https://metacpan.org/pod/Escape::Houdini")
(synopsis "Perl API to Houdini, a zero-dependency C web escaping library")
(description "Escape::Houdini is a Perl wrapper around the
zero-depedency, minimalistic web escaping C library Houdini.")
(license license:perl-license)))
(define-public perl-class-tiny-antlers
(package
(name "perl-class-tiny-antlers")
(version "0.024")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/T/TO/TOBYINK/Class-Tiny-Antlers-"
version ".tar.gz"))
(sha256
(base32
"1ryrplfkcx1wch9cv7h6vjvx1fjqr5kbq1wxg64zn6zx3c3jhmms"))))
(build-system perl-build-system)
(native-inputs
`(("perl-test-fatal" ,perl-test-fatal)
("perl-test-requires" ,perl-test-requires)
("perl-type-tiny" ,perl-type-tiny)
("perl-moosex-types" ,perl-moosex-types)))
(propagated-inputs
`(("perl-class-method-modifiers" ,perl-class-method-modifiers)
("perl-class-tiny" ,perl-class-tiny)
("perl-role-tiny" ,perl-role-tiny)))
(home-page "https://metacpan.org/pod/Class::Tiny::Antlers")
(synopsis "Moose-like sugar for Class::Tiny")
(description "Class::Tiny::Antlers provides Moose-like @code{has},
@code{extends}, @code{with}, @code{before}, @code{after} and
@code{around} keywords for Class::Tiny.")
(license license:perl-license)))
(define-public perl-moosex-mungehas
(package
(name "perl-moosex-mungehas")
(version "0.011")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/T/TO/TOBYINK/MooseX-MungeHas-"
version ".tar.gz"))
(sha256
(base32
"15b4s0vaxkh331k8268xhb0f4yr87x0lpyhmmzq0cb4z0klwhfw6"))))
(build-system perl-build-system)
(native-inputs
`(("perl-test-fatal" ,perl-test-fatal)
("perl-test-requires" ,perl-test-requires)
("perl-type-tiny" ,perl-type-tiny)))
(propagated-inputs
`(("perl-class-tiny-antlers" ,perl-class-tiny-antlers)
("perl-moo" ,perl-moo)
("perl-moose" ,perl-moose)
("perl-mouse" ,perl-mouse)))
(home-page "https://metacpan.org/pod/MooseX::MungeHas")
(synopsis "Munge your \"has\" (works with Moo, Moose and Mouse)")
(description "MooseX::MungeHas alters the behaviour of the
attributes of your Moo, Moose or Mouse based class. It manages to
support all three because it doesn't attempt to do anything smart with
metathingies; it simply installs a wrapper for has that munges the
attribute specification hash before passing it on to the original has
function.")
(license license:perl-license)))
(define-public perl-template-mustache
(package
(name "perl-template-mustache")
(version "1.3.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/Y/YA/YANICK/Template-Mustache-"
version ".tar.gz"))
(sha256
(base32
"00czyfqhl52cx4zjnbhcp2xq0sywj1bzpjqgri6513mrcgymjnx0"))))
(propagated-inputs
`(("perl-escape-houdini" ,perl-escape-houdini)
("perl-list-allutils" ,perl-list-allutils)
("perl-moo" ,perl-moo)
("perl-moosex-mungehas" ,perl-moosex-mungehas)
("perl-parse-recdescent" ,perl-parse-recdescent)
("perl-path-tiny" ,perl-path-tiny)
("perl-yaml-libyaml" ,perl-yaml-libyaml)))
(native-inputs
`(("perl-test-exception" ,perl-test-exception)
("perl-test-requires" ,perl-test-requires)
("perl-test2-suite" ,perl-test2-suite)
("perl-test-memory-cycle" ,perl-test-memory-cycle)))
(build-system perl-build-system)
(home-page "https://metacpan.org/pod/Template::Mustache")
(synopsis "Perl library for the Mustache templating language")
(description "Template::Mustache is an implementation of the
Mustache templating language for Perl. This version of
Template::Mustache conforms to v1.1.3 of the Mustache specs.")
(license license:perl-license)))
(list
perl-tidy
perl-b-lint
perl-config-tiny
perl-pod-spell
perl-string-format
perl-ppix-regexp
perl-ppix-quotelike
perl-readonly-xs
perl-ppix-utilities
perl-critic
perl-commonmark
perl-escape-houdini
perl-class-tiny-antlers
perl-moosex-mungehas
perl-template-mustache)