Overview
Environment variables are configured in multiple locations depending on their scope and purpose. This page documents all environment variables used across the dotfiles.Shell Environment (zshenv)
Defined inhome/zshenv - loaded first by ZSH for all shells.
Less Pager Colors
Customizes the appearance of theless pager with color support.
PATH Configuration
Extends PATH with user binaries and development tools.ZSH Optimization
systemd User Environment
Defined insystem/environment.d/ - loaded by systemd user session.
XDG Base Directory (envvarsuser.conf)
Follows the XDG Base Directory Specification.| Variable | Default Value | Purpose |
|---|---|---|
XDG_CONFIG_HOME | ~/.config | User-specific configuration files |
XDG_CACHE_HOME | ~/.cache | User-specific cache data |
XDG_DATA_HOME | ~/.local/share | User-specific data files |
XDG_STATE_HOME | ~/.local/state | User-specific state data |
Application Directories
Default Programs
| Variable | Value | Purpose |
|---|---|---|
EDITOR | nvim | Default text editor |
VISUAL | nvim | Visual editor (for programs that need GUI editor) |
TERMINAL | kitty | Default terminal emulator |
BROWSER | brave | Default web browser |
PAGER | less -R | Default pager with raw control characters |
Less Pager Configuration
Development Tool Directories
Keeps development tools organized within XDG directories.| Language | Variables | Purpose |
|---|---|---|
| Rust | CARGO_HOME, RUSTUP_HOME | Cargo packages and Rustup toolchains |
| Go | GOPATH, GOBIN | Go workspace and binaries |
| Node.js | NPM_CONFIG_CACHE, NPM_CONFIG_PREFIX | NPM cache and global packages |
| Python | PYTHONUSERBASE, PYTHONPYCACHEPREFIX | User packages and bytecode cache |
Rendering & Hardware (rendering.conf)
NVIDIA GPU-specific configuration for hardware acceleration.| Variable | Value | Purpose |
|---|---|---|
WLR_NO_HARDWARE_CURSORS | 1 | Disable hardware cursors (NVIDIA workaround) |
FREETYPE_PROPERTIES | Font rendering settings | Disable stem darkening for better rendering |
LIBVA_DRIVER_NAME | nvidia | VA-API driver for NVIDIA |
NVD_BACKEND | direct | NVIDIA direct backend |
VDPAU_DRIVER | nvidia | VDPAU driver for video acceleration |
__GLX_VENDOR_LIBRARY_NAME | nvidia | GLX vendor library |
Wayland Environment (wayland.conf)
Wayland-specific environment variables for proper application behavior.Wayland Variables by Toolkit
Qt Applications
Qt Applications
GTK Applications
GTK Applications
Mozilla (Firefox)
Mozilla (Firefox)
Electron Apps
Electron Apps
Java Applications
Java Applications
SDL / Games
SDL / Games
Other Toolkits
Other Toolkits
Hyprland Variables (vars.conf)
Hyprland-specific variable definitions used in keybindings and configuration.Application Variables
| Variable | Value | Usage |
|---|---|---|
$terminal | kitty | Default terminal emulator |
$fileManager | nemo | Default file manager |
$menu | rofi -show drun | Application launcher |
$lock | hyprlock | Screen locker |
$browser | brave | Web browser |
Key Modifier Variables
| Variable | Value | Purpose |
|---|---|---|
$mainMod | SUPER | Primary modifier (Windows/Super key) |
$ctrlMod | Control_L | Control key |
$altMod | ALT_L | Alt key |
Color Variables
Based on Catppuccin color scheme.Accent Colors
- Mauve
- Blue
- Red
- Green
- Peach
Backgrounds
- Mantle
- Base
- Surface 0/1/2
Text Colors
- Text
- Subtext 0
- Subtext 1
Hyprland Environment (env.conf)
Environment variables specific to Hyprland window manager.| Variable | Value | Purpose |
|---|---|---|
HYPRCURSOR_THEME | Bibata-Modern-Classic | Hyprland cursor theme |
HYPRCURSOR_SIZE | 24 | Cursor size in Hyprland |
XCURSOR_THEME | Bibata-Modern-Classic | X11 cursor theme (fallback) |
XCURSOR_SIZE | 24 | X11 cursor size |
The
permission directive allows hyprpm (Hyprland plugin manager) to load plugins.Loading Order
-
systemd environment.d - Loaded by systemd user session
envvarsuser.confrendering.confwayland.conf
-
zshenv - Loaded by ZSH for all shells
- Imports systemd environment
- Adds PATH entries
-
Hyprland config - Loaded when Hyprland starts
vars.conf- Variable definitionsenv.conf- Hyprland environment
