Skip to content

Commit

Permalink
reimplement as a puppet-defined custom type
Browse files Browse the repository at this point in the history
  • Loading branch information
wfarr committed Jun 3, 2012
1 parent 8ee5632 commit a28d393
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 65 deletions.
17 changes: 6 additions & 11 deletions README.md
Expand Up @@ -8,23 +8,18 @@ boolean, integer, or string types.
## Requirements ## Requirements


* Ruby 1.8 or 1.9 * Ruby 1.8 or 1.9
* Puppet 2.7.0 or later * Puppet 2.6.0 or later
* OS X * OS X


## Usage ## Usage


``` ```
defaults { 'translucent_dock_icons': osx_defaults { "require pass at screensaver":
domain => 'com.apple.dock',
key => 'showhidden',
value => true,
ensure => present, ensure => present,
notify => Exec['restart_dock'] domain => 'com.apple.screensaver',
} key => 'askForPassword',
value => 1,
exec { 'restart_dock': user => 'dummy'
command => 'killall Dock',
refreshonly => true
} }
``` ```


Expand Down
46 changes: 0 additions & 46 deletions lib/puppet/provider/defaults/osx.rb

This file was deleted.

8 changes: 0 additions & 8 deletions lib/puppet/type/defaults.rb

This file was deleted.

27 changes: 27 additions & 0 deletions manifests/osx_defaults.pp
@@ -0,0 +1,27 @@
define osx_defaults(
$ensure = 'present',
$domain = undef,
$key = undef,
$value = undef,
$user = undef,
) {
$defaults_cmd = "/usr/bin/defaults"

if $ensure == 'present' {
if ($domain != undef) and ($key != undef) and ($value != undef) {
exec { "osx_defaults write ${domain}:${key}=>${value}":
command => "${defaults_cmd} write ${domain} ${key} ${value}",
unless => "${defaults_cmd} read ${domain} ${key}|egrep '^${value}$'",
user => $user
}
} else {
warn("Cannot ensure present without domain, key, and value attributes")
}
} else {
exec { "osx_defaults delete ${domain}:${key}":
command => "${defaults_cmd} delete ${domain} ${key}",
onlyif => "${defaults_cmd} read ${domain} | grep ${key}",
user => $user
}
}
}

0 comments on commit a28d393

Please sign in to comment.