I recently update my remotefile definitions (others might have already done so or have been using a better one than mine). I added an ensure parameter so I could do overrides using remotefile rather than the underlying file: define remotefile($owner = root, $ignore = ".svn", $group = root, $mode = 644, $source, $backup = false, $recurse = false, $ensure = file) { $realsource = $hostname ? { "henson" => "/var/lib/puppet/dist/$source", default => "puppet://puppet.stanford.edu/dist/$source" } file { $name: mode => $mode, owner => $owner, group => $group, backup => $backup, recurse => $recurse, ignore => ".svn", source => $realsource, ensure => $ensure } } -- Digant C Kasundra <digant@stanford.edu> Technical Lead, ITS Unix Systems and Applications, Stanford University