ispravke za squeeze
[ocsinventory-agent-cn.git] / Deb.pm
diff --git a/Deb.pm b/Deb.pm
new file mode 100644 (file)
index 0000000..b64552a
--- /dev/null
+++ b/Deb.pm
@@ -0,0 +1,26 @@
+package Ocsinventory::Agent::Backend::OS::Generic::Packaging::Deb;
+
+use strict;
+use warnings;
+
+sub check { can_run("dpkg") }
+
+sub run {
+  my $params = shift;
+  my $common = $params->{common};
+
+# use dpkg-query --show --showformat='${Package}|||${Version}\n'
+  foreach(`dpkg-query --show --showformat='\${Status}---\${Package}---\${Version}---\${Installed-Size}---\${Description}\n' | grep ^'install ok installed'`) {
+     if (/^(\S+)---(\S+)---(\S+)---(\S+)---(.*)/) {
+       $common->addSoftware ({
+         'NAME'          => $2,
+         'VERSION'       => $3,
+         'FILESIZE'      => $4,
+         'COMMENTS'      => $5,
+         'FROM'          => 'deb'
+       });
+    }
+  }
+}
+
+1;