Extract emacs to its own submodule

This commit is contained in:
2024-07-28 16:01:36 -07:00
parent 870ebd4dd3
commit f7b2f7b59a
4 changed files with 58 additions and 39 deletions

View File

@@ -0,0 +1,53 @@
{ config, lib, pkgs, ... }:
{
home.packages = [
pkgs.emacs-all-the-icons-fonts
pkgs.fontconfig
pkgs.graphviz
pkgs.isort
pkgs.nerdfonts
pkgs.nil # nix lsp language server
pkgs.nixfmt-rfc-style
(pkgs.ripgrep.override {withPCRE2 = true;})
pkgs.pipenv
pkgs.poetry
pkgs.python3
];
fonts.fontconfig.enable = true;
home.file = {
".config/emacs" = {
source = fetchGit {
url = "https://github.com/doomemacs/doomemacs.git";
rev = "36e7aaa619342eff61b1daf3ac664f94d5272db7";
};
recursive = true;
};
};
home.activation.doomSync = lib.hm.dag.entryAfter [ "writeBoundary" ] (let
emacs = pkgs.emacs;
git = pkgs.git;
in ''
export PATH=${emacs}/bin:${git}/bin:$PATH
${config.xdg.configHome}/emacs/bin/doom sync -u -j $((`nproc`/4*3))
'');
home.sessionVariables = {
DOOMLOCALDIR = "${config.xdg.dataHome}/doom";
EDITOR = "emacs -nw";
};
home.sessionPath = [
"${config.xdg.configHome}/emacs/bin"
];
programs.emacs = {
enable = true;
package = pkgs.emacs;
};
xdg.configFile."doom".source = ./doom;
}