# Lists of environment names. # # Environment names in lists together cannot appear in the same environment condition string. # For example, you cannot specify a path that matches both Vim and Neovim. exclusivity = [ # Neovim takes priority over Vim. ["neovim", "vim"], # Flatpak steam installation takes priority over "native" install. ["steam_flatpak", "steam"] ] [defaults] XDG_CONFIG_HOME = "${HOME}/.config" XDG_DATA_HOME = "${HOME}/.local/share" [envs] # Match if `fish` is somewhere in $PATH. [envs.fish] exe_exists = ["fish"] [envs.flatpak] exe_exists = ["flatpak"] [envs.neovim] # Detect "neovim" if AT LEAST one of `nvim` or `nvim-qt` exists in $PATH. # This is parsed as `nvim OR nvim-qt`. exe_exists = ["nvim", "nvim-qt"] [envs.vim] # Detect "vim" if AT LEAST one of `vim` or `gvim` exists in $PATH. exe_exists = ["vim", "gvim"] # GAMES [envs.itch] # Match itch if BOTH of these paths exist. # These paths are parsed as (first) AND (second). path_exists = [ [ "${LOCALAPPDATA}/itch" ], [ "${HOME}/.itch", "${XDG_DATA_HOME}/applications/io.itch.itch.desktop" ] ] [envs.steam] exe_exists = ["steam"] [envs.steam_flatpak] exe_exists = ["flatpak"] path_exists = [ "/home/shadow53/.var/app/com.valvesoftware.Steam" ] # OPERATING SYSTEMS # See https://doc.rust-lang.org/stable/std/env/consts/constant.OS.html for some possible # values for `os`. [envs.windows] os = ["windows"] [envs.linux] os = ["linux"] [envs.macos] os = ["macos"] [envs.freebsd] os = ["freebsd"] # Is "unix" if one of the OSes match AND both of the environment variables exist. # You can also require a specific value for the variable with # # { var = "SOME_VAR", expected = "the var value" } # # Note: macOS is technically unixy as well, but does not generally use the XDG_* # directories and is thus excluded here. [envs.unix] os = ["linux", "freebsd"] env = [ { var = "HOME" }, { var = "XDG_CONFIG_HOME" } ] [hoards] # Both `fish|linux` and `linux|fish` match the same way and are considered # the same condition internally. [hoards.fish] [hoards.fish.confdir] "unix|fish" = "${XDG_CONFIG_HOME}/fish/conf.d" [hoards.fish.functions] "fish|unix" = "${XDG_CONFIG_HOME}/fish/functions" [hoards.fonts] # This is a standard place for FreeDesktop (Linux/BSD) systems to store user fonts. "unix" = "${XDG_DATA_HOME}/fonts" # This hoard uses "linux" instead of "unix" because Steam/Itch/etc. are not on the BSDs. [hoards.game_saves] [hoards.game_saves.apotheon] "linux|steam" = "${XDG_DATA_HOME}/Apotheon/SavedGames" "linux|steam_flatpak" = "${HOME}/.var/app/com.valvesoftware.Steam/.local/share/Apotheon/SavedGames" [hoards.game_saves.death_and_taxes] "linux|itch" = "${XDG_CONFIG_HOME}/unity3d/Placeholder Gameworks/Death and Taxes/Saves" [hoards.game_saves.hat_in_time] "linux|steam" = "${XDG_DATA_HOME}/Steam/steamapps/common/HatInTime/HatInTimeGame/SaveData" "linux|steam_flatpak" = "${HOME}/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/common/HatInTime/HatInTimeGame/SaveData" [hoards.game_saves.mindustry] "linux|steam" = "${XDG_DATA_HOME}/Steam/steamapps/common/Mindustry/saves/saves" "linux|steam_flatpak" = "${HOME}/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/common/Mindustry/saves/saves" [hoards.git] "unix" = "${HOME}/.gitconfig" [hoards.hoard] "unix" = "${XDG_CONFIG_HOME}/hoard/config.toml" "macos" = "${HOME}/Library/Application Support/com.shadow53.hoard/config.toml" "windows" = "${APPDATA}\\shadow53\\hoard\\config.toml" [hoards.vim] [hoards.vim.init] # Match unix AND neovim environments "unix|neovim" = "${XDG_CONFIG_HOME}/nvim/init.vim" "unix|vim" = "${HOME}/.vimrc" "windows|neovim" = "${CSIDL_LOCAL_APPDATA}\\nvim\\init.vim" "windows|vim" = "${USERPROFILE}/.vim/_vimrc" [hoards.vim.configdir] "windows|neovim" = "${CSIDL_LOCAL_APPDATA}\\nvim\\config" "windows|vim" = "${USERPROFILE}/.vim/config" "unix|neovim" = "${XDG_CONFIG_HOME}/nvim/config" "unix|vim" = "${HOME}/.vim/config" [hoards.vim.templates] "windows|neovim" = "${CSIDL_LOCAL_APPDATA}\\nvim\\templates" "windows|vim" = "${USER_PROFILE}\\.vim\\templates" "unix|neovim" = "${XGD_CONFIG_HOME}/nvim/templates" "unix|vim" = "${HOME}/.vim/templates"