# Enforce XDG directory spec for configuration files { pkgs }: { XDG_CACHE_HOME = "$HOME/.cache"; XDG_CONFIG_HOME = "$HOME/.config"; XDG_DATA_HOME = "$HOME/.local/share"; XDG_STATE_HOME = "$HOME/.local/state"; XDG_DATA_DIRS = [ "${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}" "${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}" ]; # Android ANDROID_USER_HOME = "$XDG_DATA_HOME/android"; # Azure AZURE_CONFIG_DIR = "$XDG_DATA_HOME/azure"; # NodeJS / npm NPM_CONFIG_INIT_MODULE = "$XDG_CONFIG_HOME/npm/config/npm-init.js"; NPM_CONFIG_CACHE = "$XDG_CACHE_HOME/npm"; NPM_CONFIG_TMP = "$XDG_RUNTIME_DIR/npm"; # Java _JAVA_OPTIONS = "-Djava.util.prefs.userRoot=$XDG_CONFIG_HOME/java"; # Python PYTHON_HISTORY = "$XDG_STATE_HOME/python_history"; # BASH HISTFILE = "$XDG_STATE_HOME/bash/history"; # .NET DOTNET_ROOT = "${pkgs.dotnet-sdk}/share/dotnet"; DOTNET_CLI_HOME = "$XDG_DATA_HOME/dotnet"; # GTK GTK2_RC_FILES = "$XDG_CONFIG_HOME/gtk-2.0/gtkrc"; }