# https://wiki.archlinux.org/title/XDG_Base_Directory set -q XDG_CACHE_HOME; or set -gx XDG_CACHE_HOME "$HOME/.cache" set -q XDG_CONFIG_HOME; or set -gx XDG_CONFIG_HOME "$HOME/.config" set -q XDG_DATA_HOME; or set -gx XDG_DATA_HOME "$HOME/.local/share" # Docker set -gx DOCKER_CONFIG "$XDG_CONFIG_HOME/docker" # Golang set -gx GOPATH "$XDG_DATA_HOME/go" set -gx GOBIN "$XDG_DATA_HOME/go/bin" set -gx GOCACHE "$XDG_CACHE_HOME/go" set -gx GOMODCACHE "$XDG_CACHE_HOME/go/pkg/mod" set -gx GOENV "$XDG_CONFIG_HOME/go/env" # Rust set -gx CARGO_HOME "$XDG_DATA_HOME/cargo" set -gx RUSTUP_HOME "$XDG_DATA_HOME/rustup" # Haskell/Stack set -gx STACK_ROOT "$XDG_DATA_HOME/stack" # Scala/sbt/Coursier set -gx COURSIER_INSTALL_DIR "$XDG_DATA_HOME/coursier/bin" set -gx COURSIER_JVM_CACHE "$XDG_CACHE_HOME/coursier/jvm" set -gx COURSIER_CACHE "$XDG_CACHE_HOME/coursier/v1" set -gx IVY_CACHE "$XDG_CACHE_HOME/ivy" set -gx SBT_CACHE "$XDG_CACHE_HOME/sbt" set -gx SBT_CONFIG "$XDG_CONFIG_HOME/sbt" set -gx SBT_OPTS "-Dsbt.ivy.home=$IVY_CACHE\ -Dsbt.boot.directory=$SBT_CACHE/boot\ -Dsbt.preloaded=$SBT_CACHE/preloaded\ -Dsbt.dependency.base=$SBT_CACHE/dependency\ -Dsbt.global.base=$SBT_CACHE\ -Dsbt.global.staging=$SBT_CACHE/staging\ -Dsbt.global.zinc=$SBT_CACHE/zinc\ -Dsbt.global.settings=$SBT_CONFIG/settings\ -Dsbt.global.plugins=$SBT_CONFIG/plugins\ -Dsbt.repository.config=$SBT_CONFIG/repositories"