{ config, pkgs, ... }: { environment.systemPackages = [ ((with pkgs; emacsPackagesFor emacsPgtk).emacsWithPackages (epkgs: with epkgs; [ adoc-mode cmake-mode code-review csharp-mode direnv dockerfile-mode ebuild-mode editorconfig eglot elpher execline forge gn-mode gnuplot-mode go-mode graphql-mode graphviz-dot-mode groovy-mode haskell-mode jam-mode kotlin-mode lua-mode magit markdown-mode meson-mode monokai-theme mutt-mode ninja-mode nix-mode notmuch org-roam pass pod-mode protobuf-mode rainbow-delimiters rust-mode sort-words toml-mode tuareg typescript-mode udev-mode vala-mode yaml-mode zig-mode ])) ]; systemd.tmpfiles.rules = [ "d ${config.users.users.qyliss.home}/notes 0700 qyliss qyliss" ]; users.users.qyliss.xdg.config.paths."emacs" = with pkgs; runCommandNoCC ".emacs.d" { nativeBuildInputs = [ emacsPgtk ]; } '' cp ${./early-init.el} early-init.el cp ${./init.el} init.el emacs -L . --batch -f batch-byte-compile *.el install -d $out install *.el *.elc $out ''; }