Extended puppet package resource

Paweł Tomulik



8,888 latest version

3.9 quality score

Version information

  • 0.1.5 (latest)
  • 0.1.4
  • 0.1.3
  • 0.1.2
released Jan 16th 2014

Start using this module


ptomulik/packagex_resource — version 0.1.5 Jan 16th 2014


Build Status

Table of Contents

  1. Caution
  2. Overview
  3. Module Description
  4. Setup
  5. Usage
  6. Resolved issues
  7. Known incompatibilities
  8. Limitations
  9. Development


This is an experimental module. It may be substantially changed, renamed or removed at all without a notice. Do not use in production.


NOTE: The build_options property is being renamed to package_settings. Currently it's a transition period so you may use one or the other. The build_options will be removed in next major release.

This is an enhanced version of puppet package resource. Providers for this resource type are developed as separate modules. Currently I've developed portsx provider, which is an enhanced and bug-fixed version of puppet's ports provider.

Module Description

The module re-implements puppet package resource adding some crucial features to it and its providers. Currently new features include:

  • package_settings - a property (ensurable) that allows defining additional options for package.
  • build_options - is an "alias" for package_settings; don't use both at the same time for a given resource instance!

The package_settings are independent of the well known install_options and uninstall_options. The definition of package_settings is generally provider-specific. Whereas install_options and uninstall_options are just parameters (not ensurable), the package_settings is a fully featured property, that is the settings may be ensured on a package. See portsx provider for an example implementation of package settings.


What packagex affects

  • installs, upgrades, reinstalls and uninstalls packages.

Setup Requirements

You may need to enable pluginsync in your puppet.conf.

Beginning with packagex

Its usage is essentially same as for the original package resource.


Its usage is essentially same as for the original package resource.


Currently nothing special.


The project is held at github: