emacs: add onChange script to run doom sync and add missing symbols font

This commit is contained in:
Alexandre Cavalheiro S. Tiago da Silva 2024-06-27 00:42:51 -03:00
parent f2882f16a0
commit 30ed9f1e1f
Signed by: wizardlink
GPG key ID: A5767B54367CFBDF
7 changed files with 445 additions and 11 deletions

View file

@ -1,14 +1,43 @@
{ pkgs, ... }:
{ pkgs, lib, ... }:
{
programs.emacs = {
enable = true;
programs.emacs.enable = true;
home.packages = with pkgs; [
# Optional for DOOM
clang
coreutils
fd
];
};
home.packages = with pkgs; [
# Optional for DOOM
clang
coreutils
fd
pandoc # For org-pandoc
];
# Neatly place the configuration files for doom in their right place.
xdg.configFile."doom" =
let
# What DOOM needs to be able to install/sync.
packagesNeeded = with pkgs; [
git
emacs
ripgrep
];
in
{
source = ./doom;
recursive = true;
onChange = # sh
''
# Need to set this so DOOM can find all binaries.
export PATH="${lib.strings.concatMapStrings (x: x + "/bin:") packagesNeeded}$PATH"
if [ ! -d "$HOME/.emacs.d" ]; then
git clone https://github.com/hlissner/doom-emacs $HOME/.emacs.d
$HOME/.emacs.d/bin/doom install
else
# Needed to apply the configuration changes.
$HOME/.emacs.d/bin/doom sync
fi
'';
};
}