blob: a278adc79b583d9b50390376da172af401f902eb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
{ pkgs, config, lib, ... }:
let
mkMutableSymlink = config.lib.meta.mkMutableSymlink;
in
{
options = {
emacs.enable = lib.mkEnableOption "enable emacs";
};
config = lib.mkIf config.emacs.enable {
home.packages = with pkgs; with python311Packages; [
# required dependencies
ripgrep
fd
tree-sitter
emacs-all-the-icons-fonts
libappindicator
poppler_utils
emacs-lsp-booster
nil
sqlite
];
programs.emacs = {
enable = true;
package = pkgs.emacs29-pgtk;
};
xdg.configFile = {
"emacs/config.org".source = mkMutableSymlink ./config.org;
"emacs/early-init.el".source = mkMutableSymlink ./early-init.el;
"emacs/init.el".source = mkMutableSymlink ./init.el;
"emacs/etc/tempel/templates.eld".source = mkMutableSymlink ./templates.eld;
"emacs/etc/eshell/aliases".source = mkMutableSymlink ./aliases;
};
};
}
|