Module: GitJump::Utils::XDG

Defined in:
lib/git_jump/utils/xdg.rb

Overview

Class Method Summary collapse

Class Method Details

.cache_homeObject



19
20
21
# File 'lib/git_jump/utils/xdg.rb', line 19

def cache_home
  ENV.fetch("XDG_CACHE_HOME", File.join(Dir.home, ".cache"))
end

.config_homeObject



11
12
13
# File 'lib/git_jump/utils/xdg.rb', line 11

def config_home
  ENV.fetch("XDG_CONFIG_HOME", File.join(Dir.home, ".config"))
end

.config_path(custom_path = nil) ⇒ Object



23
24
25
26
27
# File 'lib/git_jump/utils/xdg.rb', line 23

def config_path(custom_path = nil)
  return custom_path if custom_path

  File.join(config_home, "git-jump", "config.toml")
end

.data_homeObject



15
16
17
# File 'lib/git_jump/utils/xdg.rb', line 15

def data_home
  ENV.fetch("XDG_DATA_HOME", File.join(Dir.home, ".local", "share"))
end

.database_pathObject



29
30
31
# File 'lib/git_jump/utils/xdg.rb', line 29

def database_path
  File.join(data_home, "git-jump", "branches.db")
end

.ensure_directories!Object



33
34
35
36
37
# File 'lib/git_jump/utils/xdg.rb', line 33

def ensure_directories!
  [config_dir, data_dir, cache_dir].each do |dir|
    FileUtils.mkdir_p(dir) unless File.directory?(dir)
  end
end