29 lines
600 B
Nix
29 lines
600 B
Nix
{ inputs, config, lib, pkgs, ... }:
|
|
let
|
|
emacsclient-wrapper = pkgs.writeShellScriptBin "e" ''
|
|
exec ${pkgs.emacs}/bin/emacsclient --reuse-frame --no-wait "$@"
|
|
'';
|
|
in {
|
|
nixpkgs.overlays = [ inputs.emacs.overlay ];
|
|
|
|
home = {
|
|
sessionPath = [ "$HOME/.emacs.d/bin" ];
|
|
packages = [ emacsclient-wrapper ];
|
|
};
|
|
|
|
programs.emacs = {
|
|
enable = true;
|
|
extraPackages = epkgs: with epkgs; [ vterm ];
|
|
};
|
|
|
|
services.emacs = {
|
|
enable = true;
|
|
defaultEditor = true;
|
|
startWithUserSession = true;
|
|
};
|
|
|
|
xdg.configFile.doom = {
|
|
target = "doom";
|
|
source = ./doom;
|
|
};
|
|
}
|