emacs packages using nix

This commit is contained in:
Henri Dohmen 2025-11-23 13:30:43 +01:00
parent e3c5ca4855
commit 0448f276eb
Signed by: hd
GPG key ID: AB79213B044674AE
3 changed files with 53 additions and 95 deletions

View file

@ -20,7 +20,6 @@ in
openFirewall = true; openFirewall = true;
}; };
udisks2.enable = true; udisks2.enable = true;
emacs.enable = true;
}; };
home.services.protonmail-bridge = { home.services.protonmail-bridge = {
@ -31,18 +30,21 @@ in
]; ];
}; };
home.services.unison' = { home.services = {
# TODO: parameterize emacs.enable = true;
enable = true; unison' = {
pairs = { # TODO: parameterize
"docs".roots = [ enable = true;
"/home/hd/Documents" pairs = {
"ssh://roam.lan//home/hd/Documents" "docs".roots = [
]; "/home/hd/Documents"
"desktop".roots = [ "ssh://roam.lan//home/hd/Documents"
"/home/hd/Desktop" ];
"ssh://roam.lan//home/hd/Desktop" "desktop".roots = [
]; "/home/hd/Desktop"
"ssh://roam.lan//home/hd/Desktop"
];
};
}; };
}; };
}; };

View file

@ -40,7 +40,38 @@ in
}; };
programs.emacs = { programs.emacs = {
enable = true; enable = true;
extraPackages = epkgs: [ epkgs.agda2-mode ]; extraPackages =
epkgs: with epkgs; [
ace-window
agda2-mode
better-defaults
cmake-mode
company
consult
delight
doom-themes
editorconfig
exec-path-from-shell
fish-mode
haskell-mode
hl-todo
lsp-mode
magit
marginalia
markdown-mode
multiple-cursors
orderless
proof-general
pyvenv
rainbow-delimiters
restart-emacs
rust-mode
undo-tree
use-package
vertico
which-key
yaml-mode
];
extraConfig = builtins.readFile ../../dotfiles/emacs/init.el; extraConfig = builtins.readFile ../../dotfiles/emacs/init.el;
}; };
programs.vscode = { programs.vscode = {

View file

@ -1,84 +1,16 @@
;; .emacs
;; Initialize straight.el
(defvar bootstrap-version)
(let ((bootstrap-file
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
(bootstrap-version 6))
(unless (file-exists-p bootstrap-file)
(with-current-buffer
(url-retrieve-synchronously
"https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el"
'silent 'inhibit-cookies)
(goto-char (point-max))
(eval-print-last-sexp)))
(load bootstrap-file nil 'nomessage))
;; GCMH - Do this at the beginning so we can maybe start up a bit
;; faster
(straight-use-package 'gcmh)
(gcmh-mode 1)
;; use-package
(straight-use-package 'use-package)
;; Packages
;; Major modes
(straight-use-package 'markdown-mode)
(straight-use-package 'rust-mode)
(straight-use-package 'haskell-mode)
(straight-use-package 'fish-mode)
(straight-use-package 'yaml-mode)
(straight-use-package 'cmake-mode)
(define-minor-mode remove-trailing-whitespace-mode
"Minor mode to remove trailing whitespace on every save"
(add-hook 'before-save-hook 'delete-trailing-whitespace))
(add-hook 'prog-mode-hook 'remove-trailing-whitespace-mode)
;; Other stuff
(straight-use-package 'better-defaults)
(straight-use-package 'delight)
(straight-use-package 'doom-themes)
(straight-use-package 'undo-tree)
(straight-use-package 'multiple-cursors)
(straight-use-package 'which-key)
(straight-use-package 'rainbow-delimiters)
(straight-use-package 'hl-todo)
(straight-use-package 'orderless)
(straight-use-package 'vertico)
(straight-use-package 'consult)
(straight-use-package 'marginalia)
(straight-use-package 'embark)
(straight-use-package 'embark-consult)
(straight-use-package 'company)
(straight-use-package 'lsp-mode)
(straight-use-package 'speed-type)
(straight-use-package 'magit)
(straight-use-package 'restart-emacs)
;; (straight-use-package 'mingus)
(straight-use-package 'ace-window)
;; (straight-use-package 'projectile)
;; (straight-use-package 'osm)
(straight-use-package 'editorconfig)
(straight-use-package 'exec-path-from-shell)
(straight-use-package 'pyvenv)
(straight-use-package 'ellama)
(straight-use-package 'proof-general)
;; Emacs Configuration ;; Emacs Configuration
(setq inhibit-splash-screen t) (setopt inhibit-splash-screen t)
(setq scroll-step 1) (setopt scroll-step 1)
(recentf-mode 1) (recentf-mode 1)
(global-auto-revert-mode 1) (global-auto-revert-mode 1)
(put 'narrow-to-region 'disabled nil) (put 'narrow-to-region 'disabled nil)
(global-unset-key (kbd "C-z")) (global-unset-key (kbd "C-z"))
(setq mac-command-modifier 'meta (add-hook 'prog-mode-hook
mac-option-modifier nil) (lambda ()
(setopt show-trailing-whitespace t)))
;; (set-face-attribute 'default nil :height 140) ;; (set-face-attribute 'default nil :height 140)
(setq use-package-compute-statistics t) (setopt use-package-compute-statistics t)
(use-package display-line-numbers-mode (use-package display-line-numbers-mode
:hook (prog-mode text-mode conf-mode)) :hook (prog-mode text-mode conf-mode))
@ -86,9 +18,6 @@
(use-package hl-line-mode (use-package hl-line-mode
:hook (prog-mode text-mode conf-mode)) :hook (prog-mode text-mode conf-mode))
(use-package gcmh
:delight)
(use-package exec-path-from-shell (use-package exec-path-from-shell
:config :config
(when (memq window-system '(mac ns)) (when (memq window-system '(mac ns))
@ -154,8 +83,4 @@
(editorconfig-mode 1) (editorconfig-mode 1)
:delight) :delight)
(use-package embark
:bind (("C-M-x" . embark-act)))
(electric-indent-mode -1) (electric-indent-mode -1)
(remove-hook 'before-save-hook 'delete-trailing-whitespace)