class Serverkit::Resources::Dotfiles

A resource class for Mac OS X user defaults system.

Public Instance Methods

apply() click to toggle source
# File lib/serverkit/resources/dotfiles.rb, line 9
def apply
  dotfiles.each do |file|
    run_command("rm -rf #{::File.join(ENV["HOME"], file)}")
    run_command("ln -s #{::File.join(directory, file)} #{::File.join(ENV["HOME"], file)}")
  end
end
check() click to toggle source

@note Override @return [true, false]

# File lib/serverkit/resources/dotfiles.rb, line 18
def check
  dotfiles.all? do |file|
    check_command_from_identifier(
      :check_file_is_linked_to,
      ::File.join(ENV["HOME"], file),
      ::File.join(directory, file),
    )
  end
end

Private Instance Methods

directory() click to toggle source
# File lib/serverkit/resources/dotfiles.rb, line 30
def directory
  ::File.expand_path(attributes["directory"])
end
dotfiles() click to toggle source
# File lib/serverkit/resources/dotfiles.rb, line 34
def dotfiles
  @dotfiles ||= run_command("ls -A #{directory}").stdout.split("\n")
end