Desktop Environment Leaf
cells/desktop/environment.nix sets user session variables for the Wayland desktop.
Up: desktop leaves
Down: Hyprland leaf
What this leaf does
It declares the editor, browser, Wayland hints for GUI toolkits, XDG directories, and a user tmpfiles rule for a recreated downloads directory.
home.sessionVariables = {
EDITOR = "nvim";
BROWSER = "brave";
MOZ_ENABLE_WAYLAND = "1";
QT_QPA_PLATFORM = "wayland";
XDG_CURRENT_DESKTOP = "Hyprland";
};Why it exists
Wayland desktops need environment consistency. Without this leaf, applications may fall back to X11 assumptions, ignore XDG paths, or disagree about the current desktop.
Impermanence connection
The tmpfiles rule matters because a tmpfs root loses unmanaged directories on reboot. Recreating basic user directories keeps the session predictable.