NAME
Package - The Acmeist Module Package Management Tool
SYNOPSIS
From the command line:
> pkg help
> pkg new \
--from=pkg/perl/dzil \
--module=Foo::Bar \
--desc='Foo to the Bar' \
foo-bar-pm
DESCRIPTION
"pkg" is your tool for creating distributable, modular packages, in a
variety of programming languages. Perl 5 modules for CPAN, Python
modules for PyPI, Ruby modules for RubyGems, etc.
In truth, pkg is nothing more than a simple way to create a new
directory of starter files, by applying a set of configuration
information to a set of file templates. The information is all
completely in your control. You can use other people's templates or
create your own.
QUICK START
Here's the quick and simple way to get started, assuming you are
familiar with cpanm and "git". From the command line:
# Go to the directory where you keep your repos:
cd $HOME/src/
# Get the base pkg directory:
git clone https://github.com/ingydotnet/pkg-pkg.git pkg
# pkg/README will contain a list of known pkg template repos
# Get a basic pkg template. In the case, for a Perl module:
git clone https://github.com/rafl/perl-pkg.git pkg/perl
# Maybe get a more specific Perl module template:
git clone https://github.com/rafl/perl-dzil-pkg.git pkg/perl/dzil
# Edit the conf files appropriately
edit pkg/pkg.conf pkg/perl/pkg.conf pkg/perl/dzil/pkg.conf
# Now create a new perl module in the foo-bar-pm directory
pkg new --from=pkg/perl --module=Foo::Bar --desc='Foo Bar' foo-bar-pm
# Make another new module!
pkg new --from=pkg/perl/dzil --module=Bar::Bar --desc='Bar Bar' bar-bar-pm
That was easy.
TEMPLATES
The main template repository is:
https://github.com/ingydotnet/pkg-pkg.git
The README in this repo contains repos for many other repos. You can
easily create your own too. Just make sure there is a "pkg.conf" file in
each template dir (even if it is empty). Template directories inherit
from their parent directory.
More doc soon.
AUTHOR
Ingy döt Net
COPYRIGHT AND LICENSE
Copyright (c) 2011. Ingy döt Net.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
See http://www.perl.com/perl/misc/Artistic.html