summaryrefslogtreecommitdiff
path: root/.config/guix/modules/emacs.scm
diff options
context:
space:
mode:
Diffstat (limited to '.config/guix/modules/emacs.scm')
-rw-r--r--.config/guix/modules/emacs.scm69
1 files changed, 69 insertions, 0 deletions
diff --git a/.config/guix/modules/emacs.scm b/.config/guix/modules/emacs.scm
new file mode 100644
index 0000000..40890b5
--- /dev/null
+++ b/.config/guix/modules/emacs.scm
@@ -0,0 +1,69 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Provides a home-service, installing ;;
+;; my required emacs packages. Because ;;
+;; root cannot use my emacs config, ;;
+;; installing packages in my home is ;;
+;; ideal. ;;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+
+(define-module (emacs)
+ #:use-module (gnu)
+ #:use-module (gnu home services)
+ #:use-module (gnu services)
+ #:use-module (gnu services configuration)
+ #:use-module (gnu system)
+ #:use-module (guix gexp)
+ #:export (bd-home-emacs-service-type))
+
+(use-package-modules
+ aspell emacs-xyz
+ mail lisp)
+
+
+(define (bd-home-emacs-package-list config)
+ (list
+ ;; direct
+ emacs-all-the-icons
+ emacs-all-the-icons-dired
+ emacs-auctex
+ emacs-consult
+ emacs-ef-themes
+ emacs-emms
+ emacs-f ;; tmp
+ emacs-guix
+ emacs-htmlize
+ emacs-hydra ;;tmp
+ emacs-loop ;;tmp
+ emacs-magit
+ emacs-marginalia
+ emacs-notmuch
+ emacs-orderless
+ emacs-org-roam
+ emacs-paredit
+ emacs-popper
+ emacs-rainbow-delimiters
+ emacs-rainbow-mode
+ emacs-shackle
+ emacs-simple-httpd
+ emacs-slime
+ emacs-transmission
+ emacs-vertico
+ emacs-visual-fill-column
+
+ ;; associative
+ aspell
+ aspell-dict-en
+ sbcl
+ ))
+
+
+(define bd-home-emacs-service-type
+ (service-type (name 'emacs-config)
+ (description "A service which deploys my
+emacs configuration.")
+ (extensions
+ (list (service-extension
+ home-profile-service-type
+ bd-home-emacs-package-list)))
+ (default-value #f)))