Sha256: 2c5b158e23faf85dadae007e588449939b2448398754285f55e1223fba586f4d

Contents?: true

Size: 1.34 KB

Versions: 1

Compression:

Stored size: 1.34 KB

Contents

require 'dots/persistence'
require 'dots/installation'
require 'dots/bootstrap'

module Dots
  class Command < Thor
    include Thor::Actions, Dots::Persistence, Dots::Installation, Dots::Bootstrap
    default_task :usage

    desc :usage, "Show usage information"
    def usage
      say Dots.usage_information and help
    end

    desc :install, "Copies DOTS to your home directory."
    def install
      copy_to_home_directory and link_dot_files
    end

    desc :update, "Update DOTS, Antigen and all plugins to their latest version."
    def update
      update_the_framework
    end

    desc :version, "Show the current version of DOTS"
    def version
      say dots_version
    end

    desc :link, "Symlink your ~/.dots/config into dotfiles"
    def link
      link_dot_files
    end

    desc :persist, "Copy a dotfile to .dots/config and symlink the original location"
    def persist name
      persist_dot_file name
    end

    desc :forget, "Remove the symlink and restore a dotfile back to its original location"
    def forget name
      forget_dot_file name
    end

    desc :bootstrap, "Install the whole shebang: gems, C programs, Python stuff, DOTS."
    def bootstrap
      install_programs and install_bundle and install
    end

    desc :bundle, "Install and update the global gem bundle"
    def bundle
      install_bundle
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
zsh_dots-0.5.7 lib/ruby/dots/command.rb