module EnvPaths::Linux

Public Class Methods

config(app_name) click to toggle source
# File lib/env_paths.rb, line 10
def self.config(app_name)
  OSData.new(
    File.join(ENV.fetch('XDG_DATA_HOME', File.join(HOMEDIR, '.local', 'share')), app_name),
    File.join(ENV.fetch('XDG_CONFIG_HOME', File.join(HOMEDIR, '.config')), app_name),
    File.join(ENV.fetch('XDG_CACHE_HOME', File.join(HOMEDIR, '.cache')), app_name),
    # https://wiki.debian.org/XDGBaseDirectorySpecification#state
    File.join(ENV.fetch('XDG_STATE_HOME', File.join(HOMEDIR, '.local', 'state')), app_name),
    File.join(Dir.tmpdir, Etc.getlogin, app_name)
  )
end