{ config, pkgs, ... }: let emacsWithPackages = (pkgs.emacsPackagesFor pkgs.emacs).emacsWithPackages; in { programs.emacs = { enable = true; extraConfig = '' (load-theme 'catppuccin :no-confirm) (require 'nix-mode) (add-to-list 'auto-mode-alist '("\\.nix\\'" . nix-mode)) (require 'evil) (evil-mode 1) ''; package = emacsWithPackages (epkgs: (with epkgs.melpaStablePackages; [ catppuccin-theme ]) ++ (with epkgs.melpaPackages; [ evil nix-mode lsp-mode ]) ++ (with epkgs.elpaPackages; [ ]) ++ [ pkgs.notmuch ]); }; }