Files
frank-nix/features/xdg.nix
T

41 lines
1.0 KiB
Nix

# 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";
}