mirror of
https://github.com/ryan4yin/nix-config.git
synced 2026-01-11 20:40:24 +01:00
36 lines
950 B
Nix
36 lines
950 B
Nix
# XDG stands for "Cross-Desktop Group", with X used to mean "cross".
|
|
# It's a bunch of specifications from freedesktop.org intended to standardize desktops and
|
|
# other GUI applications on various systems (primarily Unix-like) to be interoperable:
|
|
# https://www.freedesktop.org/wiki/Specifications/
|
|
{
|
|
mylib,
|
|
config,
|
|
pkgs,
|
|
...
|
|
}:
|
|
{
|
|
imports = mylib.scanPaths ./.;
|
|
|
|
home.packages = with pkgs; [
|
|
xdg-utils # provides cli tools such as `xdg-mime` `xdg-open`
|
|
xdg-user-dirs
|
|
];
|
|
|
|
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";
|
|
|
|
userDirs = {
|
|
enable = true;
|
|
createDirectories = true;
|
|
extraConfig = {
|
|
XDG_SCREENSHOTS_DIR = "${config.xdg.userDirs.pictures}/Screenshots";
|
|
};
|
|
};
|
|
};
|
|
}
|