Add some more of my Emacs packages to my config

This commit is contained in:
Tom Willemse 2023-09-14 22:54:36 -07:00
parent e6a5c692d3
commit c900af3e00
3 changed files with 355 additions and 7 deletions

View file

@ -73,7 +73,9 @@
home-emacs-configuration home-emacs-configuration
home-emacs-helpful-service-type home-emacs-helpful-service-type
home-emacs-helpful-configuration 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) #:use-module ((oni home services environment)
#:select (home-environment-service)) #:select (home-environment-service))
#:use-module ((oni home services flameshot) #:use-module ((oni home services flameshot)
@ -129,7 +131,41 @@
emacs-oni-magit emacs-oni-magit
emacs-oni-notmuch emacs-oni-notmuch
emacs-oni-hy 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) #:use-module ((oni packages hlwm-run-or-raise)
#:select (hlwm-run-or-raise)) #:select (hlwm-run-or-raise))
#:use-module ((oni packages inbox-size) #:use-module ((oni packages inbox-size)
@ -226,6 +262,7 @@
emacs-inkplate emacs-inkplate
emacs-outli emacs-outli
emacs-guix emacs-guix
emacs-oni-org-roam emacs-oni-org-roam
emacs-oni-vterm emacs-oni-vterm
emacs-oni-elisp emacs-oni-elisp
@ -239,6 +276,41 @@
emacs-oni-notmuch emacs-oni-notmuch
emacs-oni-hy 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-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-bash
tree-sitter-scheme tree-sitter-scheme
tree-sitter-python tree-sitter-python
@ -329,6 +401,7 @@
"init.el" "init.el"
"(with-eval-after-load 'hy-mode (require 'oni-hy))\n" "(with-eval-after-load 'hy-mode (require 'oni-hy))\n"
"(with-eval-after-load 'project (require 'oni-project))\n" "(with-eval-after-load 'project (require 'oni-project))\n"
"(projectile-mode)\n"
"(setq custom-file \"~/.config/emacs/custom.el\")\n" "(setq custom-file \"~/.config/emacs/custom.el\")\n"
"(load custom-file)\n" "(load custom-file)\n"
"(provide 'init)\n" "(provide 'init)\n"
@ -339,6 +412,7 @@
(list (list
(local-file "../services/emacs/oni-helpful.el"))))) (local-file "../services/emacs/oni-helpful.el")))))
(service home-emacs-yasnippet-capf-service-type) (service home-emacs-yasnippet-capf-service-type)
(service home-emacs-dashboard-service-type)
(service home-flameshot-service-type) (service home-flameshot-service-type)

View file

@ -8,7 +8,8 @@
#:use-module ((gnu packages emacs) #:use-module ((gnu packages emacs)
#:select (emacs)) #:select (emacs))
#:use-module ((gnu packages emacs-xyz) #:use-module ((gnu packages emacs-xyz)
#:select (emacs-helpful)) #:select (emacs-helpful
emacs-dashboard))
#:use-module ((gnu home services) #:use-module ((gnu home services)
#:select (service-type #:select (service-type
service-extension service-extension
@ -35,7 +36,10 @@
home-emacs-helpful-configuration home-emacs-helpful-configuration
home-emacs-yasnippet-capf-service-type 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 (define-configuration/no-serialization home-emacs-extension
(configurations (configurations
@ -158,3 +162,37 @@
(compose identity) (compose identity)
(default-value (home-emacs-yasnippet-capf-configuration)) (default-value (home-emacs-yasnippet-capf-configuration))
(description "Install and configure emacs-yasnippet-capf."))) (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.")))

View file

@ -13,7 +13,7 @@
#:use-module (oni packages go)) #:use-module (oni packages go))
(define-public emacs-oni-config (define-public emacs-oni-config
(let ((commit "6698c28e49456e532fc7a2f190193656b1a4101a") (let ((commit "655ce45b2f4f8ebcc0e1937e1a362228022dd95d")
(revision "0")) (revision "0"))
(package (package
(name "emacs-oni-config") (name "emacs-oni-config")
@ -26,7 +26,7 @@
(commit commit))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0x2slp01ziw05n084kd1sv9fbqy0c7fvq6j0c94q10s4wcbw277n")))) (base32 "00l4g6n3rk3fwnz6sfmfyagdqik5w21cm8mg3biz48qjnhhm1n5w"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://code.ryuslash.org/ryuslash/emacs-config") (home-page "https://code.ryuslash.org/ryuslash/emacs-config")
(synopsis "My Emacs configuration") (synopsis "My Emacs configuration")
@ -267,7 +267,8 @@ Emacs")))
`(("emacs-reformatter" ,emacs-reformatter) `(("emacs-reformatter" ,emacs-reformatter)
("emacs-oni-flycheck" ,emacs-oni-flycheck) ("emacs-oni-flycheck" ,emacs-oni-flycheck)
("emacs-oni-smartparens" ,emacs-oni-smartparens) ("emacs-oni-smartparens" ,emacs-oni-smartparens)
("shfmt" ,shfmt))) ;; ("shfmt" ,shfmt)
))
(synopsis "My Emacs Shell coding configuration") (synopsis "My Emacs Shell coding configuration")
(description "This package provides my configuration for coding in Shell"))) (description "This package provides my configuration for coding in Shell")))
@ -319,6 +320,7 @@ Emacs")))
`(("emacs-oni-yasnippet" ,emacs-oni-yasnippet) `(("emacs-oni-yasnippet" ,emacs-oni-yasnippet)
("emacs-oni-alert" ,emacs-oni-alert) ("emacs-oni-alert" ,emacs-oni-alert)
("emacs-oni-hydra" ,emacs-oni-hydra) ("emacs-oni-hydra" ,emacs-oni-hydra)
("emacs-org-roam" ,emacs-org-roam)
("emacs-org" ,emacs-org) ("emacs-org" ,emacs-org)
("emacs-org-contrib" ,emacs-org-contrib) ("emacs-org-contrib" ,emacs-org-contrib)
("emacs-org-bullets" ,emacs-org-bullets) ("emacs-org-bullets" ,emacs-org-bullets)
@ -624,3 +626,237 @@ Emacs")))
'(#:include '("oni-project\\.el$"))) '(#:include '("oni-project\\.el$")))
(synopsis "My project.el configuration") (synopsis "My project.el configuration")
(description "This package provides my configuration for project.el."))) (description "This package provides my configuration for project.el.")))
(define-public emacs-oni-dired
(package
(inherit emacs-oni-config)
(name "emacs-oni-dired")
(arguments
'(#:include '("oni-dired\\.el$")))
(synopsis "My Dired configuration")
(description "This package provides my configuration for Dired.")))
(define-public emacs-oni-ediff
(package
(inherit emacs-oni-config)
(name "emacs-oni-ediff")
(arguments
'(#:include '("oni-ediff\\.el$")))
(synopsis "My Ediff configuration")
(description "This package provides my configuration for Ediff.")))
(define-public emacs-oni-elm
(package
(inherit emacs-oni-config)
(name "emacs-oni-elm")
(arguments
'(#:include '("oni-elm\\.el$")))
(propagated-inputs
(list emacs-elm-mode
emacs-oni-lsp
emacs-rainbow-delimiters))
(synopsis "My Elm configuration")
(description "This package provides my configuration for writing Elm code.")))
(define-public emacs-oni-emms
(package
(inherit emacs-oni-config)
(name "emacs-oni-emms")
(arguments
'(#:include '("oni-emms\\.el$")))
(propagated-inputs
(list emacs-emms))
(synopsis "My EMMS configuration")
(description "This package provides my configuration for EMMS.")))
(define-public emacs-oni-epub
(package
(inherit emacs-oni-config)
(name "emacs-oni-epub")
(arguments
'(#:include '("oni-epub\\.el$")))
(propagated-inputs
(list emacs-nov-el))
(synopsis "My configuration for reading ePub files")
(description "This package provides my configuration for reading ePub files.")))
(define-public emacs-oni-eww
(package
(inherit emacs-oni-config)
(name "emacs-oni-eww")
(arguments
'(#:include '("oni-eww\\.el")))
(propagated-inputs
(list emacs-oni-data-dir))
(synopsis "My configuration for EWW")
(description "This package provides my configuration for EWW.")))
(define-public emacs-oni-grep
(package
(inherit emacs-oni-config)
(name "emacs-oni-grep")
(arguments
'(#:include '("oni-grep\\.el$")))
(synopsis "My grep configuration")
(description "This package provides my configuration for grep.")))
(define-public emacs-oni-haskell
(package
(inherit emacs-oni-config)
(name "emacs-oni-haskell")
(arguments
'(#:include '("oni-haskell\\.el$")))
(propagated-inputs
(list emacs-haskell-mode))
(synopsis "My configuration for Haskell programming")
(description "This package provides my configuration for programming Haskell.")))
(define-public emacs-oni-highlight-indent-guides
(package
(inherit emacs-oni-config)
(name "emacs-oni-highlight-indent-guides")
(arguments
'(#:include '("oni-highlight-indent-guides\\.el$")))
(propagated-inputs
(list emacs-highlight-indent-guides))
(synopsis "My configuration for highlight indent guides")
(description "This package provides my configuration for highlight indent guides.")))
(define-public emacs-oni-html
(package
(inherit emacs-oni-config)
(name "emacs-oni-html")
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir-oni-html
(λ _ (chdir "oni-html"))))
#:include '("\\.el$" "^snippets\\/")))
(propagated-inputs
(list emacs-oni-yasnippet))
(synopsis "My HTML configuration")
(description "This package provides my configuration for HTML.")))
(define-public emacs-oni-java
(package
(inherit emacs-oni-config)
(name "emacs-oni-java")
(arguments
'(#:include '("oni-java\\.el$")))
(propagated-inputs
(list emacs-oni-data-dir
emacs-oni-lsp
emacs-oni-hydra
emacs-lsp-java
emacs-rainbow-delimiters))
(synopsis "My configuration for Java")
(description "This package provides my configuration for writing Java.")))
(define-public emacs-oni-json
(package
(inherit emacs-oni-config)
(name "emacs-oni-json")
(arguments
'(#:include '("oni-json\\.el$")))
(propagated-inputs
(list emacs-json-mode))
(synopsis "My configuration for json")
(description "This package provides my configuration for writing json.")))
(define-public emacs-oni-log-edit
(package
(inherit emacs-oni-config)
(name "emacs-oni-log-edit")
(arguments
'(#:include '("oni-log-edit\\.el$")))
(synopsis "My configuration for log-edit")
(description "This package provides my configuration for log-edit.")))
(define-public emacs-oni-lua
(package
(inherit emacs-oni-config)
(name "emacs-oni-lua")
(arguments
'(#:include '("oni-lua\\.el$")))
(propagated-inputs
(list emacs-lua-mode))
(synopsis "My configuration for Lua")
(description "This package provides my configuration for writing Lua.")))
(define-public emacs-oni-makefile
(package
(inherit emacs-oni-config)
(name "emacs-oni-makefile")
(arguments
'(#:include '("oni-makefile\\.el$")))
(synopsis "My configuration for GNU Make")
(description "This package provides my configuration for writing Makefiles.")))
(define-public emacs-oni-nxml
(package
(inherit emacs-oni-config)
(name "emacs-oni-nxml")
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir-oni-nxml
(λ _ (chdir "oni-nxml"))))
#:include '("\\.el$" "^snippets\\/")))
(propagated-inputs
(list emacs-oni-yasnippet
emacs-reformatter))
(synopsis "My XML configuration")
(description "This package provides my configuration for writing XML.")))
(define-public emacs-oni-package
(package
(inherit emacs-oni-config)
(name "emacs-oni-package")
(arguments
'(#:include '("oni-package\\.el$")))
(synopsis "My configuration for package.el")
(description "This package provides my configuration for package.el.")))
(define-public emacs-oni-projectile
(package
(inherit emacs-oni-config)
(name "emacs-oni-projectile")
(arguments
'(#:include '("oni-projectile\\.el$")))
(propagated-inputs
(list emacs-projectile))
(synopsis "My configuration for Projectile")
(description "This package provides my configuration for Projectile.")))
(define-public emacs-oni-scheme
(package
(inherit emacs-oni-config)
(name "emacs-oni-scheme")
(arguments
'(#:include '("oni-scheme\\.el$")))
(propagated-inputs
(list emacs-oni-company
emacs-oni-paredit
emacs-rainbow-delimiters
emacs-geiser
emacs-geiser-guile))
(synopsis "My configuration for Scheme")
(description "This package provides my configuration for writing Scheme.")))
(define-public emacs-oni-shr
(package
(inherit emacs-oni-config)
(name "emacs-oni-shr")
(arguments
'(#:include '("oni-shr\\.el$")))
(synopsis "My configuration for shr")
(description "This package provides my configuration for shr.")))
(define-public emacs-oni-tramp
(package
(inherit emacs-oni-config)
(name "emacs-oni-tramp")
(arguments
'(#:include '("oni-tramp\\.el$")))
(synopsis "My configuration for TRAMP")
(description "This package provides my configuration for TRAMP.")))