nixos/modules/dev/editors/emacs/default.nix

56 lines
1 KiB
Nix

{
outputs,
options,
config,
lib,
pkgs,
inputs,
...
}:
with lib; let
cfg = config.modules.dev.editors.emacs;
in {
options.modules.dev.editors.emacs = {
enable = mkEnableOption false;
daemon = mkEnableOption true;
};
config = mkIf cfg.enable {
# import overlay
nixpkgs.overlays = [
inputs.emacs-overlay
];
# ues daemon
services.emacs = {
enable = cfg.daemon;
install = true;
# package = pkgs.emacs29-pgtk;
package = pkgs.emacsWithPackagesFromUsePackage {
config = ./emacs.org;
defaultInitFile = true;
package = pkgs.emacs-pgtk;
# alwaysEnsure = true;
alwaysTangle = true;
};
};
users.users.sako.packages = with pkgs; [
# direnv
direnv
];
home-manager.users.sako.home.file.".emacs.d" = {
enable = true;
source = ../../../../config/emacs;
recursive = true;
};
fonts.packages = with pkgs; [
(nerdfonts.override {fonts = ["JetBrainsMono"];})
jetbrains-mono
];
};
}