aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Tom Willemse2025-12-23 01:33:52 -0800
committerGravatar Tom Willemse2025-12-23 01:33:52 -0800
commit89025445903087677e7e392018ba5be1e6d04a02 (patch)
treec460dfb876bb833186f797c3a75cbdcc230cbf15
parent71af87fb5131f5eb639b437e677cb26a9a63508a (diff)
downloadnew-dotfiles-89025445903087677e7e392018ba5be1e6d04a02.tar.gz
new-dotfiles-89025445903087677e7e392018ba5be1e6d04a02.zip
Flyover: Add package and home service
-rw-r--r--oni/home/config/rincewind.scm34
-rw-r--r--oni/home/services/emacs.scm44
-rw-r--r--oni/home/services/emacs/flyover.el4
-rw-r--r--oni/packages/emacs.scm28
4 files changed, 75 insertions, 35 deletions
diff --git a/oni/home/config/rincewind.scm b/oni/home/config/rincewind.scm
index 888c948..c002b87 100644
--- a/oni/home/config/rincewind.scm
+++ b/oni/home/config/rincewind.scm
@@ -70,28 +70,7 @@
#:select (home-copyq-service-type))
#:use-module ((oni home services dunst)
#:select (home-dunst-default-service))
- #:use-module ((oni home services emacs)
- #:select (home-emacs-service-type
- home-emacs-configuration
- home-emacs-helpful-configuration
- home-emacs-yasnippet-capf-configuration
- home-emacs-envrc-configuration
- home-emacs-dashboard-service-type
- home-emacs-dashboard-configuration
- home-emacs-eros-service-type
- home-emacs-ace-link-service-type
- home-emacs-ace-link-configuration
- home-emacs-ace-link-notmuch-service-type
- home-emacs-ace-link-notmuch-configuration
- home-emacs-golden-ratio-service-type
- home-emacs-pinentry-service-type
- home-emacs-vterm-service-type
- home-emacs-vterm-configuration
- home-emacs-org-modern-service-type
- home-emacs-org-modern-configuration
- home-wakatime-service-type
- home-wakatime-configuration
- home-emacs-org-journal-service-type))
+ #:use-module (oni home services emacs)
#:use-module ((oni home services environment)
#:select (home-environment-service))
#:use-module ((oni home services flameshot)
@@ -145,14 +124,7 @@
home-zsh-atuin-configuration))
#:use-module ((oni packages count-emails)
#:select (count-emails))
- #:use-module ((oni packages emacs)
- #:select (emacs-inkplate
- emacs-outli
- emacs-syncthing-status
- emacs-nginx-mode
- emacs-next-org-modern
- emacs-indexed
- my-emacs-org-roam))
+ #:use-module (oni packages emacs)
#:use-module ((oni packages emacs-config)
#:select (emacs-oni-org-roam
emacs-oni-elfeed
@@ -432,6 +404,8 @@
(home-emacs-org-modern-configuration
(package emacs-next-org-modern)))
(service home-emacs-org-journal-service-type)
+ (service home-emacs-flyover-service-type)
+
(service home-wakatime-service-type
(home-wakatime-configuration
(api-url "https://waka.ryuslash.org/api")
diff --git a/oni/home/services/emacs.scm b/oni/home/services/emacs.scm
index 5a93fb9..be0fc7c 100644
--- a/oni/home/services/emacs.scm
+++ b/oni/home/services/emacs.scm
@@ -39,10 +39,7 @@
mixed-text-file))
#:use-module ((guix packages)
#:select (package?))
- #:use-module ((oni packages emacs)
- #:select (emacs-yasnippet-capf
- emacs-golden-ratio
- emacs-ace-link-notmuch))
+ #:use-module (oni packages emacs)
#:use-module ((rosenthal packages binaries)
#:select (wakatime-cli-bin))
#:use-module ((rosenthal packages emacs-xyz)
@@ -87,7 +84,10 @@
home-emacs-org-caldav-configration
home-emacs-org-journal-service-type
- home-emacs-org-journal-configuration))
+ home-emacs-org-journal-configuration
+
+ home-emacs-flyover-service-type
+ home-emacs-flyover-configuration))
(define-maybe string)
@@ -855,3 +855,37 @@
(compose identity)
(default-value (home-emacs-org-journal-configuration))
(description "Install and configure emacs-org-journal")))
+
+;;; Flyover
+
+(define-configuration/no-serialization home-emacs-flyover-configuration
+ (package
+ (package emacs-flyover)
+ "Package to install and configure for flyover.")
+ (extra-content
+ (text-config '())
+ "Extra content for emacs-flyover configuration."))
+
+(define (add-emacs-flyover-configuration config)
+ (home-emacs-extension
+ (configurations
+ (append
+ (list (local-file "emacs/flyover.el"))
+ (home-emacs-flyover-configuration-extra-content config)))))
+
+(define (add-emacs-flyover-packages config)
+ (list (home-emacs-flyover-configuration-package config)))
+
+(define home-emacs-flyover-service-type
+ (service-type
+ (name 'home-emacs-flyover)
+ (extensions
+ (list (service-extension
+ home-emacs-service-type
+ add-emacs-flyover-configuration)
+ (service-extension
+ home-profile-service-type
+ add-emacs-flyover-packages)))
+ (compose identity)
+ (default-value (home-emacs-flyover-configuration))
+ (description "Install and configure emacs-flyover")))
diff --git a/oni/home/services/emacs/flyover.el b/oni/home/services/emacs/flyover.el
new file mode 100644
index 0000000..f9259df
--- /dev/null
+++ b/oni/home/services/emacs/flyover.el
@@ -0,0 +1,4 @@
+(use-package flyover
+ :hook ((flycheck-mode . flyover-mode))
+ :custom
+ (flyover-virtual-line-type 'straight-arrow))
diff --git a/oni/packages/emacs.scm b/oni/packages/emacs.scm
index 1f6e175..730a36f 100644
--- a/oni/packages/emacs.scm
+++ b/oni/packages/emacs.scm
@@ -951,3 +951,31 @@ machines. See the project page for the complete list of features.
This package provides functionality to store and browse eshell history in atuin.")
(license license:gpl3+))))
+
+(define-public emacs-flyover
+ (package
+ (name "emacs-flyover")
+ (version "20251208.647")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/konrad1977/flyover")
+ (commit "0446b4289bd7a3f169f2ab8eb6f6fa0365322bab")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0j7m3ma14q5gdlkhiq00f17v7sz8z7ddjv14hijxpmzqc2awrhyd"))))
+ (build-system emacs-build-system)
+ (propagated-inputs (list emacs-flymake))
+ (arguments
+ '(#:include '("^flyover.el$")
+ #:exclude '()))
+ (home-page "https://github.com/konrad1977/flyover")
+ (synopsis "Display Flycheck and Flymake errors with overlays")
+ (description
+ "This package provides a way to display Flycheck and Flymake errors using
+overlays. It offers customization options for icons, colors, and display
+behavior. Flycheck is optional - if not available, only Flymake support will be
+enabled.")
+ (license license:expat)))
+