$_ = $g->cat ("/etc/redhat-release");
if (/Fedora release (\d+)(?:\.(\d+))?/) {
+ chomp; $r->{product_name} = $_;
$r->{osdistro} = "fedora";
$r->{os_major_version} = "$1";
$r->{os_minor_version} = "$2" if(defined($2));
}
elsif (/(Red Hat Enterprise Linux|CentOS|Scientific Linux)/) {
+ chomp; $r->{product_name} = $_;
+
my $distro = $1;
if($distro eq "Red Hat Enterprise Linux") {
$_ = $g->cat ("/etc/debian_version");
if (/(\d+)\.(\d+)/) {
+ chomp; $r->{product_name} = $_;
$r->{osdistro} = "debian";
$r->{os_major_version} = "$1";
$r->{os_minor_version} = "$2";
Operating system distribution, eg. "debian".
+=item product_name
+
+Free text product name.
+
=item major_version
Operating system major version, eg. "4".
my $r = shift;
$r->{os} = $r->{root}->{fsos} if exists $r->{root}->{fsos};
+ $r->{product_name} = $r->{root}->{product_name}
+ if exists $r->{root}->{product_name};
$r->{distro} = $r->{root}->{osdistro} if exists $r->{root}->{osdistro};
$r->{major_version} = $r->{root}->{os_major_version}
if exists $r->{root}->{os_major_version};
(["rpm",
"-q", "-a",
"--qf", "%{name} %{epoch} %{version} %{release} %{arch}\n"]);
+ @lines = sort @lines;
foreach (@lines) {
if (m/^(.*) (.*) (.*) (.*) (.*)$/) {
my $epoch = $2;
(["dpkg-query",
"-f", '${Package} ${Version} ${Architecture} ${Status}\n',
"-W"]);
+ @lines = sort @lines;
foreach (@lines) {
if (m/^(.*) (.*) (.*) (.*) (.*) (.*)$/) {
if ( $6 eq "installed" ) {