doom emacs! + theming

This commit is contained in:
2024-12-17 22:26:10 -06:00
parent 1826efd1ff
commit eaf48232cd
14 changed files with 2083 additions and 53 deletions

View File

@@ -1,4 +1,5 @@
{
inputs,
config,
lib,
pkgs,
@@ -24,42 +25,54 @@
};
};
};
users.users.jawz.packages =
builtins.attrValues {
inherit (pkgs.xorg) xwininfo;
inherit (pkgs)
xdotool
xclip
wl-clipboard-rs
;
}
++ builtins.attrValues {
inherit (pkgs)
fd # modern find, faster searches
fzf # fuzzy finder! super cool and useful
ripgrep # modern grep
tree-sitter # code parsing based on symbols and shit, I do not get it
graphviz # graphs
tetex # export pdf
languagetool # proofreader for English
# lsps
yaml-language-server
markdownlint-cli
;
inherit (pkgs.nodePackages)
vscode-json-languageserver
prettier # multi-language linter
;
};
services.emacs = {
enable = true;
package =
let
emacsPackages = (pkgs.emacsPackagesFor pkgs.emacs-gtk).emacsWithPackages;
in
emacsPackages (epkgs: [ epkgs.vterm ]);
package = pkgs.emacsWithDoom {
doomDir = ../../dotfiles/doom;
doomLocalDir = "~/.local/share/nix-doom";
emacs = pkgs.emacs-gtk;
extraPackages =
epkgs:
let
extraPackages = config.home-manager.users.jawz.programs.emacs.extraPackages epkgs;
in
extraPackages
++ [
(epkgs.trivialBuild {
pname = "stylix-theme";
# add config from doom's ui/doom module
src = pkgs.writeText "stylix-theme.el" config.home-manager.users.jawz.programs.emacs.extraConfig;
version = "0.1.0";
packageRequires = extraPackages;
})
];
extraBinPackages = builtins.attrValues {
inherit (pkgs.xorg) xwininfo;
inherit (pkgs)
xdotool
xclip
wl-clipboard-rs
fd # modern find, faster searches
fzf # fuzzy finder! super cool and useful
ripgrep # modern grep
tree-sitter # code parsing based on symbols and shit, I do not get it
graphviz # graphs
tetex # export pdf
languagetool # proofreader for English
# lsps
yaml-language-server
markdownlint-cli
;
inherit (pkgs.nodePackages)
vscode-json-languageserver
prettier # multi-language linter
;
};
};
defaultEditor = true;
# extraPackages = [ pkgs.base16-stylix-theme ];
};
environment.variables.PATH = [ "\${XDG_CONFIG_HOME}/emacs/bin" ];
};