{ config, pkgs, ... }: { imports = [ ./mime-apps.nix ./user-dirs.nix ./config-files.nix ./portal.nix ]; xdg = { enable = true; cacheHome = "${config.home.homeDirectory}/.cache"; configHome = "${config.home.homeDirectory}/.config"; dataHome = "${config.home.homeDirectory}/.local/share"; stateHome = "${config.home.homeDirectory}/.local/state"; }; # These are not supported via xdg configuration, set them manually # Defined in /etc/profiles/per-user/$USER/etc/profile.d/hm-session-vars.sh home.sessionVariables = { "XDG_RUNTIME_DIR" = "/run/user/$UID"; "XDG_BIN_HOME" = "${config.home.homeDirectory}/.local/bin"; }; # xdg-ninja is a CLI tool that checks $HOME for unwanted # files/dirs and shows how to move them to XDG dirs home.packages = [pkgs.xdg-ninja]; }