Documentation
¶
Index ¶
- Variables
- func ExpandHome(path string) string
- func GetAppDir(subPath ...string) string
- func GetCacheDir(subPath ...string) string
- func GetConfigDir(subPath ...string) string
- func GetDataDir(subPath ...string) string
- func GetHomeDir(subPath ...string) string
- func GetShellConfigFile() string
- func GetStateDir(subPath ...string) string
- func GetSystemApplicationsDir(isMac bool, subPath ...string) string
- func GetSystemFontsDir(isMac bool, subPath ...string) string
- func GetUserApplicationsDir(isMac bool, subPath ...string) string
- func GetUserFontsDir(isMac bool, subPath ...string) string
- func GetZshEnvFile() string
Constants ¶
This section is empty.
Variables ¶
var FileAlreadyExist = files.FileAlreadyExist
This allows swapping it during tests
var Files = struct { ShellConfig string ZshEnv string }{ ShellConfig: GetShellConfigFile(), ZshEnv: GetZshEnvFile(), }
Files contains all file path structures
var Paths = struct { App struct { Root string Configs struct { Aerospace string Alacritty string Claude string Fastfetch string Fonts string Git string I3 string Neovim string OpenCode string Shared string Templates string Themes string Tmux string } Fonts struct { Alacritty string } Themes struct { Alacritty string } } Cache struct { Root string } Config struct { Root string Aerospace string Alacritty string Claude string Devgeta string Fastfetch string Fonts string Git string I3 string Nvim string OpenCode string Themes string Tmux string } Data struct { Root string } Home struct { Root string } System struct { Applications string Fonts string } User struct { Applications string Fonts string } }{ App: struct { Root string Configs struct { Aerospace string Alacritty string Claude string Fastfetch string Fonts string Git string I3 string Neovim string OpenCode string Shared string Templates string Themes string Tmux string } Fonts struct { Alacritty string } Themes struct { Alacritty string } }{ Root: GetDataDir(constants.App.Name), Configs: struct { Aerospace string Alacritty string Claude string Fastfetch string Fonts string Git string I3 string Neovim string OpenCode string Shared string Templates string Themes string Tmux string }{ Aerospace: GetAppDir(constants.App.Dir.Configs, constants.Aerospace), Alacritty: GetAppDir(constants.App.Dir.Configs, constants.Alacritty), Claude: GetAppDir(constants.App.Dir.Configs, constants.Claude), Fastfetch: GetAppDir(constants.App.Dir.Configs, constants.Fastfetch), Fonts: GetAppDir(constants.App.Dir.Configs, constants.Fonts), Git: GetAppDir(constants.App.Dir.Configs, constants.Git), I3: GetAppDir(constants.App.Dir.Configs, constants.I3), Neovim: GetAppDir(constants.App.Dir.Configs, constants.Neovim), OpenCode: GetAppDir(constants.App.Dir.Configs, constants.OpenCode), Shared: GetAppDir(constants.App.Dir.Configs, constants.Shared), Templates: GetAppDir(constants.App.Dir.Configs, constants.Templates), Themes: GetAppDir(constants.App.Dir.Configs, constants.Themes), Tmux: GetAppDir(constants.App.Dir.Configs, constants.Tmux), }, Fonts: struct { Alacritty string }{ Alacritty: GetAppDir(constants.App.Dir.Configs, constants.Fonts, constants.Alacritty), }, Themes: struct { Alacritty string }{ Alacritty: GetAppDir(constants.App.Dir.Configs, constants.Themes, constants.Alacritty), }, }, Cache: struct { Root string }{ Root: GetCacheDir(), }, Config: struct { Root string Aerospace string Alacritty string Claude string Devgeta string Fastfetch string Fonts string Git string I3 string Nvim string OpenCode string Themes string Tmux string }{ Root: GetConfigDir(), Aerospace: GetConfigDir(constants.Aerospace), Alacritty: GetConfigDir(constants.Alacritty), Claude: GetHomeDir(".claude"), Devgeta: GetConfigDir(constants.DevgetaApp), Fastfetch: GetConfigDir(constants.Fastfetch), Fonts: GetConfigDir(constants.Fonts), Git: GetConfigDir(constants.Git), I3: GetConfigDir(constants.I3), Nvim: GetConfigDir(constants.Nvim), OpenCode: GetConfigDir(constants.OpenCode), Themes: GetConfigDir(constants.Themes), Tmux: GetConfigDir(constants.Tmux), }, Data: struct { Root string }{ Root: GetDataDir(), }, Home: struct { Root string }{ Root: GetHomeDir(), }, System: struct { Applications string Fonts string }{ Applications: GetSystemApplicationsDir(runtime.GOOS == "darwin"), Fonts: GetSystemFontsDir(runtime.GOOS == "darwin"), }, User: struct { Applications string Fonts string }{ Applications: GetUserApplicationsDir(runtime.GOOS == "darwin"), Fonts: GetUserFontsDir(runtime.GOOS == "darwin"), }, }
Paths contains all directory path structures
Functions ¶
func ExpandHome ¶
ExpandHome replaces a leading "~" with the user's home directory, so CLI flags can accept paths like ~/code/repo. Other paths pass through unchanged.
func GetCacheDir ¶
Returns XDG_CACHE_HOME or fallback to ~/.cache Reads environment variables dynamically to support testing
func GetConfigDir ¶
Returns XDG_CONFIG_HOME or fallback to ~/.config Reads environment variables dynamically to support testing
func GetDataDir ¶
Returns XDG_DATA_HOME or fallback to ~/.local/share Reads environment variables dynamically to support testing
func GetHomeDir ¶
func GetShellConfigFile ¶
func GetShellConfigFile() string
func GetStateDir ¶
Returns XDG_STATE_HOME or fallback to ~/.local/state Reads environment variables dynamically to support testing
func GetSystemApplicationsDir ¶
Returns system-level applications dir
func GetSystemFontsDir ¶
Returns system-level fonts dir
func GetUserApplicationsDir ¶
Returns user-level applications dir
func GetUserFontsDir ¶
Returns user-level fonts dir
func GetZshEnvFile ¶
func GetZshEnvFile() string
GetZshEnvFile returns the user's ~/.zshenv path. Unlike GetShellConfigFile, this never falls back to searching alternate candidates: ~/.zshenv is the one place zsh sources before anything else (login or not), whether or not the file exists yet.
Types ¶
This section is empty.