Compare commits

...

4 commits

5 changed files with 84 additions and 15 deletions

View file

@ -27,7 +27,8 @@
#:use-module (oni home services zsh) #:use-module (oni home services zsh)
#:use-module (oni packages hlwm-run-or-raise) #:use-module (oni packages hlwm-run-or-raise)
#:use-module (oni packages pick-random-wallpaper) #:use-module (oni packages pick-random-wallpaper)
#:use-module (oni packages shutdown-rofi)) #:use-module (oni packages shutdown-rofi)
#:use-module (oni packages zsh))
(define data-picom-service (define data-picom-service
(service home-picom-service-type (service home-picom-service-type
@ -67,6 +68,7 @@
;; configuration last. ;; configuration last.
(service home-zsh-syntax-highlighting-service-type) (service home-zsh-syntax-highlighting-service-type)
(service home-zsh-autosuggestions-service-type) (service home-zsh-autosuggestions-service-type)
(service home-zsh-contextual-abbrevs-service-type)
(service home-xsession-service-type (service home-xsession-service-type
(home-xsession-configuration (home-xsession-configuration
@ -137,13 +139,15 @@
(dev split horizontal:0.54:1 (clients max:0) (clients vertical:0)))) (dev split horizontal:0.54:1 (clients max:0) (clients vertical:0))))
(extra (extra
(list (list
"set_monitors 1920x1080+0+0" (mixed-text-file
"focus_edge left" "autostart"
"keybind Mod4-apostrophe spawn dunstctl close" "set_monitors 1920x1080+0+0\n"
"keybind Mod4-quotedbl spawn dunstctl close-all" "focus_edge left\n"
"keybind Mod4-Control-apostrophe spawn dunstctl history-pop" "keybind Mod4-apostrophe spawn dunstctl close\n"
"keybind Mod4-Mod1-apostrophe spawn dunstctl context" "keybind Mod4-quotedbl spawn dunstctl close-all\n"
"spawn pick-random-wallpaper")))) "keybind Mod4-Control-apostrophe spawn dunstctl history-pop\n"
"keybind Mod4-Mod1-apostrophe spawn dunstctl context\n"
"spawn pick-random-wallpaper\n")))))
(service home-polybar-service-type (service home-polybar-service-type
(home-polybar-configuration (home-polybar-configuration

View file

@ -46,7 +46,7 @@
(alist '()) (alist '())
"Layouts to load for tags") "Layouts to load for tags")
(extra (extra
(list '()) (text-config '())
"Extra commands")) "Extra commands"))
(define (add-herbstluftwm-packages config) (define (add-herbstluftwm-packages config)
@ -105,8 +105,9 @@
(car layout-pair) (car layout-pair)
(cdr layout-pair))) (cdr layout-pair)))
(home-herbstluftwm-configuration-layouts config)) (home-herbstluftwm-configuration-layouts config))
(map (λ (line) (format #f "herbstclient ~a\n" line)) (list (serialize-text-config
(home-herbstluftwm-configuration-extra config)))))) config
(home-herbstluftwm-configuration-extra config)))))))
(define (add-herbstluftwm-executable config) (define (add-herbstluftwm-executable config)
(home-xinit-extension (home-xinit-extension

View file

@ -50,9 +50,9 @@
#~(make-forkexec-constructor #~(make-forkexec-constructor
'#$(append '#$(append
(delete #f (delete #f
(list (file-append (home-unclutter-configuration-package config) "/bin/unclutter") (list (file-append (home-unclutter-configuration-package config) "/bin/unclutter")
"--timeout" (home-unclutter-configuration-timeout config) "--timeout" (number->string (home-unclutter-configuration-timeout config))
"--jitter" (home-unclutter-configuration-jitter config) "--jitter" (number->string (home-unclutter-configuration-jitter config))
(and (home-unclutter-configuration-exclude-root config) "--exclude-root") (and (home-unclutter-configuration-exclude-root config) "--exclude-root")
(and (home-unclutter-configuration-ignore-scrolling config) "--ignore-scrolling") (and (home-unclutter-configuration-ignore-scrolling config) "--ignore-scrolling")
(and (home-unclutter-configuration-hide-on-touch config) "--hide-on-touch") (and (home-unclutter-configuration-hide-on-touch config) "--hide-on-touch")

View file

@ -6,11 +6,14 @@
#:use-module (gnu home services utils) #:use-module (gnu home services utils)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (oni packages zsh)
#:export (home-zsh-autosuggestions-service-type #:export (home-zsh-autosuggestions-service-type
home-zsh-autosuggestions-configuration home-zsh-autosuggestions-configuration
home-zsh-syntax-highlighting-service-type home-zsh-syntax-highlighting-service-type
home-zsh-syntax-highlighting-configuration)) home-zsh-syntax-highlighting-configuration
home-zsh-contextual-abbrevs-service-type
home-zsh-contextual-abbrevs-configuration))
(define-configuration/no-serialization home-zsh-autosuggestions-configuration (define-configuration/no-serialization home-zsh-autosuggestions-configuration
(package (package
@ -72,3 +75,33 @@
(compose identity) (compose identity)
(default-value (home-zsh-syntax-highlighting-configuration)) (default-value (home-zsh-syntax-highlighting-configuration))
(description "Install and configure zsh-syntax-highlighting."))) (description "Install and configure zsh-syntax-highlighting.")))
(define-configuration/no-serialization home-zsh-contextual-abbrevs-configuration
(package
(package zsh-contextual-abbrevs)
"Package to use for setting zsh-contexual-abbrevs."))
(define (add-zsh-contextual-abbrevs config)
(home-zsh-extension
(zshrc
(list
(mixed-text-file
"zshrc"
"source " (home-zsh-contextual-abbrevs-configuration-package config) "/share/zsh/plugins/zsh-contextual-abbrevs/contextual-abbrevs.zsh")))))
(define (add-zsh-contextual-abbrevs-packages config)
(list (home-zsh-contextual-abbrevs-configuration-package config)))
(define home-zsh-contextual-abbrevs-service-type
(service-type
(name 'home-zsh-contextual-abbrevs)
(extensions
(list (service-extension
home-zsh-service-type
add-zsh-contextual-abbrevs)
(service-extension
home-profile-service-type
add-zsh-contextual-abbrevs-packages)))
(compose identity)
(default-value (home-zsh-contextual-abbrevs-configuration))
(description "Install and configure zsh-contextual-abbrevs.")))

31
oni/packages/zsh.scm Normal file
View file

@ -0,0 +1,31 @@
(define-module (oni packages zsh)
#:use-module ((guix licenses) #:prefix license:)
#:use-module ((guix packages) #:select (package origin base32))
#:use-module ((guix git-download) #:select (git-version
git-reference
git-fetch
git-file-name))
#:use-module ((guix build-system copy) #:select (copy-build-system)))
(define-public zsh-contextual-abbrevs
(let ((commit "232ac42d70dba257fa904fc9a96f2a3bfed16585")
(revision "0"))
(package
(name "zsh-contextual-abbrevs")
(version (git-version "0.0.0" revision commit))
(source (origin
(uri (git-reference
(url "https://github.com/langston-barrett/zsh-contextual-abbrevs.git")
(commit commit)))
(method git-fetch)
(sha256
(base32 "02r6k0bhdbj585mchz8m9z5yjzk7xd48mz4mamirb9nap4n870zh"))
(file-name (git-file-name name version))))
(build-system copy-build-system)
(arguments
'(#:install-plan '(("src"
"/share/zsh/plugins/zsh-contextual-abbrevs"))))
(synopsis "Auto")
(description "Something")
(license license:expat)
(home-page "https://example.org"))))