refactor: break XDG sesion variables out into a single feature module
This commit is contained in:
@@ -0,0 +1,40 @@
|
|||||||
|
# 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";
|
||||||
|
}
|
||||||
@@ -50,14 +50,8 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
environment = {
|
environment = {
|
||||||
variables = rec {
|
|
||||||
XDG_CACHE_HOME = "$HOME/.cache";
|
|
||||||
XDG_CONFIG_HOME = "$HOME/.config";
|
|
||||||
XDG_DATA_HOME = "$HOME/.local/share";
|
|
||||||
XDG_STATE_HOME = "$HOME/.local/state";
|
|
||||||
};
|
|
||||||
|
|
||||||
shellAliases = import ../../features/aliases.nix { inherit pkgs; };
|
shellAliases = import ../../features/aliases.nix { inherit pkgs; };
|
||||||
|
variables = import ../../features/xdg.nix { inherit pkgs; };
|
||||||
|
|
||||||
systemPackages = with pkgs; [
|
systemPackages = with pkgs; [
|
||||||
wget
|
wget
|
||||||
|
|||||||
@@ -119,9 +119,6 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Completely disable xserver support (RIP X11).
|
|
||||||
xserver.enable = false;
|
|
||||||
|
|
||||||
# Enable KMSCON DRM TTY.
|
# Enable KMSCON DRM TTY.
|
||||||
kmscon = {
|
kmscon = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -346,6 +343,8 @@
|
|||||||
|
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
config.allowUnfree = true;
|
config.allowUnfree = true;
|
||||||
|
|
||||||
|
# Fix msitools compiling and failing it's test-suite.
|
||||||
overlays = [
|
overlays = [
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
msitools = prev.msitools.overrideAttrs (old: {
|
msitools = prev.msitools.overrideAttrs (old: {
|
||||||
@@ -428,28 +427,7 @@
|
|||||||
];
|
];
|
||||||
|
|
||||||
shellAliases = import ../../features/aliases.nix { inherit pkgs; };
|
shellAliases = import ../../features/aliases.nix { inherit pkgs; };
|
||||||
|
sessionVariables = import ../../features/xdg.nix { inherit pkgs; };
|
||||||
sessionVariables = rec {
|
|
||||||
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_USER_HOME = "$XDG_DATA_HOME/android";
|
|
||||||
AZURE_CONFIG_DIR = "$XDG_DATA_HOME/azure";
|
|
||||||
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_OPTIONS = "-Djava.util.prefs.userRoot=$XDG_CONFIG_HOME/java";
|
|
||||||
PYTHON_HISTORY = "$XDG_STATE_HOME/python_history";
|
|
||||||
HISTFILE = "$XDG_STATE_HOME/bash/history";
|
|
||||||
GTK2_RC_FILES = "$XDG_CONFIG_HOME/gtk-2.0/gtkrc";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
system.stateVersion = "26.05";
|
system.stateVersion = "26.05";
|
||||||
|
|||||||
@@ -193,29 +193,7 @@
|
|||||||
];
|
];
|
||||||
|
|
||||||
shellAliases = import ../../features/aliases.nix { inherit pkgs; };
|
shellAliases = import ../../features/aliases.nix { inherit pkgs; };
|
||||||
|
sessionVariables = import ../../features/xdg.nix { inherit pkgs; };
|
||||||
sessionVariables = rec {
|
|
||||||
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}"
|
|
||||||
];
|
|
||||||
|
|
||||||
AZURE_CONFIG_DIR = "$XDG_DATA_HOME/azure";
|
|
||||||
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_OPTIONS = "-Djava.util.prefs.userRoot=$XDG_CONFIG_HOME/java";
|
|
||||||
PYTHON_HISTORY = "$XDG_STATE_HOME/python_history";
|
|
||||||
HISTFILE = "$XDG_STATE_HOME/bash/history";
|
|
||||||
DOTNET_ROOT = "${pkgs.dotnet-sdk}/share/dotnet";
|
|
||||||
DOTNET_CLI_HOME = "$XDG_DATA_HOME/dotnet";
|
|
||||||
GTK2_RC_FILES = "$XDG_CONFIG_HOME/gtk-2.0/gtkrc";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
nix = {
|
nix = {
|
||||||
|
|||||||
Reference in New Issue
Block a user