diff --git a/home/config/ensure-homedir-structure.nix b/home/config/ensure-homedir-structure.nix new file mode 100644 index 0000000..80fbdf8 --- /dev/null +++ b/home/config/ensure-homedir-structure.nix @@ -0,0 +1,27 @@ +{ config, ... }: +let + home = config.home.homeDirectory; + user = config.home.username; +in { + systemd.user.tmpfiles.rules = [ + "d ${home}/SD - ${user} - - -" + "d ${home}/ctf - ${user} - - -" + "d ${home}/git - ${user} - - -" + "d ${home}/pvv - ${user} - - -" + "d ${home}/work - ${user} - - -" + + "d ${home}/pictures/icons - ${user} - - -" + "d ${home}/pictures/photos - ${user} - - -" + "d ${home}/pictures/screenshots - ${user} - - -" + "d ${home}/pictures/stickers - ${user} - - -" + "d ${home}/pictures/wallpapers - ${user} - - -" + + "d ${home}/documents/books - ${user} - - -" + "d ${home}/documents/scans - ${user} - - -" + + "L ${home}/Downloads - ${user} - - ${home}/downloads" + + "L ${config.xdg.dataHome}/wallpapers - ${user} - - ${home}/pictures/wallpapers" + "L ${config.home.sessionVariables.TEXMFHOME} - ${user} - - ${home}/git/texmf" + ]; +} diff --git a/home/home.nix b/home/home.nix index fe591fd..59d486a 100644 --- a/home/home.nix +++ b/home/home.nix @@ -7,6 +7,7 @@ in { ./packages.nix ./config/xdg + ./config/ensure-homedir-structure.nix ./programs/aria2.nix ./programs/atuin.nix @@ -178,25 +179,4 @@ in { platformTheme.name = "adwaita"; style.name = "adwaita-dark"; }; - - systemd.user.tmpfiles.rules = [ - "d ${config.home.homeDirectory}/SD - ${config.home.username} - - -" - "d ${config.home.homeDirectory}/ctf - ${config.home.username} - - -" - "d ${config.home.homeDirectory}/git - ${config.home.username} - - -" - "d ${config.home.homeDirectory}/pvv - ${config.home.username} - - -" - "d ${config.home.homeDirectory}/work - ${config.home.username} - - -" - - "d ${config.home.homeDirectory}/pictures/icons - ${config.home.username} - - -" - "d ${config.home.homeDirectory}/pictures/photos - ${config.home.username} - - -" - "d ${config.home.homeDirectory}/pictures/screenshots - ${config.home.username} - - -" - "d ${config.home.homeDirectory}/pictures/stickers - ${config.home.username} - - -" - "d ${config.home.homeDirectory}/pictures/wallpapers - ${config.home.username} - - -" - - "d ${config.home.homeDirectory}/documents/books - ${config.home.username} - - -" - "d ${config.home.homeDirectory}/documents/scans - ${config.home.username} - - -" - - "L ${config.home.homeDirectory}/Downloads - ${config.home.username} - - ${config.home.homeDirectory}/downloads" - "L ${config.xdg.dataHome}/wallpapers - ${config.home.username} - - ${config.home.homeDirectory}/pictures/wallpapers" - "L ${config.home.sessionVariables.TEXMFHOME} - ${config.home.username} - - ${config.home.homeDirectory}/git/texmf" - ]; }