We've already seen how to install a package using the package resource, and this is all you need to do with most packages. However, the package resource has a few extra features which may be useful.

Uninstalling packages

The ensure attribute normally takes the value installed in order to install a package, but if you specify absent instead, Puppet will remove the package if it happens to be installed. Otherwise, it will take no action. The following example will remove the apparmor package if it's installed (package_remove.pp):

package { 'apparmor':
  ensure => absent,

By default, when Puppet removes packages, it leaves in place any files managed by the package. To purge all the files associated with the package, use purged instead of absent ...

Get Puppet 5 Beginner's Guide - Third Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.