class mpd( $config_content = false, $config_source = [ "puppet:///modules/site_mpd/${::hostname}.conf", "puppet:///modules/mpd/mpd.conf" ], ) { package { 'mpd': ensure => installed, } service { 'mpd': ensure => running, enable => true, hasstatus => false, pattern => '/usr/bin/mpd', require => Package['mpd'], } file { '/etc/mpd.conf': ensure => present, owner => mpd, group => audio, mode => 0640, notify => Service['mpd'], } if $config_content { File['/etc/mpd.conf']{ content => $config_content, } } else { File['/etc/mpd.conf']{ source => $config_source, } } }