{ config, lib, pkgs, ... }: { imports = [ # Programs ../programs/sway/default.nix ../programs/shell/default.nix ../programs/emacs/default.nix ../programs/prog/default.nix ../programs/cava/default.nix ../programs/obs/default.nix # Services ../services/email/work.nix # TODO combine again at some point ../services/password-store/default.nix # Additional Scripts ../scripts/default.nix ]; programs.home-manager.enable = true; services = { gpg-agent.pinentryFlavor = "gtk2"; avizo.enable = true; syncthing.enable = true; udiskie = { enable = true; notify = true; automount = true; tray = "never"; }; }; gtk = with lib.strings; let accent = "Lavender"; variant = "Mocha"; in { enable = true; iconTheme = { package = pkgs.catppuccin-papirus-folders.override { accent = toLower accent; flavor = toLower variant; }; name = "Papirus-Dark"; }; cursorTheme = { package = pkgs.catppuccin-cursors."${toLower variant}Dark"; name = "Catppuccin-${variant}-Dark-Cursors"; size = 32; }; theme = let size = "Standard"; in { package = pkgs.catppuccin-gtk.override { accents = [(toLower accent)]; size = toLower size; variant = toLower variant; }; name = "Catppuccin-${variant}-${size}-${accent}-Dark"; }; }; xdg = { userDirs = { enable = true; createDirectories = true; extraConfig = { XDG_PROJECTS_DIR = "${config.home.homeDirectory}/Projects"; }; }; }; xresources.properties = with config.scheme.withHashtag; { "*background" = base00; "*foreground" = base05; "*color0" = base00; "*color1" = red; "*color2" = green; "*color3" = yellow; "*color4" = blue; "*color5" = magenta; "*color6" = cyan; "*color7" = base04; "*color8" = base01; "*color9" = red; "*color10" = green; "*color11" = yellow; "*color12" = blue; "*color13" = magenta; "*color14" = cyan; "*color15" = base05; }; home = { homeDirectory = "/home/${config.home.username}"; packages = with pkgs; [ gnumake git-sync pinentry fd ripgrep ffmpeg ]; stateVersion = "23.05"; }; }