aboutsummaryrefslogtreecommitdiffstats
path: root/oni/home/services
diff options
context:
space:
mode:
authorGravatar Tom Willemse2023-09-14 22:54:36 -0700
committerGravatar Tom Willemse2023-09-14 22:54:36 -0700
commitc900af3e00a8ec88c2ec0bfa8cecee038a0a6ab8 (patch)
tree64b27178f9c1446731c724e41d02b43cdf42ca92 /oni/home/services
parente6a5c692d34c67122311d4b1c47e25f04c6fb6ec (diff)
downloadnew-dotfiles-c900af3e00a8ec88c2ec0bfa8cecee038a0a6ab8.tar.gz
new-dotfiles-c900af3e00a8ec88c2ec0bfa8cecee038a0a6ab8.zip
Add some more of my Emacs packages to my config
Diffstat (limited to 'oni/home/services')
-rw-r--r--oni/home/services/emacs.scm42
1 files changed, 40 insertions, 2 deletions
diff --git a/oni/home/services/emacs.scm b/oni/home/services/emacs.scm
index 564ed3d..99dd2dd 100644
--- a/oni/home/services/emacs.scm
+++ b/oni/home/services/emacs.scm
@@ -8,7 +8,8 @@
#:use-module ((gnu packages emacs)
#:select (emacs))
#:use-module ((gnu packages emacs-xyz)
- #:select (emacs-helpful))
+ #:select (emacs-helpful
+ emacs-dashboard))
#:use-module ((gnu home services)
#:select (service-type
service-extension
@@ -35,7 +36,10 @@
home-emacs-helpful-configuration
home-emacs-yasnippet-capf-service-type
- home-emacs-yasnippet-capf-configuration))
+ home-emacs-yasnippet-capf-configuration
+
+ home-emacs-dashboard-service-type
+ home-emacs-dashboard-configuration))
(define-configuration/no-serialization home-emacs-extension
(configurations
@@ -158,3 +162,37 @@
(compose identity)
(default-value (home-emacs-yasnippet-capf-configuration))
(description "Install and configure emacs-yasnippet-capf.")))
+
+(define-configuration/no-serialization home-emacs-dashboard-configuration
+ (package
+ (package emacs-dashboard)
+ "Package to use for setting emacs-dashboard.")
+ (configurations
+ (text-config '())
+ "Configuration for emacs-dashboard."))
+
+(define (add-emacs-dashboard config)
+ (home-emacs-extension
+ (configurations
+ (append
+ (list (mixed-text-file "dashboard-config"
+ "(dashboard-setup-startup-hook)\n"
+ "(setq initial-buffer-choice (lambda () (get-buffer-create \"*dashboard*\")))\n"))
+ (home-emacs-dashboard-configuration-configurations config)))))
+
+(define (add-emacs-dashboard-packages config)
+ (list (home-emacs-dashboard-configuration-package config)))
+
+(define home-emacs-dashboard-service-type
+ (service-type
+ (name 'home-emacs-dashboard)
+ (extensions
+ (list (service-extension
+ home-emacs-service-type
+ add-emacs-dashboard)
+ (service-extension
+ home-profile-service-type
+ add-emacs-dashboard-packages)))
+ (compose identity)
+ (default-value (home-emacs-dashboard-configuration))
+ (description "Install and configure emacs-dashboard.")))