DUPUIS Arnaud > Slackware-Slackget-0.16 > Slackware::Slackget::Base

Download:
Slackware-Slackget-0.16.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  1
View/Report Bugs
Module Version: 1.0.3   Source   Latest Release: Slackware-Slackget-0.17

NAME ^

Slackware::Slackget::Base - A module which centralize some base methods usefull to slack-get

VERSION ^

Version 1.0.2

SYNOPSIS ^

This module centralize bases tasks like package directory compilation, etc. This class is mainly designed to be a wrapper so it can change a lot before the release.

    use Slackware::Slackget::Base;

    my $base = Slackware::Slackget::Base->new();
    my $packagelist = $base->compil_packages_directory('/var/log/packages/');
    $packagelist = $base->load_list_from_xml_file('installed.xml');

CONSTRUCTOR ^

new

Take no arguments.

        my $base = Slackware::Slackget::Base->new();

FUNCTIONS ^

ls

take a directory as argument and return an array wich contain all things in this directory.

        my @config_files = $base->ls('/etc/slack-get/') ;

dir2files

take at leat one directory in argument and recursively follow all subdirectories. Return an array containing all files encounter but WITHOUT symblic links.

        my @config_files = $base->dir2files('/etc','/usr/local/etc', "/$ENV{HOME}/etc/") ;

compil_packages_directory

take a directory where are store installed packages files and return a Slackware::Slackget::PackageList object

        my $packagelist = $base->compil_packages_directory('/var/log/packages/');

load_installed_list_from_xml_file

Load the data for filling the list from an XML file. Return a Slackware::Slackget::PackageList. This method is design for reading a installed.xml file.

        $packagelist = $base->load_installed_list_from_xml_file('installed.xml');

load_packages_list_from_xml_file

Load the data for filling the list from an XML file. Return a hashref built on this model :

        my $hashref = {
                'key' => Slackware::Slackget::PackageList,
                ...
        };

Ex:

        my $hashref = {
                'slackware' => blessed(Slackware::Slackget::PackageList),
                'slacky' => blessed(Slackware::Slackget::PackageList),
                'audioslack' => blessed(Slackware::Slackget::PackageList),
                'linuxpackages' => blessed(Slackware::Slackget::PackageList),
        };

This method is design for reading a packages.xml file.

        $hashref = $base->load_packages_list_from_xml_file('packages.xml');

load_media_list_from_xml_file

Load a server list from a medias.xml file.

        $serverlist = $base->load_server_list_from_xml_file('servers.xml');

load_server_list_from_xml_file

An allias for load_media_list_from_xml_file(). Given for backward compatibility

set_include_file_list

By default the file list is not include in the installed.xml for some size consideration (on my system including the file list into installed.xml make him grow 28 times ! It passed from 400 KB to 11 MB),

So you can use this method to include the file list into installed.xml. BE carefull, to use it BEFORE compil_packages_directory() !

        $base->set_include_file_list();
        $packagelist = $base->compil_packages_directory();

ldd

Like the UNIX command ldd. Do a ldd system call on a list of files and return an array of dependencies.

        my @dependecies = $base->ldd('/usr/bin/gcc', '/usr/bin/perl', '/bin/awk') ;

AUTHOR ^

DUPUIS Arnaud, <a.dupuis@infinityperl.org>

BUGS ^

Please report any bugs or feature requests to bug-Slackware-Slackget@rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Slackware-Slackget. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT ^

You can find documentation for this module with the perldoc command.

    perldoc Slackware-Slackget

You can also look for information at:

ACKNOWLEDGEMENTS ^

COPYRIGHT & LICENSE ^

Copyright 2005 DUPUIS Arnaud, All Rights Reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

syntax highlighting: