Author image R Bernard Davison

NAME

Software::Packager::Solaris - The Software::Packager extension for Solaris 2.5.1 and above

SYNOPSIS

 use Software::Packager;
 my $packager = new Software::Packager('solaris');

DESCRIPTION

This module is used to create software packages in a format suitable for installation with pkgadd. The process of creating packages is baised upon the document Application Packaging Developer's Guide. Which can be found at http://docs.sun.com/ab2/@LegacyPageView?toc=SUNWab_42_2:/safedir/space3/coll1/SUNWasup/toc/PACKINSTALL:Contents;bt=Application+Packaging+Developer%27s+Guide;ps=ps/SUNWab_42_2/PACKINSTALL/Contents

FUNCTIONS

new()

This method creates and returns a new Software::Packager::Solaris object.

add_item()

 $packager->add_item(%object_data);
This method overrides the add_item function in the Software::Packager module.
This method adds a new object to the package.

package()

$packager->packager(); This method overrides the base API in Software::Packager, it controls the process if package creation.

package_name()

This method is used to specify the abbreviated package name.

Sun say: (Application Packaging Developer's Guide. Page 32) A valid package abbreviation must the criteria defined below:

  • It must start with a letter. Additional charaters may be alphanumeric and can be the two special charaters + and -.

  • It must be nine or fewer charaters.

  • Reserved names are install, new, and all.

    For more details see the pkginfo(4) man page.

program_name()

This is used to specify the full package name.

The program name must be less that 256 charaters.

For more details see the pkginfo(4) man page.

architecture()

The architecture must be a comma seperated list of alphanumeric tokens that indicate the architecture associated with the package. The maximum length of a token is 16 charaters. A token should be in the format "instruction set"."platform group" where: instruction set is the output of `uname -p` platform group is the output of `uname -m`

If the architecture is not set then the current instruction set is used.

For more details see the pkginfo(4) man page.

version()

This method is used to check the format of the version and return it in the format required for Solaris.

  • The version must be 256 charaters or less.

  • The first charater cannot be a left parenthesis.

    The recommended format isi an arbitrary string of numbers in Dewey-decimal format. For more datails see the pkginfo(4) man page.

install_dir()

 $packager->install_dir('/usr/local');
 my $base_dir = $packager->install_dir();
 

This method sets the base directory for the software to be installed. The installation directory must start with a "/".

compatible_version()

 $packager->compatible_version('/some/path/file');
 or
 $packager->compatible_version($compver_stored_in_string);

 my $compatible_version = $packager->compatible_version();
 

This method sets the compatible versions file for the software to be installed.

space()

 $packager->space('/some/path/file');
 or
 $packager->space($space_data_stored_in_string);
 my $space = $packager->space();
 

This method sets the space file for the software to be installed.

request_script()

 $packager->request_script('/some/path/file');
 or
 $packager->request_script($request_script_stored_in_string);
 my $request_script = $packager->request_script();
 

This method sets the space file for the software to be installed.

SEE ALSO

Software::Packager Software::Packager::Object::Solaris

AUTHOR

R Bernard Davison <rbdavison@cpan.org>

Also, special mention should go to the following people who provided bug fixes

Krist van Besien

HOMEPAGE

http://bernard.gondwana.com.au

COPYRIGHT

Copyright (c) 2001 Gondwanatech. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

4 POD Errors

The following errors were encountered while parsing the POD:

Around line 127:

'=item' outside of any '=over'

Around line 179:

You forgot a '=back' before '=head2'

Around line 271:

'=item' outside of any '=over'

Around line 310:

You forgot a '=back' before '=head2'