X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=inspector%2Fvirt-inspector;h=ce9ac0eaabd9aa36a416a115532820a3c28d6db2;hp=7f9d220e4cef75ec98092619574a012355f21cab;hb=692f127447d399db21c2e93026d4d2b0ac1839d1;hpb=9f5d2171b8ab6ddedbf1822f24d4da969457433c diff --git a/inspector/virt-inspector b/inspector/virt-inspector index 7f9d220..ce9ac0e 100755 --- a/inspector/virt-inspector +++ b/inspector/virt-inspector @@ -200,17 +200,17 @@ foreach $root (@roots) { # Basic OS fields. $xml->dataElement (root => canonicalize ($root)); - my ($s, $distro, $major_version); + my $s; $s = $g->inspect_get_type ($root); $xml->dataElement (name => $s) if $s ne "unknown"; $s = $g->inspect_get_arch ($root); $xml->dataElement (arch => $s) if $s ne "unknown"; - $distro = $g->inspect_get_distro ($root); - $xml->dataElement (distro => $distro) if $distro ne "unknown"; + $s = $g->inspect_get_distro ($root); + $xml->dataElement (distro => $s) if $s ne "unknown"; $s = $g->inspect_get_product_name ($root); $xml->dataElement (product_name => $s) if $s ne "unknown"; - $major_version = $g->inspect_get_major_version ($root); - $xml->dataElement (major_version => $major_version); + $s = $g->inspect_get_major_version ($root); + $xml->dataElement (major_version => $s); $s = $g->inspect_get_minor_version ($root); $xml->dataElement (minor_version => $s); @@ -226,7 +226,7 @@ foreach $root (@roots) { output_filesystems ($root); # Package format / management and applications. - output_applications ($root, $distro, $major_version); + output_applications ($root); $xml->endTag("operatingsystem"); @@ -305,6 +305,7 @@ sub output_filesystems $xml->startTag ("filesystems"); my @fses = $g->inspect_get_filesystems ($root); + @fses = sort @fses; foreach (@fses) { $xml->startTag ("filesystem", dev => canonicalize ($_)); @@ -369,46 +370,24 @@ sub output_applications { local $_; my $root = shift; - my $distro = shift; - my $major_version = shift; # Based on the distro, take a guess at the package format # and package management. my ($package_format, $package_management); - if (defined $distro) { - if ($distro eq "debian") { - $package_format = "deb"; - $package_management = "apt"; - } - elsif ($distro eq "fedora") { - $package_format = "rpm"; - $package_management = "yum"; - } - elsif ($distro =~ /redhat/ || $distro =~ /rhel/) { - if ($major_version >= 5) { - $package_format = "rpm"; - $package_management = "yum"; - } else { - $package_format = "rpm"; - $package_management = "up2date"; - } - } - # else unknown. - } + $package_format = $g->inspect_get_package_format ($root); + $package_management = $g->inspect_get_package_management ($root); $xml->dataElement (package_format => $package_format) - if defined $package_format; + if $package_format ne "unknown"; $xml->dataElement (package_management => $package_management) - if defined $package_management; + if $package_management ne "unknown"; # Do we know how to get a list of applications? - if (defined $package_format) { - if ($package_format eq "rpm") { - output_applications_rpm ($root); - } - elsif ($package_format eq "deb") { - output_applications_deb ($root); - } + if ($package_format eq "rpm") { + output_applications_rpm ($root); + } + elsif ($package_format eq "deb") { + output_applications_deb ($root); } }