Heray-Was-Here
Server : Apache
System : Linux vps103298.mylogin.co 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64
User : calvet ( 273824)
PHP Version : 7.4.33
Disable Function : NONE
Directory :  /usr/share/perl5/vendor_perl/Ocsinventory/Agent/Backend/OS/Generic/Packaging/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/share/perl5/vendor_perl/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Gentoo.pm
package Ocsinventory::Agent::Backend::OS::Generic::Packaging::Gentoo;

use strict;
use warnings;

sub check {
    my $params = shift;
    my $common = $params->{common};
    $common->can_run("equery")
}
sub run {
    my $params = shift;
    my $common = $params->{common};

# TODO: This had been rewrite from the Linux agent _WITHOUT_ being checked!
# New format for listing softwares with equery command (equery 0.3.0.5)
# Older version don't run with these options

    my $equery_vers = `equery --version ` =~ /.*\((.*)\).*/;
    $equery_vers = $1;
    my ($major,$minor)=$equery_vers=~/(\d+)\.(\d+)\.\d+/;

    if ($minor ge 3) {
        foreach (`equery list --format='\$cp \$fullversion' '*'`){
            if (/^(.*) (.*)/) {
                $common->addSoftware({
                    'NAME'          => $1,
                    'VERSION'       => $2,
                });
            }
        }
    } else {
    # Old version of Gentoo
        foreach (`equery list -i`){
            if (/^([a-z]\w+-\w+\/\.*)-([0-9]+.*)/) {
                $common->addSoftware({
                    'NAME'          => $1,
                    'VERSION'       => $2,
                });
            }
        }
    } 
}

1;

Hry