juix/juix/deploy/debbugs.scm

1365 lines
54 KiB
Scheme

(define-module (juix deploy debbugs)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages bash)
#:use-module (gnu packages databases)
#:use-module (gnu packages gd)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages xml)
#:use-module (gnu packages web)
#:use-module (guix build-system copy)
#:use-module (guix build-system perl)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:export (debbugs-gnu/juix
debbugs-gnu-experimental/juix
perl-class-hash/juix
perl-data-messagepack/juix
perl-datetime-format-mysql/juix
perl-datetime-format-pg/juix
perl-datetime-format-sqlite/juix
perl-dbicx-testdatabase/juix
perl-dbix-class/juix
perl-dbix-class-dynamicdefault/juix
perl-dbix-class-timestamp/juix
perl-dime-tools/juix
perl-fcgi/juix
perl-fcgi-client/juix
perl-graphviz/juix
perl-hash-ordered/juix
perl-io-sessiondata/juix
perl-mail-message/juix
perl-mdlbm/juix
perl-package-variant/juix
perl-safe-hole/juix
perl-search-estraier/juix
perl-soap-lite/juix
perl-spreadsheet-parseexcel/juix
perl-sql-translator/juix
perl-test-xml/juix
perl-text-autoformat/juix
perl-text-iconv/juix
perl-text-recordparser/juix
perl-text-reform/juix
perl-text-tabulardisplay/juix
perl-text-xslate/juix
perl-time-warp/juix
perl-user-identity/juix
perl-xml-parser-lite/juix
perl-xml-semanticdiff/juix))
(define-public perl-class-hash/juix
(package
(name "perl-class-hash")
(version "1.01")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/H/HA/HANENKAMP/Class-Hash/Class-Hash-"
version ".tar.gz"))
(sha256
(base32 "1kcg00ks6vica496m6dqwb1c9gkb6igndkrxr4a7ff7391yg3ywz"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Class-Hash")
(synopsis "Perl extension for hashes that look like classes")
(description "This component provides a method-based interface to a hash.
Occasionally, it's more convenient to have named methods to access a hash
than hash keys. This module generalizes that behavior. It tries to work
the tied hash interface inside-out.")
(license license:perl-license)))
(define-public perl-data-messagepack/juix
(package
(name "perl-data-messagepack")
(version "1.02")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/S/SY/SYOHEX/Data-MessagePack-" version
".tar.gz"))
(sha256
(base32 "1dxih8s9a5rd0vg0nd9i0gb0m5zyvxw26bl88x0jb3daj13v8gf3"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build perl-module-build-xsutil
perl-test-requires))
(home-page "https://metacpan.org/release/Data-MessagePack")
(synopsis "MessagePack serializing/deserializing")
(description "MessagePack is a binary-based, efficient object
serialization format. It enables the exchange of structured objects between
many languages. In that sense it is similar to JSON. But unlike JSON, it is
very fast and small.")
(license license:perl-license)))
(define-public perl-datetime-format-mysql/juix
(package
(name "perl-datetime-format-mysql")
(version "0.08")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/X/XM/XMIKEW/DateTime-Format-MySQL-"
version ".tar.gz"))
(sha256
(base32 "1s5r4b8n749gf4b49i1svkfh5aawriqqwsid9lsmwrc4hplp1jqr"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build))
(propagated-inputs (list perl-datetime
perl-datetime-format-builder))
(home-page "https://metacpan.org/release/DateTime-Format-MySQL")
(synopsis "Parse and format MySQL dates and times")
(description "This module understands the formats used by MySQL for
its DATE, DATETIME, TIME, and TIMESTAMP data types. It can be used to
parse these formats in order to create DateTime objects, and it can
take a DateTime object and produce a string representing it in the
MySQL format.")
(license license:perl-license)))
(define-public perl-datetime-format-pg/juix
(package
(name "perl-datetime-format-pg")
(version "0.16014")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/D/DM/DMAKI/DateTime-Format-Pg-" version
".tar.gz"))
(sha256
(base32 "1f8fpv655x8w9zaa65lp1yn0pianjv5l4qvg6v1q9hsda9k9dfrq"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build-tiny))
(propagated-inputs (list perl-datetime
perl-datetime-format-builder
perl-datetime-timezone))
(home-page "https://metacpan.org/release/DateTime-Format-Pg")
(synopsis "Parse and format PostgreSQL dates and times")
(description "This module understands the formats used by PostgreSQL
for its DATE, TIME, TIMESTAMP, and INTERVAL data types. It can be used
to parse these formats in order to create DateTime or DateTime::Duration
objects, and it can take a DateTime or DateTime::Duration object and
produce a string representing it in a format accepted by PostgreSQL.")
(license license:perl-license)))
(define-public perl-datetime-format-sqlite/juix
(package
(name "perl-datetime-format-sqlite")
(version "0.11")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/C/CF/CFAERBER/DateTime-Format-SQLite-"
version ".tar.gz"))
(sha256
(base32 "1d4ln8x5bjpqmgnbbi2h16knfz674dsgvk6x7m60v6ykw454w7yc"))))
(build-system perl-build-system)
(propagated-inputs (list perl-datetime
perl-datetime-format-builder))
(home-page "https://metacpan.org/release/DateTime-Format-SQLite")
(synopsis "Parse and format SQLite dates and times")
(description "This module understands the formats used by SQLite for
its date, datetime and time functions. It can be used to parse these
formats in order to create DateTime objects. It can also take a DateTime
object and produce a timestring accepted by SQLite.")
(license license:perl-license)))
(define-public perl-dbicx-testdatabase/juix
(package
(name "perl-dbicx-testdatabase")
(version "0.05")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/J/JR/JROCKWAY/DBICx-TestDatabase-"
version ".tar.gz"))
(sha256
(base32 "1kqaiygxiarrqkgqbq1s3xilx77msbdsqrdaqf4628811d9w4fwf"))))
(build-system perl-build-system)
(arguments
(list
#:tests? #f))
(native-inputs (list perl-dbix-class/juix
perl-module-install))
(propagated-inputs (list perl-dbd-sqlite
perl-sql-translator/juix))
(home-page "https://metacpan.org/release/DBICx-TestDatabase")
(synopsis "create a temporary database from a DBIx::Class::Schema")
(description "This module creates a temporary SQLite database, deploys
a DBIC schema, and then connects to the database. It lets you test your
DBIC schema. Since you have a fresh database for every test, you don't
have to worry about cleaning up after your tests, or about the ordering
of tests affecting failure.")
(license license:perl-license)))
(define-public perl-dbix-class/juix
(package
(name "perl-dbix-class")
(version "0.082842")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/R/RI/RIBASUSHI/"
"DBIx-Class-" version ".tar.gz"))
(sha256
(base32 "1rh7idjjbibc1zmiaaarask434lh0lx7f2xyfwmy37k9fa0xcpmh"))))
(build-system perl-build-system)
(arguments
(list
#:phases
;; strictures.pm extra testing active but couldn't load all modules. Missing
;; were:
;; indirect multidimensional bareword::filehandles
;; Extra testing is auto-enabled in checkouts only, so if you're the author
;; of a strictures-using module you need to run:
;; cpan indirect multidimensional bareword::filehandles
;; but these modules are not required by your users.
;; # Failed test 'Unexpected require of 'MRO::Compat' by
;; DBIx::Class::Componentised
;; (/tmp/guix-build-perl-dbix-class-0.082842.drv-0/DBIx-Class-0.082842/blib/li
;; b/DBIx/Class/Componentised.pm line 7)'
;; # at t/53lean_startup.t line 58.
;; # Looks like you failed 1 test of 7.
;; t/53lean_startup.t ..................................
;; Dubious, test returned 1 (wstat 256, 0x100)
;; Failed 1/7 subtests
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-test
(lambda _
(substitute* "t/53lean_startup.t"
(("return [$]res if [$]req =~ /[^]DBIx::Class[|]")
"return $res if $req =~ /^MRO::Compat|DBIx::Class|")))))))
(native-inputs
(list perl-bareword-filehandles
perl-dbd-sqlite
perl-file-temp
perl-indirect
perl-module-install
perl-multidimensional
perl-package-stash
perl-test-deep
perl-test-exception
perl-test-warn))
(propagated-inputs
(list perl-class-accessor-grouped
perl-class-c3-componentised
perl-class-inspector
perl-config-any
perl-context-preserve
perl-data-dumper-concise
perl-data-page
perl-dbi
perl-devel-globaldestruction
perl-hash-merge
perl-module-find
perl-moo
perl-mro-compat
perl-namespace-clean
perl-path-class
perl-scalar-list-utils
perl-scope-guard
perl-sql-abstract-classic
perl-sub-name
perl-text-balanced
perl-try-tiny))
(home-page "https://metacpan.org/release/DBIx-Class")
(synopsis "Extensible and flexible object <-> relational mapper")
(description "An SQL to OO mapper with an object API inspired by
Class::DBI (with a compatibility layer as a springboard for porting) and a
resultset API that allows abstract encapsulation of database operations. It
aims to make representing queries in your code as perl-ish as possible while
still providing access to as many of the capabilities of the database as
possible, including retrieving related records from multiple tables in a
single query, \"JOIN\", \"LEFT JOIN\", \"COUNT\", \"DISTINCT\", \"GROUP BY\",
\"ORDER BY\" and \"HAVING\" support.")
(license license:perl-license)))
(define-public perl-dbix-class-dynamicdefault/juix
(package
(name "perl-dbix-class-dynamicdefault")
(version "0.04")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/M/MS/MSTROUT/DBIx-Class-DynamicDefault-"
version ".tar.gz"))
(sha256
(base32 "1yssda00988hn9v96jl95apbzib74vgbcgf69m5mhhj64amm33r2"))))
(build-system perl-build-system)
(arguments
(list
#:tests? #f))
(native-inputs (list perl-dbicx-testdatabase/juix
perl-module-install))
(propagated-inputs (list perl-dbix-class/juix))
(home-page "https://metacpan.org/release/DBIx-Class-DynamicDefault")
(synopsis "Automatically set and update fields")
(description "Automatically set and update fields with values calculated
at runtime.")
(license license:perl-license)))
(define-public perl-dbix-class-timestamp/juix
(package
(name "perl-dbix-class-timestamp")
(version "0.14")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/R/RI/RIBASUSHI/DBIx-Class-TimeStamp-"
version ".tar.gz"))
(sha256
(base32 "1zhr4r5ffihqsh2imap7zmps2y0h71piqqhg2nqhcwkjhvlxb958"))))
(build-system perl-build-system)
(native-inputs (list perl-class-accessor-grouped
perl-datetime-format-mysql/juix
perl-datetime-format-sqlite/juix
perl-dbd-sqlite ; for test
perl-module-install
perl-time-warp/juix))
(propagated-inputs (list perl-datetime
perl-dbix-class/juix
perl-dbix-class-dynamicdefault/juix))
(home-page "https://metacpan.org/release/DBIx-Class-TimeStamp")
(synopsis
"DBIx::Class extension to update and create date and time based fields")
(description "Works in conjunction with InflateColumn::DateTime to
automatically set update and create date and time based fields in a table.")
(license license:perl-license)))
(define-public perl-dime-tools/juix
(package
(name "perl-dime-tools")
(version "0.05")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/DIME-Tools-"
version ".tar.gz"))
(sha256
(base32 "0lfc0z5ap2jyjffqvmfv5p6j7hjcr3dr4v9jfvl0r0561lay54gl"))))
(build-system perl-build-system)
(propagated-inputs (list perl-data-uuid
perl-io-stringy))
(home-page "https://metacpan.org/release/DIME-Tools")
(synopsis "modules for parsing and generate DIME messages")
(description "DIME-tools is a collection of DIME:: modules for
parsing and generating DIME encoded messages (Direct Internet
Message Encapsulation). DIME-tools support single-record and
chunked payloads for sending big attachments.")
(license license:gpl2)))
(define-public perl-fcgi/juix
(package
(name "perl-fcgi")
(version "0.82")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/FCGI-" version
".tar.gz"))
(sha256
(base32 "1kwyy08lc23yjwaj4m696cxjf195x4hm0d2fi82pzh52dpi60zac"))))
(build-system perl-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'provide-shell
(lambda _
(setenv "CONFIG_SHELL" (which "sh")))))))
(native-inputs (list bash
perl-fcgi-client/juix))
(home-page "https://metacpan.org/release/FCGI")
(synopsis "Fast CGI module")
(description "This is a FastCGI application library.")
(license (license:non-copyleft "file://LICENSE" "Open Market"))))
(define-public perl-fcgi-client/juix
(package
(name "perl-fcgi-client")
(version "0.09")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/T/TO/TOKUHIROM/FCGI-Client-" version
".tar.gz"))
(sha256
(base32 "1s11casbv0jmkcl5dk8i2vhfy1nc8rg43d3bg923zassrq4wndym"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build-tiny))
(propagated-inputs (list perl-moo perl-type-tiny))
(home-page "https://metacpan.org/release/FCGI-Client")
(synopsis "client library for fastcgi protocol")
(description "FCGI::Client is client library for fastcgi protocol.")
(license license:perl-license)))
(define-public perl-graphviz/juix
(package
(name "perl-graphviz")
(version "2.26")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/E/ET/ETJ/GraphViz-" version
".tar.gz"))
(sha256
(base32 "0a3kv92z9gykwgh8py5y67wygy25lijdfb97fl2g6ar6nch2apcs"))))
(build-system perl-build-system)
(native-inputs (list graphviz))
(inputs (list graphviz))
(propagated-inputs (list perl-file-which
perl-ipc-run
perl-libwww
perl-parse-recdescent
perl-xml-twig
perl-xml-xpath))
(home-page "https://metacpan.org/release/GraphViz")
(synopsis "Interface to AT&T's GraphViz. Deprecated. See GraphViz2")
(description "This module provides an interface to layout and image
generation of directed and undirected graphs in a variety of formats
(PostScript, PNG, etc.) using the 'dot', 'neato', 'twopi', 'circo' and
'fdp' programs from the Graphviz project (http://www.graphviz.org/ or
http://www.research.att.com/sw/tools/graphviz/).
GraphViz was deprecated in favour of GraphViz2.")
(license license:perl-license)))
(define-public perl-hash-ordered/juix
(package
(name "perl-hash-ordered")
(version "0.014")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/D/DA/DAGOLDEN/Hash-Ordered-" version
".tar.gz"))
(sha256
(base32 "0yvlb4f2bicya8l8q989whqrmfpz428zvr9xiamkgbjmj7bnrhwd"))))
(build-system perl-build-system)
(native-inputs (list perl-test-deep
perl-test-failwarnings
perl-test-fatal))
(home-page "https://metacpan.org/release/Hash-Ordered")
(synopsis "A fast, pure-Perl ordered hash class")
(description "This module implements an ordered hash, meaning that it
associates keys with values like a Perl hash, but keeps the keys in a
consistent order. Because it is implemented as an object and manipulated
with method calls, it is much slower than a Perl hash.")
(license license:asl2.0)))
(define-public perl-io-sessiondata/juix
(package
(name "perl-io-sessiondata")
(version "1.03")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/P/PH/PHRED/IO-SessionData-"
version ".tar.gz"))
(sha256
(base32 "1p9d77pqy9a8dbgw7h7vmmkg0rlckk19dchd4c8gvcyv7qm73934"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/IO-SessionData")
(synopsis "IO::SessionData")
(description "This module was extracted from SOAP::Lite.")
(license license:perl-license)))
(define-public perl-mail-message/juix
(package
(name "perl-mail-message")
(version "3.015")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/Mail-Message-"
version ".tar.gz"))
(sha256
(base32 "0nmjk4ik76hlxwd183z0c7prdpcmm85a811lz24x8gkxhxzqv1dj"))))
(build-system perl-build-system)
(propagated-inputs (list perl-io-stringy
perl-mailtools
perl-mime-types
perl-timedate
perl-uri
perl-user-identity/juix))
(home-page "https://metacpan.org/release/Mail-Message")
(synopsis "Processing MIME messages")
(description "A Mail::Message object is a container for MIME-encoded message
information, as defined by RFC2822. Everything that is not specificaly related
to storing the messages in mailboxes (folders) is implemented in this class.
Methods which are related to folders is implemented in the Mail::Box::Message
extension.")
(license license:perl-license)))
(define-public perl-mldbm/juix
(package
(name "perl-mldbm")
(version "2.05")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/C/CH/CHORNY/MLDBM-" version
".tar.gz"))
(sha256
(base32 "18hp5bq5jl6v1prc9sz6xkpys0q27vhlfivkysxim0101knq0s2q"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build))
(home-page "https://metacpan.org/release/MLDBM")
(synopsis "Store multi-level Perl hash structure in single-level tied hash")
(description "This module can serve as a transparent interface to any TIEHASH
package that is required to store arbitrary perl data, including nested
references. Thus, this module can be used for storing references and other
arbitrary data within DBM databases.
It works by serializing the references in the hash into a single string. In the
underlying TIEHASH package (usually a DBM database), it is this string that gets
stored. When the value is fetched again, the string is deserialized to
reconstruct the data structure into memory.")
(license license:perl-license)))
(define-public perl-package-variant/juix
(package
(name "perl-package-variant")
(version "1.003002")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/M/MS/MSTROUT/Package-Variant-" version
".tar.gz"))
(sha256
(base32 "1p1n2ny5fb15bcbykyn523w6sv968gqs7nhjfm36dpac5yfq9vdj"))))
(build-system perl-build-system)
(native-inputs (list perl-test-fatal))
(propagated-inputs (list perl-import-into
perl-module-runtime
perl-strictures-2))
(home-page "https://metacpan.org/release/Package-Variant")
(synopsis "Parameterizable packages")
(description "This module allows you to build a variable package that
contains a package template and can use it to build variant packages at
runtime.
Your variable package will export a subroutine which will build a variant
package, combining its arguments with the template, and return the name
of the new variant package.
The implementation does not care about what kind of packages it builds,
be they simple function exporters, classes, singletons or something
entirely different.")
(license license:perl-license)))
(define-public perl-safe-hole/juix
(package
(name "perl-safe-hole")
(version "0.14")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/T/TO/TODDR/Safe-Hole-"
version ".tar.gz"))
(sha256
(base32 "01gc2lfli282dj6a2pkpxb0vmpyavs323cbdw15gxi06pn5nxxgl"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build))
(home-page "https://metacpan.org/release/Safe-Hole")
(synopsis "Make a hole to the original main compartment in the Safe compartment")
(description "From the Safe compartment, one can call outside defined subroutines or
methods through the object that is copied into the Safe compartment, but they too
run in the Safe compartment. Through Safe::Hole, we can execute outside defined
subroutines in the original main compartment from the Safe compartment.")
(license license:perl-license)))
(define-public perl-search-estraier/juix
(package
(name "perl-search-estraier")
(version "0.09")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/D/DP/DPAVLIN/Search-Estraier-" version
".tar.gz"))
(sha256
(base32 "0f3fwbvzqbgmx28cc8qjwld1xvqvjp71sdx2b2amgfjk4mvwf54p"))))
(build-system perl-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
;; # Failed test 'drafts same'
;; # at t/1_Document.t line 78.
;; # got: '@uri=http://localhost/Search-Estraier/
;; # empty=
;; # foo=bar
;; # size=42
;; # zero=0
;; # %VECTOR foo 42 baz 0 bar 100
;; #
;; # This is a test
;; # of pure-perl bindings
;; # for HyperEstraier
;; # This is hidden text
;; # '
;; # expected: '@uri=http://localhost/Search-Estraier/
;; # empty=
;; # foo=bar
;; # size=42
;; # zero=0
;; # %VECTOR baz 0 bar 100 foo 42
;; #
;; # This is a test
;; # of pure-perl bindings
;; # for HyperEstraier
;; # This is hidden text
;; # '
;; # Looks like you failed 1 test of 60.
;; t/1_Document.t ........
;; Dubious, test returned 1 (wstat 256, 0x100)
;; Failed 1/60 subtests
;;
(add-after 'unpack 'drop-test
(lambda _
(delete-file "t/1_Document.t"))))))
(propagated-inputs (list perl-libwww
perl-test-exception
perl-uri))
(home-page "https://metacpan.org/release/Search-Estraier")
(synopsis "Pure perl module to use Hyper Estraier search engine")
(description "This module is implementation of node API of Hyper Estraier.
Since it's a Perl-only module with dependencies only on standard Perl modules,
it will run on all platforms on which Perl runs. It doesn't require
compilation or Hyper Estraier development files on the target machine.")
(license license:perl-license)))
(define-public perl-soap-lite/juix
(package
(name "perl-soap-lite")
(version "1.27")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/P/PH/PHRED/SOAP-Lite-"
version ".tar.gz"))
(sha256
(base32 "00fkvmnxiy5mr45rj5qmxmflw0xdkw2gihm48iha2i8smdmi0ng3"))))
(build-system perl-build-system)
(native-inputs (list perl-io-stringy
perl-test-mockobject
perl-test-warn
perl-test-xml/juix
perl-xml-parser-lite/juix))
(propagated-inputs (list perl-class-inspector
perl-dime-tools/juix
perl-fcgi/juix
perl-http-daemon
perl-io-sessiondata/juix
perl-io-socket-ssl
perl-libwww
perl-lwp-protocol-https
perl-mime-tools
perl-task-weaken
perl-uri
perl-xml-parser))
(home-page "https://metacpan.org/release/SOAP-Lite")
(synopsis "Perl's Web Services Toolkit")
(description "SOAP::Lite is a collection of Perl modules which
provides a simple and lightweight interface to the Simple Object
Access Protocol (SOAP) both on client and server side.")
(license license:perl-license)))
(define-public perl-spreadsheet-parseexcel/juix
(package
(name "perl-spreadsheet-parseexcel")
(version "0.66")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/J/JM/JMCNAMARA/Spreadsheet-ParseExcel-"
version ".tar.gz"))
(sha256
(base32 "0nzn8n928720lyv61nbd02d87xi5pfs77nhv0pf031lqpb7nmmxz"))))
(build-system perl-build-system)
(arguments
(list
;; test cannot find Digest::MD5
#:tests? #f))
(propagated-inputs (list perl-crypt-rc4
perl-digest-md5
perl-io-stringy
perl-ole-storage-lite))
(home-page "https://metacpan.org/release/Spreadsheet-ParseExcel")
(synopsis "Read information from an Excel file.")
(description "The Spreadsheet::ParseExcel module can be used to read
information from Excel 95-2003 binary files.
The module cannot read files in the Excel 2007 Open XML XLSX format.
See the Spreadsheet::XLSX module instead.")
(license license:perl-license)))
(define-public perl-sql-translator/juix
(package
(name "perl-sql-translator")
(version "1.64")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/V/VE/VEESH/SQL-Translator-"
version ".tar.gz"))
(sha256
(base32 "1iykygxlsd98cxkr6np3gvcidrvgal7q59ms1id1vb76z0kd8478"))))
(build-system perl-build-system)
(arguments
(list
#:tests? #f))
(native-inputs (list perl-file-sharedir-install
perl-json-maybexs
perl-test-differences
perl-test-exception
perl-xml-writer
perl-yaml))
(propagated-inputs (list perl-carp-clan
perl-dbi
perl-file-sharedir
perl-gd
perl-graph
perl-graphviz/juix
perl-moo
perl-package-variant/juix
perl-parse-recdescent
perl-spreadsheet-parseexcel/juix
perl-sub-quote
perl-template-toolkit
perl-text-recordparser/juix
perl-try-tiny
perl-xml-libxml))
(home-page "https://metacpan.org/release/SQL-Translator")
(synopsis "SQL DDL transformations and more")
(description "SQL::Translator is a group of Perl modules that converts
vendor-specific SQL table definitions into other formats like a different
SQL dialect, into ER diagrams, into documentation (POD and HTML), into XML,
and into Class::DBI classes.
The main focus of SQL::Translator is SQL, but parsers exist for other
structured data formats, including Excel spreadsheets and arbitrarily
delimited text files.
Through the separation of the code into parsers and producers with an
object model in between, it's possible to combine any parser with any
producer, or to plug in custom parsers or producers, or to manipulate
the parsed data via the built-in object model. Presently only the
definition parts of SQL are handled CREATE, ALTER), but not the
manipulation of data (INSERT, UPDATE, DELETE).")
(license license:perl-license)))
(define-public perl-test-xml/juix
(package
(name "perl-test-xml")
(version "0.08")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/S/SE/SEMANTICO/Test-XML-"
version ".tar.gz"))
(sha256
(base32 "1qiym068j0f3fpci5692jpn0v383pxy6k2mcv0x0v1pcrliwqm7b"))))
(build-system perl-build-system)
(propagated-inputs (list perl-module-build
perl-xml-parser
perl-xml-sax
perl-xml-sax-writer
perl-xml-semanticdiff/juix
perl-xml-twig
perl-xml-xpath))
(home-page "https://metacpan.org/release/Test-XML")
(synopsis "Compare XML in perl tests")
(description "This module contains generic XML testing tools.")
(license license:perl-license)))
(define-public perl-text-autoformat/juix
(package
(name "perl-text-autoformat")
(version "1.75")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/N/NE/NEILB/Text-Autoformat-" version
".tar.gz"))
(sha256
(base32 "0wdpqq1cds68i1clx2y22bnnm558d12sr7dmypdv9i5f7p7g9m4x"))))
(build-system perl-build-system)
(propagated-inputs (list perl-text-reform/juix))
(home-page "https://metacpan.org/release/Text-Autoformat")
(synopsis "Automatic text wrapping and reformatting")
(description "The Text::Autoformat module provides a subroutine that
wraps text to specified margins. However, autoformat reformats its
input by analysing the text's structure.")
(license license:perl-license)))
(define-public perl-text-iconv/juix
(package
(name "perl-text-iconv")
(version "1.7")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/MP/MPIOTR/Text-Iconv-"
version ".tar.gz"))
(sha256
(base32 "1hymsbkjkl43wg74p7hgpyjl8yx1chc9g25spj9l7lq9wzavg02v"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Text-Iconv")
(synopsis "Perl interface to iconv() codeset conversion function")
(description "The Text::Iconv module provides a Perl interface to the
iconv() function as defined by the Single UNIX Specification. The convert()
method converts the encoding of characters in the input string from the
'fromcode' codeset to the 'tocode' codeset.")
(license license:asl2.0)))
(define-public perl-text-recordparser/juix
(package
(name "perl-text-recordparser")
(version "1.6.5")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/K/KC/KCLARK/Text-RecordParser-"
version ".tar.gz"))
(sha256
(base32 "0nn33c058bl957v38xhqig4ld34lifl4arqiilhxky339i0q2fys"))))
(build-system perl-build-system)
(arguments
(list
#:tests? #f
;; # Failed test 'Diagnostic OK'
;; # at t/13-tab2graph.t line 34.
;; # got: 'Fontconfig error: No writable cache directories
;; # Fontconfig error: No writable cache directories
;; # Image created "foo.png."
;; # '
;; # expected: 'Image created "foo.png."
;; # '
;; # Looks like you failed 1 test of 4.
;; t/13-tab2graph.t ....
;; Dubious, test returned 1 (wstat 256, 0x100)
;; Failed 1/4 subtests
))
(native-inputs (list graphviz
perl-module-install
perl-test-exception))
(propagated-inputs (list perl-class-accessor
perl-graphviz/juix
perl-io-stringy
perl-list-moreutils
perl-readonly
perl-text-autoformat/juix
perl-text-tabulardisplay/juix))
(home-page "https://metacpan.org/release/Text-RecordParser")
(synopsis "Parse record-oriented data in a text file")
(description "This module is for reading record-oriented data in a
delimited text file. The most common examples have records separated by
newlines and fields separated by commas or tabs, but this module aims to
provide a consistent interface for handling sequential records in a file
however they are delimited.
You can then use many methods to get to the data as arrays or hashes.")
(license license:gpl2)))
(define-public perl-text-reform/juix
(package
(name "perl-text-reform")
(version "1.20")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/C/CH/CHORNY/Text-Reform-"
version ".tar.gz"))
(sha256
(base32 "0qdfnhfn8frnkbpkkw64fhnnxsbb6mmb6dr30c0p1jdaq7c2syd8"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build))
(home-page "https://metacpan.org/release/Text-Reform")
(synopsis "Manual text wrapping and reformatting")
(description "The routines in this module take a series of format (or
picture) strings followed by replacement values. They interpolate those
values into the picture strings, and return the results. The effects are
similar to Perl's built-in formatting mechanism, although the field
specifications are simpler and some of the formatting behaviour is more
sophisticated.")
(license license:perl-license)))
(define-public perl-text-tabulardisplay/juix
(package
(name "perl-text-tabulardisplay")
(version "1.38")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/D/DA/DARREN/Text-TabularDisplay-" version
".tar.gz"))
(sha256
(base32 "1s46s4pg5mpfllx3icf4vnqz9iadbbdbsr5p7pr6gdjnzbx902gb"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Text-TabularDisplay")
(synopsis "Display text in formatted table output")
(description "Text::TabularDisplay simplifies displaying textual data
in a table. The output is identical to the columnar display of query
results in the MySQL text monitor.")
(license license:gpl2)))
(define-public perl-text-xslate/juix
(package
(name "perl-text-xslate")
(version "3.5.9")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/S/SK/SKAJI/Text-Xslate-v"
version ".tar.gz"))
(sha256
(base32 "103lhyqqv53x9rqsnxcba3pc4qkbwnjsw3gpyd7rjm0aw65mrj20"))))
(build-system perl-build-system)
(native-inputs (list perl-file-copy-recursive
perl-module-build
perl-module-build-xsutil
perl-test-requires))
(propagated-inputs (list perl-data-messagepack/juix
perl-mouse))
(home-page "https://metacpan.org/release/Text-Xslate")
(synopsis "Scalable template engine for Perl5")
(description "Xslate is a template engine, tuned for persistent
applications, safe as an HTML generator, and with rich features.
The philosophy of this module is sandboxing in the sense that the
template logic should not have no access outside the template.")
(license license:perl-license)))
(define-public perl-time-warp/juix
(package
(name "perl-time-warp")
(version "0.55")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/MA/MANWAR/Time-Warp-"
version ".tar.gz"))
(sha256
(base32 "1a7g3i9nad7m2qvwl7bssnq083s2nsdnzxq42k2x6j8bimfgm8sc"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Time-Warp")
(synopsis "Control over the flow of time")
(description "Our external experience unfolds in 3 1/2 dimensions.
(Time has a dimensionality of 1/2.) The Time::Warp module offers
developers control over the measurement of time.")
(license license:perl-license)))
(define-public perl-user-identity/juix
(package
(name "perl-user-identity")
(version "1.02")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/User-Identity-"
version ".tar.gz"))
(sha256
(base32 "16dq7s8qjc1z6r094h7ak5796ip6hryb05a1y31nb317ypksw91v"))))
(build-system perl-build-system)
(propagated-inputs (list perl-hash-ordered/juix))
(home-page "https://metacpan.org/release/User-Identity")
(synopsis "Collect information about a user")
(description "The User-Identity distribution is created to maintain a set
of informational objects which are related to one user. The module tries to
be smart providing defaults, conversions and often required combinations.
The identities are not implemented with any kind of storage, and can
therefore be created by any simple or complex Perl program. That way, the
data structures are more flexible than an XML file. For instance, you can
decide to store the data with Data::Dumper, Storable, DBI, AddressBook or
whatever.")
(license license:perl-license)))
(define-public perl-xml-parser-lite/juix
(package
(name "perl-xml-parser-lite")
(version "0.722")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/P/PH/PHRED/XML-Parser-Lite-" version
".tar.gz"))
(sha256
(base32 "1vk3jwh1kfcsmc5kvxzqdnb1cllvf0yf27fg0ra0w6jkw4ks143g"))))
(build-system perl-build-system)
(native-inputs (list perl-test-requires))
(home-page "https://metacpan.org/release/XML-Parser-Lite")
(synopsis "Lightweight pure-perl XML Parser (based on regexps)")
(description "This module implements an XML parser with a interface
similar to XML::Parser. Though not all callbacks are supported, you
should be able to use it in the same way you use XML::Parser.")
(license license:perl-license)))
(define-public perl-xml-semanticdiff/juix
(package
(name "perl-xml-semanticdiff")
(version "1.0007")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/P/PE/PERIGRIN/XML-SemanticDiff-" version
".tar.gz"))
(sha256
(base32 "1xd00821y795fy2rag8aizb5wsbbzfxgmdf9qwpvdxn3pgpyzz85"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build))
(propagated-inputs (list perl-xml-parser))
(home-page "https://metacpan.org/release/XML-SemanticDiff")
(synopsis "Perl extension for comparing XML documents.")
(description "XML::SematicDiff provides a way to compare the contents
and structure of two XML documents. By default, it returns a list of
hashrefs where each hashref describes a single difference between the
two docs.")
(license license:perl-license)))
(define-public debbugs-gnu/juix
(let ((commit "356ec62a8702a77726609723e8ed0246236dd51d")
(revision "0"))
(package
(name "debbugs")
(version (git-version "0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/lechner/debbugs-gnu")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0q84ivqc3w083d23cflgcvvv6hccy0bf1mf2f8qpa6im1bd8hlyb"))))
(build-system copy-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'fix-paths
(lambda _
(let ((inetutils #$(this-package-input "inetutils"))
(lib-perl (string-append #$output "/lib/perl")))
(substitute* (string-append lib-perl "/Debbugs/Config.pm")
(("hostname --fqdn") (string-append inetutils "/bin/hostname --fqdn"))
(("/usr/share/debbugs/templates") (string-append #$output "/share/templates"))))))
(add-after 'fix-paths 'wrap-executables
(lambda* (#:key inputs #:allow-other-keys)
(let* ((cgi (string-append #$output "/cgi"))
(basenames (scandir cgi (lambda (name)
(string-match "[.]cgi$" name))))
(scripts (map (lambda (name)
(string-append cgi "/" name))
basenames)))
;; drop display limit for bug pagination
(substitute* (string-append cgi "/pkgreport.cgi")
(("[$]max_bugs = 400 if [$]max_bugs > 400;") ""))
;; debugging
(for-each
(lambda (script)
(substitute* script
;; turn on debugging output
(("use strict;")
"use strict;\n\nuse Carp 'verbose';\n$SIG{ __DIE__ } = sub { Carp::confess( @_ ) };")
;; enable CGI command-line debugging
(("use CGI::Simple;") "use CGI::Simple;\n$CGI::Simple::DEBUG = 1;")))
scripts)
(for-each
(lambda (script)
;; PERL5LIB is ignored in tainted mode
(substitute* script (("use strict;")
"use strict;\n\nuse lib $ENV{PERL5LIB} =~ /[^:]+/g;")))
scripts)
(use-modules (ice-9 popen)
(ice-9 textual-ports)
(srfi srfi-1))
(define (perl-version perl-executable)
(let* ((input-pipe (open-pipe* OPEN_READ perl-executable "-e" "print $^V"))
(version-output (get-string-all input-pipe)))
(close-pipe input-pipe)
(string-delete #\v version-output)))
(define* (perl-site-libs store-folders #:key perl)
(let* ((version (perl-version perl))
(lib-site-perl (string-append "/lib/perl5/site_perl/" version)))
(append-map
(lambda (folder)
(let* ((candidate (string-append folder lib-site-perl)))
(if (file-exists? candidate)
(list candidate)
'())))
store-folders)))
(let* ((perl-executable (string-append #$(this-package-input "perl") "/bin/perl"))
(without-source (filter
(lambda (input)
(not (string=? "source" (car input))))
inputs))
(store-folders (map cdr without-source))
(site-libs (perl-site-libs store-folders #:perl perl-executable))
(package-lib-perl (string-append #$output "/lib/perl"))
(variable-specs `(("PERL5LIB" prefix
(,package-lib-perl ,@site-libs)))))
(for-each
(lambda (script)
(apply wrap-program script #:sh (which "bash") variable-specs))
scripts))))))
#:modules '((ice-9 ftw)
(ice-9 regex)
(guix build utils)
(guix build copy-build-system))
#:install-plan
#~'(("Debbugs" "lib/perl/")
("html" "share/")
("templates" "share/")
("cgi/" "cgi" #:exclude-regexp ("off/.*")))))
(inputs (list
; for wrap-program
bash
inetutils
perl
perl-cgi-simple
perl-data-dumper
perl-db-file
perl-exporter-tiny
perl-html-parser
perl-io-stringy
perl-list-moreutils
perl-mailtools
perl-mime-tools
perl-mldbm/juix
perl-module-implementation
perl-module-runtime
perl-params-validate
perl-safe-hole/juix
perl-search-estraier/juix
perl-soap-lite/juix
perl-storable
perl-text-template
perl-timedate
perl-try-tiny
perl-uri))
(home-page "https://codeberg.org/lechner/debbugs-gnu")
(synopsis "Debian has a bug tracking system which files details of
bugs reported by users and developers. Each bug is given a number, and is
kept on file until it is marked as having been dealt with. The system is
mainly controlled by e-mail, but the bug reports can be viewed using the
WWW.
This is the version used by the GNU Project.")
(description
"Debian's bug tracking system as used by the GNU Project.")
(license license:gpl2+))))
(define-public debbugs-gnu-experimental/juix
(let ((commit "8beaa7ffcf5e07dd814689c28ce8ce060036d532")
(revision "0"))
(package
(name "debbugs")
(version (git-version "0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/lechner/debbugs-gnu")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1l7735qcws136sk36akhx1dyfrgpzh1hy5j2cczciydwqb1bf597"))))
(build-system copy-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'fix-paths
(lambda _
(let ((inetutils #$(this-package-input "inetutils"))
(lib-perl (string-append #$output "/lib/perl")))
(substitute* (string-append lib-perl "/Debbugs/Config.pm")
(("hostname --fqdn") (string-append inetutils "/bin/hostname --fqdn"))
(("/usr/share/debbugs/templates") (string-append #$output "/share/templates"))))))
(add-after 'fix-paths 'wrap-executables
(lambda* (#:key inputs #:allow-other-keys)
(let* ((cgi (string-append #$output "/cgi"))
(basenames (scandir cgi (lambda (name)
(string-match "[.]cgi$" name))))
(scripts (map (lambda (name)
(string-append cgi "/" name))
basenames)))
;; debugging
(for-each
(lambda (script)
(substitute* script
;; turn on debugging output
(("use strict;")
"use strict;\n\nuse Carp 'verbose';\n$SIG{ __DIE__ } = sub { Carp::confess( @_ ) };")
;; enable CGI command-line debugging
(("use CGI::Simple;") "use CGI::Simple;\n$CGI::Simple::DEBUG = 1;")))
scripts)
(for-each
(lambda (script)
;; PERL5LIB is ignored in tainted mode
(substitute* script (("use strict;")
"use strict;\n\nuse lib $ENV{PERL5LIB} =~ /[^:]+/g;")))
scripts)
(use-modules (ice-9 popen)
(ice-9 textual-ports)
(srfi srfi-1))
(define (perl-version perl-executable)
(let* ((input-pipe (open-pipe* OPEN_READ perl-executable "-e" "print $^V"))
(version-output (get-string-all input-pipe)))
(close-pipe input-pipe)
(string-delete #\v version-output)))
(define* (perl-site-libs store-folders #:key perl)
(let* ((version (perl-version perl))
(lib-site-perl (string-append "/lib/perl5/site_perl/" version)))
(append-map
(lambda (folder)
(let* ((candidate (string-append folder lib-site-perl)))
(if (file-exists? candidate)
(list candidate)
'())))
store-folders)))
(let* ((perl-executable (string-append #$(this-package-input "perl") "/bin/perl"))
(without-source (filter
(lambda (input)
(not (string=? "source" (car input))))
inputs))
(store-folders (map cdr without-source))
(site-libs (perl-site-libs store-folders #:perl perl-executable))
(package-lib-perl (string-append #$output "/lib/perl"))
(variable-specs `(("PERL5LIB" prefix
(,package-lib-perl ,@site-libs)))))
(for-each
(lambda (script)
(apply wrap-program script #:sh (which "bash") variable-specs))
scripts))))))
#:modules '((ice-9 ftw)
(ice-9 regex)
(guix build utils)
(guix build copy-build-system))
#:install-plan
#~'(("lib/" "lib/perl/")
("html" "share/")
("templates" "share/")
("cgi/" "cgi"))))
(inputs (list
; for wrap-program
bash
inetutils
perl
perl-b-hooks-endofscope
perl-cgi-simple
perl-class-accessor-grouped
perl-class-c3-componentised
perl-class-data-inheritable
perl-class-hash/juix
perl-class-inspector
perl-class-singleton
perl-clone-choose
perl-data-dumper
perl-data-messagepack/juix
perl-datetime
perl-datetime-format-builder
perl-datetime-format-pg/juix
perl-datetime-format-strptime
perl-datetime-locale
perl-datetime-timezone
perl-db-file
perl-dbix-class/juix
perl-dbix-class-dynamicdefault/juix
perl-dbix-class-timestamp/juix
perl-devel-globaldestruction
perl-devel-stacktrace
perl-exception-class
perl-exporter-tiny
perl-eval-closure
perl-file-sharedir
perl-hash-merge
perl-html-parser
perl-io-stringy
perl-list-allutils
perl-list-moreutils
perl-mail-message/juix
perl-mailtools
perl-mime-tools
perl-mldbm/juix
perl-module-find
perl-module-implementation
perl-module-runtime
perl-mouse
perl-mousex-nativetraits
perl-mro-compat
perl-namespace-autoclean
perl-namespace-clean
perl-package-stash
perl-params-validate
perl-params-validationcompiler
perl-role-tiny-2
perl-safe-hole/juix
perl-search-estraier/juix
perl-soap-lite/juix
perl-specio
perl-sql-abstract-classic
perl-storable
perl-strictures-2
perl-sub-exporter-progressive
perl-sub-identify
perl-sub-name
perl-sub-quote
perl-text-iconv/juix
perl-text-template
perl-text-xslate/juix
perl-timedate
perl-try-tiny
perl-uri
perl-variable-magic))
(home-page "https://codeberg.org/lechner/debbugs-gnu")
(synopsis "Debian has a bug tracking system which files details of
bugs reported by users and developers. Each bug is given a number, and is
kept on file until it is marked as having been dealt with. The system is
mainly controlled by e-mail, but the bug reports can be viewed using the
WWW.
This is the version used by the GNU Project.")
(description
"Debian's bug tracking system as used by the GNU Project.")
(license license:gpl2+))))