{ config, pkgs, ... }: let emacs = { package = "modus-themes"; light-mode-theme = "modus-operandi"; dark-mode-theme = "modus-vivendi"; minimal-user-emacs-directory = "${config.xdg.configHome}/emacs"; }; in { programs.nixvim.extraConfigVim = '' set notermguicolors ''; programs.fzf = { defaultOptions = [ "--color=16" ]; colors = { fg = "-1"; "fg+" = "-1"; bg = "-1"; "bg+" = "-1"; gutter = "8"; pointer = "-1"; header = "1"; border = "6"; hl = "3"; "hl+" = "11"; info = "2"; prompt = "14"; marker = "21"; spinner = "21"; scrollbar = "dim"; }; }; home.sessionVariables = { CLICOLOR = "1"; LSCOLORS = "gxfxcxdxDxegedabagacad"; # for macOS's ls }; programs.zed-editor = { extensions = [ "flexoki-themes" "melange" ]; userSettings.theme = { light = "Flexoki Light"; dark = "Melange Dark"; }; }; programs.emacs = { extraPackages = epkgs: [ epkgs.${emacs.package} ]; extraConfig = '' (load-file "${emacs.minimal-user-emacs-directory}/theme.el") ''; }; xdg.configFile."emacs/theme.el".source = pkgs.replaceVars ./emacs/theme.el { inherit (emacs) package light-mode-theme dark-mode-theme ; }; }