Evie Litherland-Smith
16babc3f15
Switch email from mu/mu4e to notmuch, with associated service changes Add elfeed config, enable useful minor-modes Slight restructure of file layout
115 lines
2.2 KiB
Nix
115 lines
2.2 KiB
Nix
{ config, pkgs, crafted-emacs, ... }:
|
|
|
|
{
|
|
imports = [ ./formatters.nix ./lsp_servers.nix ];
|
|
stylix.targets.emacs.enable = false;
|
|
xdg.configFile = {
|
|
emacs = {
|
|
source = ./config;
|
|
recursive = true;
|
|
};
|
|
"emacs/crafted-emacs".source = crafted-emacs;
|
|
};
|
|
services.git-sync = {
|
|
enable = true;
|
|
repositories.org = {
|
|
path = "${config.home.homeDirectory}/Org";
|
|
uri = "git+https://git.xenia.me.uk/xenia/Org.git";
|
|
};
|
|
};
|
|
programs.emacs = {
|
|
enable = true;
|
|
package = with pkgs;
|
|
((emacsPackagesFor emacs29-pgtk).emacsWithPackages (epkgs:
|
|
with epkgs; [
|
|
# Theme
|
|
doom-themes
|
|
|
|
# completion-packages
|
|
cape
|
|
consult
|
|
corfu
|
|
corfu-terminal
|
|
embark
|
|
embark-consult
|
|
marginalia
|
|
orderless
|
|
vertico
|
|
|
|
# ide-packages
|
|
editorconfig
|
|
aggressive-indent
|
|
ibuffer-project
|
|
# custom
|
|
treesit-grammars.with-all-grammars
|
|
treesit-auto
|
|
apheleia
|
|
direnv
|
|
nix-mode
|
|
rust-mode
|
|
|
|
# org-packages
|
|
denote
|
|
org-appear
|
|
|
|
# ui-packages
|
|
all-the-icons
|
|
elisp-demos
|
|
helpful
|
|
|
|
# workspaces-packages
|
|
tabspaces
|
|
|
|
# writing-packages
|
|
markdown-mode
|
|
pandoc-mode
|
|
auctex
|
|
auctex-latexmk
|
|
|
|
# email-packages
|
|
notmuch
|
|
notmuch-indicator
|
|
|
|
# feed-packages
|
|
elfeed
|
|
elfeed-org
|
|
elfeed-webkit
|
|
elfeed-tube
|
|
elfeed-tube-mpv
|
|
|
|
# Additional packages
|
|
which-key
|
|
magit
|
|
vterm
|
|
]));
|
|
};
|
|
home = {
|
|
packages = with pkgs; [
|
|
# Emacs dependencies
|
|
coreutils
|
|
gnutls
|
|
ripgrep
|
|
cmake
|
|
fd
|
|
imagemagick
|
|
zstd
|
|
graphviz
|
|
zip
|
|
unzip
|
|
|
|
# Language-specific requirements
|
|
(aspellWithDicts (ds: with ds; [ en en-computers en-science ]))
|
|
languagetool
|
|
wordnet
|
|
findutils
|
|
sqlite
|
|
pandoc
|
|
gfortran
|
|
rustup
|
|
texlive.combined.scheme-medium
|
|
python3
|
|
nodePackages.stylelint
|
|
];
|
|
};
|
|
}
|