diff options
author | bd <bdunahu@operationnull.com> | 2024-06-03 00:32:17 -0600 |
---|---|---|
committer | bd <bdunahu@operationnull.com> | 2024-06-03 00:32:17 -0600 |
commit | b3c2305e52e16be17c699dd36ad769a2e60fb9e8 (patch) | |
tree | acfa23e7834524a9020f333b07aa21605f5918a8 /.config/guix | |
parent | febaf1247357246253fe711ea7ce646271393ca7 (diff) |
Move emacs configuration to a service
Diffstat (limited to '.config/guix')
-rw-r--r-- | .config/guix/kvasir.scm | 1 | ||||
-rw-r--r-- | .config/guix/modules/base.scm | 53 | ||||
-rw-r--r-- | .config/guix/modules/emacs.scm | 69 | ||||
-rw-r--r-- | .config/guix/vali.scm | 1 |
4 files changed, 81 insertions, 43 deletions
diff --git a/.config/guix/kvasir.scm b/.config/guix/kvasir.scm index 520368c..0ee5737 100644 --- a/.config/guix/kvasir.scm +++ b/.config/guix/kvasir.scm @@ -11,6 +11,7 @@ #:use-module (gnu home services) #:use-module (gnu image) #:use-module (gnu packages) + #:use-module (gnu packages linux) #:use-module (gnu services) #:use-module (gnu services guix) #:use-module (gnu system image) diff --git a/.config/guix/modules/base.scm b/.config/guix/modules/base.scm index e701035..4ebbc8c 100644 --- a/.config/guix/modules/base.scm +++ b/.config/guix/modules/base.scm @@ -14,6 +14,7 @@ #:use-module (gnu home services shepherd) #:use-module (gnu home services ssh) #:use-module (gnu home services xdg) + #:use-module (emacs) #:use-module (gnu system) #:use-module (guix gexp) #:export (bd-base-system-packages @@ -23,20 +24,17 @@ (use-service-modules base file-sharing networking ssh) -(use-package-modules aspell gnupg mail - password-utils bittorrent - pdf video cryptsetup - curl emacs version-control - web admin databases rsync - lisp package-management - texlive compression vim - emacs-xyz) +(use-package-modules gnupg mail password-utils + bittorrent pdf video + cryptsetup curl emacs + version-control web admin + databases rsync + package-management + texlive compression vim) (define comm (list - aspell - aspell-dict-en gnupg notmuch offlineimap3 @@ -44,7 +42,7 @@ password-store pinentry transmission - xpdf ; pdftotext + xpdf ; pdftotext yt-dlp )) @@ -58,48 +56,16 @@ netcat recutils rsync - sbcl stow texlive unzip vim )) -(define emacs - (list - emacs-all-the-icons - emacs-all-the-icons-dired - emacs-auctex - emacs-consult - emacs-ef-themes - emacs-emms - emacs-f - emacs-guix - emacs-htmlize - emacs-hydra - emacs-loop - 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 - )) - (define bd-base-system-packages (append! comm dev - emacs %base-packages )) @@ -115,6 +81,7 @@ (define bd-base-home-services (list + (service bd-home-emacs-service-type) (service home-shepherd-service-type) (service home-dicod-service-type) 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))) diff --git a/.config/guix/vali.scm b/.config/guix/vali.scm index e6c05df..5cadbcc 100644 --- a/.config/guix/vali.scm +++ b/.config/guix/vali.scm @@ -11,6 +11,7 @@ #:use-module (gnu home services) #:use-module (gnu home services syncthing) #:use-module (gnu packages) + #:use-module (gnu packages linux) #:use-module (gnu services) #:use-module (gnu services guix) #:use-module (guix gexp) |