Version information
This version is compatible with:
Start using this module
Add this module to your Puppetfile:
mod 'jza34-desktop', '0.3.2'
Learn more about managing modules with a PuppetfileDocumentation
Desktop
Table of Contents
- Overview
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with desktop
- 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
Overview
Some customization welcome for a linux desktop. Do not install any graphical environment!
Module Description
- Enhance use of fonts
- Set automatic upgrades when the system shutdown
- Manage installation and customization for web browsers (iceweasel, firefox and google-chrome for the moment)
Setup
List of parameters to set in init.pp
Include the class
class { 'desktop':
font\_serif => 'Cantarell',
font\_sans => 'Liberation Sans',
font\_mono => 'Droid Sans Mono',
software => undef,
auto\_upgrade => true,
webbrowser\_homepage => 'https://duckduckgo.com',
webbrowser\_cachesize => 4096,
google\_key\_source => 'https://dl-ssl.google.com/linux/linux\_signing\_key.pub',
webbrowser => ['iceweasel','google-chrome'],
}
font_serif, font_sans, font_mono
Three names of fonts to use instead of fonts like liberation, arial, times, etc.
Put your font files in files/fonts-common and puppet will copy them to the node
(Default Cantarell, Liberation Sans, Droid Sans Mono)
software
This array list all the extra software you want to install
Example: ['blender','scribus','vlc']
(Default undef)
auto_upgrade
Automatic download and install of upgrades at shutdown.
(Default true)
webbrowser_homepage
Homepage for web browsers.
(Default https://duckduckgo.com)
webbrowser_cachesize
Set the cache size in bytes.
(Default 4096)
google_key_source
Google-chrome is not part of official linux distributions repositories... It uses its own repo. The signing key to verify downloaded packages from this repo is also hosted by Google but can be downloaded and hosted localy.
This parameter set the url of the google repo signing key
(Default https://dl-ssl.google.com/linux/linux\_signing_key.pub)
webbrowser
This array list web browsers you want to use
Possible values: iceweasel, firefox and google-chrome
(Default ['iceweasel','google-chrome'])
Usage
Modify default values in init.pp (or use an ENC like foreman) and include the desktop class
Reference
Customization for web browser (firefox/iceweasel) use the root preferences file in /etc/firefox/pref/firefox.js (or /etc/iceweasel/pref/iceweasel.js)
Customization for web browser (google-chrome) use the policies file in in /etc/opt/chrome/policies/managed/policy.json
Limitations
Debian family only
Development
Tested localy then saved to github then published to the puppet forge
Don't upgrade from the forge in a production environment...always test it in your situation.
(0.3.2)
- Fix path for google chrome system-wide policies
2016-05-26 (0.3.1)
- Like firefox/iceweasel, google-chrome preferences are supported (homepage, cachesize, etc.)
2016-05-26 (0.3.0)
- Fonts are now parameters
Dependencies
- puppetlabs-stdlib (>= 1.0.0)