class Inspec::Resources::Debs

Debian / Ubuntu

def build_package_list

def build_package_list
  # use two spaces as delimiter in case any of the fields has a space in it
  command = "dpkg-query -W -f='${db:Status-Abbrev}  ${Package}  ${Version}  ${Architecture}\\n'"
  cmd = inspec.command(command)
  all = cmd.stdout.split("\n")
  return [] if all.nil?
  all.map do |m|
    a = m.split(/ {2,}/)
    a[0] = 'installed' if a[0] =~ /^.i/
    a[2] = a[2].split(':').last
    PackageStruct.new(*a)
  end
end