Die Installation von dpkg-Packages mittels Puppet kann mit einer einfachen Klasse realisiert werden. Dabei wird das Installationspaket mit wget herunterladen, auf dem Zielsystem installiert und anschließend wieder entfernt.

class examplesoftware ($url) {

 $package_path = "/tmp/${title}"

 exec {'download':
  command  => "/usr/bin/wget -O ${package_path} ${url}"
 }

 package {'install':
  ensure   => installed,
  name     => "${title}",
  provider => 'dpkg',
  source   => "${package_path}"
 }

 file {'cleanup':
  ensure   => absent,
  path     => "${package_path}"
 }

 Exec['download'] -> Package['install'] -> File['cleanup']

}