{ config, pkgs, accentColourName, ... }: { imports = [ ./plasma/default.nix ./emacs/default.nix ./browser/default.nix ./services/email/default.nix ]; home = { packages = with pkgs; [ libreoffice-qt-fresh krdc tokodon ferdium webcord signal-desktop teams-for-linux ]; pointerCursor = let name = if config.scheme.variant == "light" then "volantes_cursors" else "volantes_light_cursors"; in { inherit name; package = pkgs.volantes-cursors; size = 32; gtk.enable = config.gtk.enable; x11 = { enable = true; defaultCursor = name; }; }; }; services.syncthing.enable = true; programs.mpv.enable = true; xdg = { mime.enable = true; mimeApps = let defaultApplications = import ./mimeapps/default.nix; in { enable = true; inherit defaultApplications; associations = { added = defaultApplications; removed = { "x-scheme-handler/zoomus" = config.xdg.mimeApps.defaultApplications."x-scheme-handler/http"; }; }; }; userDirs = { enable = true; createDirectories = true; extraConfig = { XDG_PROJECTS_DIR = "${config.home.homeDirectory}/Projects"; }; }; configFile = { "autostart/signal-desktop.desktop".source = "${pkgs.signal-desktop}/share/applications/signal-desktop.desktop"; "autostart/ferdium.desktop".source = "${pkgs.ferdium}/share/applications/ferdium.desktop"; "Ferdium/config/settings.json".text = builtins.toJSON ( import ./config/ferdium.nix { downloadFolderPath = config.xdg.userDirs.download; accentColor = config.scheme.withHashtag.${accentColourName}; progressbarAccentColor = config.scheme.withHashtag.${accentColourName}; } ); "teams-for-linux/config.json".text = builtins.toJSON (import ./config/teams-for-linux.nix); }; }; 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; }; }