{ pkgs, config, inputs, ... }: let myPkgs = import pkgs.path { inherit (pkgs) system; overlays = [ inputs.emacs-overlay.overlays.default ]; }; in { home.packages = with pkgs; [ emacs-lsp-booster tree-sitter fd ripgrep typescript-language-server typescript vscode-langservers-extracted tailwindcss-language-server nodejs nixd cmake libtool glibtool graphviz ]; programs.emacs = { enable = true; package = myPkgs.emacsWithPackagesFromUsePackage { config = ./init.el; defaultInitFile = false; extraEmacsPackages = epkgs: with epkgs; [ mu4e pdf-tools vterm treesit-grammars.with-all-grammars ]; }; }; services.emacs.enable = true; home.file.".config/emacs/init.el" = { source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/dev/personal/nixos/modules/home-manager/emacs/init.el"; }; }