DPKG::Make 0.1 review

Download
by rbytes.net on

DPKG::Make is a Perl module for cleanly generate an Debian package (.dpkg). SYNOPSIS use DPKG::Make; # The "Manifest

License: GPL (GNU General Public License)
File size: 7K
Developer: Scott Harrison
0 stars award from rbytes.net

DPKG::Make is a Perl module for cleanly generate an Debian package (.dpkg).

SYNOPSIS

use DPKG::Make;

# The "Manifest": list of files that will comprise the software package.
my @filelist=('tmproot/file1.txt',
'tmproot/file2.txt',
'tmproot/file3.txt',
'tmproot/file4.txt');

my %doc; my %conf; my %metadata;

# Define special handling of files.
$doc{'tmproot/file1.txt'}=1;
$conf{'tmproot/file2.txt'}=1;

# Bare minimum metadata (descriptive data of the software package).
my $pathprefix='tmproot';
my $tag='test'; # cannot use uppercase characters
my $version='0.1';
my $release='1';

# Highly descriptive metadata.
%metadata=(
'vendor'=>'Excellence in Perl Laboratory',
'summary'=>'a Test Software Package',
'name'=>$tag,
'copyrightname'=>'...',
'group'=>'base',
'AutoReqProv'=>'no',
'requires=>[()],
'email'=>'joe@somewhere.com',
'description'=>'This package is generated by DPKG::Make. '.
'This implements the '.$tag.' software package',
'pre'=>'echo "You are installing a package built by DPKG::Make; '.
'DPKG::Make is available at http://www.cpan.org/."',
);

# Temporary "sandbox" (this should not be /tmp because this is deleted!).
my $buildloc='TempBuildLoc';

# The "execute" subroutine coordinates all of the DPKG building steps.
DPKG::Make::execute($tag,$version,$release,$arch,$buildloc,$pathprefix,
@filelist,%doc,%conf,
%metadata);

# You can also build a DPKG in more atomic steps; these three smaller
# steps are equivalent to the execute command.

# Step 1: Generate the rpm source location.
DPKG::Make::dpkgsrc($tag,$version,$release,$arch,$buildloc,$pathprefix,
@filelist,%doc,%conf,
%metadata);

# Step 2: Build the rpm and copy into the invoking directory.
DPKG::Make::compiledpkg($buildloc,$metadata{'name'},$version,
$release,$arch,
$currentdir,$invokingdir);

# Step 3: clean the location used to gather and build the rpm.
DPKG::Make::cleanbuildloc($buildloc);

Requirements:
Perl

DPKG::Make 0.1 search tags