aboutsummaryrefslogtreecommitdiffstats
path: root/oni/home
diff options
context:
space:
mode:
Diffstat (limited to 'oni/home')
-rw-r--r--oni/home/config/rincewind.scm78
-rw-r--r--oni/home/services/emacs.scm42
2 files changed, 116 insertions, 4 deletions
diff --git a/oni/home/config/rincewind.scm b/oni/home/config/rincewind.scm
index 9879bef..acb5e90 100644
--- a/oni/home/config/rincewind.scm
+++ b/oni/home/config/rincewind.scm
@@ -73,7 +73,9 @@
home-emacs-configuration
home-emacs-helpful-service-type
home-emacs-helpful-configuration
- home-emacs-yasnippet-capf-service-type))
+ home-emacs-yasnippet-capf-service-type
+ home-emacs-dashboard-service-type
+ home-emacs-dashboard-configuration))
#:use-module ((oni home services environment)
#:select (home-environment-service))
#:use-module ((oni home services flameshot)
@@ -129,7 +131,41 @@
emacs-oni-magit
emacs-oni-notmuch
emacs-oni-hy
- emacs-oni-project))
+ emacs-oni-project
+ emacs-oni-bookmark
+ emacs-oni-dired
+ emacs-oni-browse-url
+ emacs-oni-c
+ emacs-oni-circe
+ emacs-oni-clojure
+ emacs-oni-cmake
+ emacs-oni-conf
+ emacs-oni-cpp
+ emacs-oni-csharp
+ emacs-oni-css
+ emacs-oni-diff-hl
+ emacs-oni-ediff
+ emacs-oni-elm
+ emacs-oni-emms
+ emacs-oni-epub
+ emacs-oni-eww
+ emacs-oni-grep
+ emacs-oni-haskell
+ emacs-oni-highlight-indent-guides
+ emacs-oni-html
+ emacs-oni-java
+ emacs-oni-json
+ emacs-oni-log-edit
+ emacs-oni-lua
+ emacs-oni-makefile
+ emacs-oni-nxml
+ emacs-oni-package
+ emacs-oni-projectile
+ emacs-oni-scheme
+ emacs-oni-sh
+ emacs-oni-shr
+ emacs-oni-tramp
+ emacs-oni-embrace))
#:use-module ((oni packages hlwm-run-or-raise)
#:select (hlwm-run-or-raise))
#:use-module ((oni packages inbox-size)
@@ -226,6 +262,7 @@
emacs-inkplate
emacs-outli
emacs-guix
+
emacs-oni-org-roam
emacs-oni-vterm
emacs-oni-elisp
@@ -239,6 +276,41 @@
emacs-oni-notmuch
emacs-oni-hy
emacs-oni-project
+ emacs-oni-bookmark
+ emacs-oni-dired
+ emacs-oni-browse-url
+ emacs-oni-c
+ emacs-oni-circe
+ emacs-oni-clojure
+ emacs-oni-cmake
+ emacs-oni-conf
+ emacs-oni-cpp
+ emacs-oni-csharp
+ emacs-oni-css
+ emacs-oni-diff-hl
+ emacs-oni-ediff
+ emacs-oni-elm
+ emacs-oni-embrace
+ emacs-oni-emms
+ emacs-oni-epub
+ emacs-oni-eww
+ emacs-oni-grep
+ emacs-oni-haskell
+ emacs-oni-highlight-indent-guides
+ emacs-oni-html
+ emacs-oni-java
+ emacs-oni-json
+ emacs-oni-log-edit
+ emacs-oni-lua
+ emacs-oni-makefile
+ emacs-oni-nxml
+ emacs-oni-package
+ emacs-oni-projectile
+ emacs-oni-scheme
+ emacs-oni-sh
+ emacs-oni-shr
+ emacs-oni-tramp
+
tree-sitter-bash
tree-sitter-scheme
tree-sitter-python
@@ -329,6 +401,7 @@
"init.el"
"(with-eval-after-load 'hy-mode (require 'oni-hy))\n"
"(with-eval-after-load 'project (require 'oni-project))\n"
+ "(projectile-mode)\n"
"(setq custom-file \"~/.config/emacs/custom.el\")\n"
"(load custom-file)\n"
"(provide 'init)\n"
@@ -339,6 +412,7 @@
(list
(local-file "../services/emacs/oni-helpful.el")))))
(service home-emacs-yasnippet-capf-service-type)
+ (service home-emacs-dashboard-service-type)
(service home-flameshot-service-type)
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.")))