- Overview
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with software
- Usage - Configuration options and additional functionality
- Reference - An under-the-hood peek at what the module is doing and how
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
- Contributors
Puppet Module to install various Desktop Software
The software module provides classes to install many commonly needed Desktop Applications.
Many of these applications require little or no configuration and are mostly Graphical.
This module provides a quick way to get many repetitive apps installed.
This module currently supports:
- Apple Mac OS X
- Ubuntu Desktop
- Windows
Other modules exist for many of these applications and I have used some of them
as examples, but I prefer to manage these in one module.
Each application has a class, which you may include separately to install
exactly the applications you desire.
only installs apps (OS X) and packages (Ubuntu, Windows)
only need to install the module
Install only Google Chrome browser:
include software::browsers::chrome
include software::browsers::chrome
include software::browsers::firefox
include software::database::pgcommander
include software::database::sequelpro
include software::editors::atom
include software::editors::textmate
include software::entertainment::vlc
include software::idesdk::android_studio
include software::idesdk::android_tools
include software::idesdk::pdk
include software::idesdk::tfenv
include software::prefpanes::launchrocket
include software::social::skype
include software::social::slack
include software::storage::fetch
include software::storage::filezilla
include software::utilities::controlplane
include software::utilities::iterm
include software::utilities::onyx
include software::vcsscm::git
include software::vcsscm::sourcetree
include software::virtualization::virtualbox
include software::virtualization::vagrant
include software::webstack::anvil
include software::browsers
hiera_include('classes')
---
classes:
- software::browsers::chrome
- software::editors::atom
- software::entertainment::vlc
- software::social::skype
- software::vcsscm::git
software::browsers::chrome::channel: stable
software::editors::atom::packages:
language-puppet: {}
linter: {}
linter-puppet-lint: {}
linter-rubocop: {}
software::editors::atom::themes:
twilight-syntax: {}
software::editors::atom::user: username
software::vcsscm::git:
gui: true
bash_completion: true
bash_prompt: true
gitconfig: true
gitignore: puppet:///modules/custom/user/gitignore
- browsers
- database
- editors
- entertainment
- idesdk
- social
- storage
- utilities
- vcsscm
- virtualization
- webstack
Some proprietary software requires licenses.
You may need to pass these license keys and possibly urls to use those classes.
This module has been built on and tested against Puppet 3.2.4 and higher. While I am sure other versions work, I have not tested them.
This module supports modern OS X, Debian, Ubuntu, and Windows systems.
Many classes also support older versions of OS X, Ubuntu, and Windows.
Pull Requests welcome
Please at least make sure rake test
passes.