From: Guido Günther Date: Wed, 24 Feb 2010 08:07:56 +0000 (+0100) Subject: List application in Debian based vm images X-Git-Tag: 1.0.85~5 X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=commitdiff_plain;h=de33cc91ee93f85f06b9976fdc5454c0eb851b8e;ds=sidebyside List application in Debian based vm images Hi, attached patch adds the code to list applications installed in Debian based vm images. Cheers, -- Guido >From 9427a14725b33415058a0713923c62bd231504ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= Date: Tue, 23 Feb 2010 21:05:02 +0100 Subject: [PATCH 2/2] Add application listing for Debian --- diff --git a/perl/lib/Sys/Guestfs/Lib.pm b/perl/lib/Sys/Guestfs/Lib.pm index c7b5e7e..e8796ad 100644 --- a/perl/lib/Sys/Guestfs/Lib.pm +++ b/perl/lib/Sys/Guestfs/Lib.pm @@ -1453,6 +1453,23 @@ sub _check_for_applications push @apps, $app } } + } elsif (defined $package_format && $package_format eq "deb") { + my @lines = $g->command_lines + (["dpkg-query", + "-f", '${Package} ${Version} ${Architecture} ${Status}\n', + "-W"]); + foreach (@lines) { + if (m/^(.*) (.*) (.*) (.*) (.*) (.*)$/) { + if ( $6 eq "installed" ) { + my $app = { + name => $1, + version => $2, + arch => $3 + }; + push @apps, $app + } + } + } } } elsif ($osn eq "windows") { # XXX