6DZO6E3ALZ477IYSCGVKASDYM54CZEDON55NR2UTUGOCZR3BMTAAC
BKDNC5EPJNA7722MM6WZL6COABWY2HYZ3OTE73GRNCBELOORVW6QC
G3HOZ76K2NR5UVTKVUI6ZDOXQWCU3CAMTK2OOHKKMRV73GQ7CFSAC
VXESMJDKIRYTNWV6PVDZUSECSP7ESMK5LZPEE72DFBUU5MH7GWLAC
3RG3K64UNBVMFYBBHNYCI7Y6GI7NZAHCCT76GMBBGK7PO4744BLAC
4A5J4ZQ3HM2ZK6OO7N3RZ2WX3YHNGA3X5WJIB4UQJPQGUG4O3AYQC
JZ5SCOY34BCBHZR7PGOXSECOSLKN3UGQMUIWYPYZSCWIA6NTH27QC
TAHNZ4UZMQJ5SM5GGVXCSZNX2ZFA5MBPBEDZLBR3NPT6ECC5OEWQC
TLJB2OPT3NO2ENJ7QEYCXNO45GQ6RMYEJCZGMJ3RJFCSQOMVB4RAC
KDRXBQZRFEHEFNN2IWEMBGR7IIGYQ3X4MJJTRZLQX54GBEX67MMQC
BYCLZBRJTN2ZIINK42SBGJHKCPVXECL632SYTV6EEQROEUNZJFHAC
A32NGEIBDOOKELILD6YPAGDCEDVVSYBSNJNS4RDXB7SHBQNIVNPQC
{ pkgs }:
pkgs.callPackage
(builtins.fetchTarball {
url = "https://github.com/vlaci/nix-doom-emacs/archive/master.tar.gz";
})
{
doomPrivateDir = ./doom.d;
extraConfig = ''
(setq
mu4e-mu-binary "${pkgs.mu}/bin/mu"
sendmail-program "${pkgs.msmtp}/bin/msmtp"
message-sendmail-f-is-evil t
message-sendmail-extra-arguments '("--read-envelope-from")
message-send-mail-function 'message-send-mail-with-sendmail)
'';
extraPackages = epkgs: [ pkgs.emacs-all-the-icons-fonts pkgs.mu epkgs.vterm ];
# TODO on macos we should pass pkgs.emacsMacPort here but it's currently broken
# FIXME upstream a change with attr overrides breaks due to a missing attribute `passthru`
emacsPackages = pkgs.emacsPackagesFor pkgs.emacs;
}
# TODO inquire / fix upstream emacsMacport currently breaks due to a missing attribute: `passthru`
emacs-pkg = pkgs.emacs;
# if pkgs.stdenv.hostPlatform.isLinux then pkgs.emacs else pkgs.emacsMacport;
doom-emacs = pkgs.callPackage
(builtins.fetchTarball {
url = "https://github.com/vlaci/nix-doom-emacs/archive/master.tar.gz";
})
{
doomPrivateDir = ./doom.d;
extraConfig = ''
(setq
mu4e-mu-binary "${pkgs.mu}/bin/mu"
sendmail-program "${pkgs.msmtp}/bin/msmtp"
message-sendmail-f-is-evil t
message-sendmail-extra-arguments '("--read-envelope-from")
message-send-mail-function 'message-send-mail-with-sendmail)
'';
extraPackages = epkgs: [ pkgs.emacs-all-the-icons-fonts pkgs.mu epkgs.vterm ];
emacsPackages = pkgs.emacsPackagesFor emacs-pkg;
};
isLinux = pkgs.stdenv.hostPlatform.isLinux;
doom = (import ./doom.nix {pkgs=pkgs;});
services.emacs = {
# on macos nix-darwin handles the service configuration
enable = pkgs.stdenv.hostPlatform.isLinux;
package = doom-emacs;
};
# on macos nix-darwin handles the service configuration
config.services = if isLinux then {
emacs.enable = isLinux;
emacs.package = doom;
lorri.enable = true;
} else {};