Module-Format - perform bulk operations on Perl modules
About
Module-Format aims to simplify installing a large number of Perl modules (or their associated CPAN distributions) which are often stringified into various different formats in the Perl world. It can handle all of these format, including input from heterogeneous formats.
The strings of Perl 5 modules are often gives in various formats. One can see things like:
Foo::Bar::Baz
Foo-Bar-Baz
perl(Foo::Bar::Baz)
perl-Foo-Bar-Baz
Foo/Bar/Baz.pm
libfoo-bar-baz-perl
Module-Format can input from most of them and output to all of them.
Use Cases
apt-get
To install a group of modules using apt-get on Debian, Ubuntu, etc. define the following shell function:
up() { apt-get -y install $(perlmf as_deb "$@") }
Then you can type invocations like up XML::RSS XML-LibXML DBIx/Class.pm
(note the inconsistency in the parameters.) to install Perl modules.
urpmi
To install a group of modules using urpmi on Mageia Linux, define the following shell function.
up() { urpmi --auto $(perlmf as_rpm_colon "$@") }
Then you can type invocations like up XML::RSS XML-LibXML DBIx/Class.pm
(note the inconsistency in the parameters.) to install Perl modules.
Project Links
For Module-Format
GitHub Repository - contains version control and other resources.
Module-Format on MetaCPAN - download, documentation, browsing and information.
Licence
Module-Format is free and open-source software (FOSS) distributed under the MIT/Expat License, a permissive software licence.
Blog Posts About Module-Format
“Introducing Module-Format” - on Shlomi Fish’s Technical Blog.