Compare commits
5 commits
21d8c958e8
...
2cd30670d8
Author | SHA1 | Date | |
---|---|---|---|
2cd30670d8 | |||
3e149fff6c | |||
25d95f3cdd | |||
47737fd93c | |||
4b938b24df |
11 changed files with 224 additions and 18 deletions
|
@ -12,6 +12,7 @@
|
||||||
(outline-heading-end-regexp . ":\n")
|
(outline-heading-end-regexp . ":\n")
|
||||||
(outline-regexp . "##+"))
|
(outline-regexp . "##+"))
|
||||||
(scheme-mode
|
(scheme-mode
|
||||||
|
(geiser-guile-binary . ("guix" "repl"))
|
||||||
(projectile-project-compilation-cmd . "guix home build config.scm")
|
(projectile-project-compilation-cmd . "guix home build config.scm")
|
||||||
(eval . (put 'eval-when 'scheme-indent-function 1))
|
(eval . (put 'eval-when 'scheme-indent-function 1))
|
||||||
(eval . (put 'call-with-prompt 'scheme-indent-function 1))
|
(eval . (put 'call-with-prompt 'scheme-indent-function 1))
|
||||||
|
|
|
@ -163,6 +163,8 @@ endif
|
||||||
check:
|
check:
|
||||||
$(SCHEME_IMPLEMENTATION) --no-auto-compile test.scm
|
$(SCHEME_IMPLEMENTATION) --no-auto-compile test.scm
|
||||||
|
|
||||||
|
new-dotfiles:
|
||||||
|
|
||||||
# Local Variables:
|
# Local Variables:
|
||||||
# outline-regexp: "##+"
|
# outline-regexp: "##+"
|
||||||
# End:
|
# End:
|
||||||
|
|
|
@ -1,3 +1,6 @@
|
||||||
(add-to-load-path (dirname (current-filename)))
|
(add-to-load-path (dirname (current-filename)))
|
||||||
|
|
||||||
|
(system* "make" "new-dotfiles")
|
||||||
|
|
||||||
|
(load-from-path "secrets.scm")
|
||||||
(load-from-path (string-append "oni/home/config/" (gethostname) ".scm"))
|
(load-from-path (string-append "oni/home/config/" (gethostname) ".scm"))
|
||||||
|
|
|
@ -9,3 +9,4 @@
|
||||||
sendmailcmd = /usr/bin/msmtp
|
sendmailcmd = /usr/bin/msmtp
|
||||||
[init]
|
[init]
|
||||||
defaultBranchname = main
|
defaultBranchname = main
|
||||||
|
defaultBranch = main
|
||||||
|
|
|
@ -89,7 +89,8 @@
|
||||||
(environment-variables
|
(environment-variables
|
||||||
'(("HISTFILE" . "$HOME/.zsh/histfile")
|
'(("HISTFILE" . "$HOME/.zsh/histfile")
|
||||||
("HISTSIZE" . "1000")
|
("HISTSIZE" . "1000")
|
||||||
("SAVEHIST" . "1000")))
|
("SAVEHIST" . "1000")
|
||||||
|
("WORDCHARS" . "")))
|
||||||
(zshrc
|
(zshrc
|
||||||
(list
|
(list
|
||||||
(mixed-text-file
|
(mixed-text-file
|
||||||
|
@ -112,6 +113,10 @@
|
||||||
"bindkey -e '^[w' x-copy-region-as-kill\n"
|
"bindkey -e '^[w' x-copy-region-as-kill\n"
|
||||||
"bindkey -e '^W' x-kill-region\n"
|
"bindkey -e '^W' x-kill-region\n"
|
||||||
"bindkey -e '^Y' x-yank\n"
|
"bindkey -e '^Y' x-yank\n"
|
||||||
|
"bindkey -e '^[f' emacs-forward-word\n"
|
||||||
|
"bindkey -e '^[F' emacs-forward-word\n"
|
||||||
|
"bindkey -e '^[b' emacs-backward-word\n"
|
||||||
|
"bindkey -e '^[B' emacs-backward-word\n"
|
||||||
"autoload -Uz compinit\n"
|
"autoload -Uz compinit\n"
|
||||||
"compinit\n"
|
"compinit\n"
|
||||||
"function horizontal-rule() {\n"
|
"function horizontal-rule() {\n"
|
||||||
|
@ -150,7 +155,8 @@
|
||||||
(user "slash")
|
(user "slash")
|
||||||
(port 4511)
|
(port 4511)
|
||||||
(extra-content "LocalForward 8090 localhost:8090
|
(extra-content "LocalForward 8090 localhost:8090
|
||||||
LocalForward 2812 localhost:2812"))
|
LocalForward 2812 localhost:2812
|
||||||
|
LocalForward 19999 localhost:19999"))
|
||||||
(openssh-host
|
(openssh-host
|
||||||
(name "rincewind")
|
(name "rincewind")
|
||||||
(host-name "192.168.1.135")
|
(host-name "192.168.1.135")
|
||||||
|
|
|
@ -6,8 +6,6 @@
|
||||||
home-msmtp-configuration
|
home-msmtp-configuration
|
||||||
msmtp-configuration
|
msmtp-configuration
|
||||||
msmtp-account))
|
msmtp-account))
|
||||||
#:use-module ((gnu home services guix)
|
|
||||||
#:select (home-channels-service-type))
|
|
||||||
#:use-module ((gnu home services gnupg)
|
#:use-module ((gnu home services gnupg)
|
||||||
#:select (home-gpg-agent-service-type
|
#:select (home-gpg-agent-service-type
|
||||||
home-gpg-agent-configuration))
|
home-gpg-agent-configuration))
|
||||||
|
@ -33,6 +31,8 @@
|
||||||
#:select (gforth))
|
#:select (gforth))
|
||||||
#:use-module ((gnu packages gnome)
|
#:use-module ((gnu packages gnome)
|
||||||
#:select (hicolor-icon-theme))
|
#:select (hicolor-icon-theme))
|
||||||
|
#:use-module ((gnu packages librewolf)
|
||||||
|
#:select (librewolf))
|
||||||
#:use-module ((gnu packages linux)
|
#:use-module ((gnu packages linux)
|
||||||
#:select (fakeroot))
|
#:select (fakeroot))
|
||||||
#:use-module ((gnu packages mail)
|
#:use-module ((gnu packages mail)
|
||||||
|
@ -48,7 +48,8 @@
|
||||||
tree-sitter-json
|
tree-sitter-json
|
||||||
tree-sitter-css))
|
tree-sitter-css))
|
||||||
#:use-module ((gnu packages)
|
#:use-module ((gnu packages)
|
||||||
#:select (specification->package+output))
|
#:select (specification->package+output
|
||||||
|
specification->package))
|
||||||
#:use-module ((gnu services)
|
#:use-module ((gnu services)
|
||||||
#:select (service
|
#:select (service
|
||||||
simple-service))
|
simple-service))
|
||||||
|
@ -73,7 +74,8 @@
|
||||||
home-guile-service
|
home-guile-service
|
||||||
home-xmodmap-service
|
home-xmodmap-service
|
||||||
home-openssh-service
|
home-openssh-service
|
||||||
home-kitty-service))
|
home-kitty-service
|
||||||
|
home-channels-service))
|
||||||
#:use-module ((oni home services autokey)
|
#:use-module ((oni home services autokey)
|
||||||
#:select (home-autokey-service-type))
|
#:select (home-autokey-service-type))
|
||||||
#:use-module ((oni home services copyq)
|
#:use-module ((oni home services copyq)
|
||||||
|
@ -97,7 +99,9 @@
|
||||||
home-emacs-pinentry-service-type
|
home-emacs-pinentry-service-type
|
||||||
home-emacs-vterm-service-type
|
home-emacs-vterm-service-type
|
||||||
home-emacs-vterm-configuration
|
home-emacs-vterm-configuration
|
||||||
home-emacs-org-modern-service-type))
|
home-emacs-org-modern-service-type
|
||||||
|
home-wakatime-service-type
|
||||||
|
home-wakatime-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)
|
||||||
|
@ -200,7 +204,8 @@
|
||||||
emacs-oni-yaml
|
emacs-oni-yaml
|
||||||
emacs-oni-python
|
emacs-oni-python
|
||||||
emacs-oni-git-commit
|
emacs-oni-git-commit
|
||||||
emacs-oni-php))
|
emacs-oni-php
|
||||||
|
emacs-oni-web-mode))
|
||||||
#:use-module ((oni packages inbox-size)
|
#:use-module ((oni packages inbox-size)
|
||||||
#:select (inbox-size))
|
#:select (inbox-size))
|
||||||
#:use-module ((oni packages mpd)
|
#:use-module ((oni packages mpd)
|
||||||
|
@ -213,6 +218,9 @@
|
||||||
#:select (pick-random-wallpaper))
|
#:select (pick-random-wallpaper))
|
||||||
#:use-module ((oni packages shutdown-rofi)
|
#:use-module ((oni packages shutdown-rofi)
|
||||||
#:select (shutdown-rofi))
|
#:select (shutdown-rofi))
|
||||||
|
#:use-module ((oni packages snes-games)
|
||||||
|
#:select (snes-blackthorne
|
||||||
|
snes-blackthorne-icons))
|
||||||
#:use-module ((oni packages stumpwm)
|
#:use-module ((oni packages stumpwm)
|
||||||
#:select (stumpwm+swank))
|
#:select (stumpwm+swank))
|
||||||
#:use-module ((oni packages terminals)
|
#:use-module ((oni packages terminals)
|
||||||
|
@ -226,6 +234,11 @@
|
||||||
`((with-branch . ,(string-append (package-name package) "=master"))))
|
`((with-branch . ,(string-append (package-name package) "=master"))))
|
||||||
package))
|
package))
|
||||||
|
|
||||||
|
(define (with-source package source)
|
||||||
|
((options->transformation
|
||||||
|
`((with-source . ,(format #f "~a=~a" (package-name package) source))))
|
||||||
|
package))
|
||||||
|
|
||||||
(define rincewind-picom-service
|
(define rincewind-picom-service
|
||||||
(service home-picom-service-type
|
(service home-picom-service-type
|
||||||
(home-picom-configuration
|
(home-picom-configuration
|
||||||
|
@ -259,6 +272,10 @@
|
||||||
(specification->package+output "glibc-locales")
|
(specification->package+output "glibc-locales")
|
||||||
(specification->package+output "font-fantasque-sans")
|
(specification->package+output "font-fantasque-sans")
|
||||||
(specification->package+output "font-comic-neue")
|
(specification->package+output "font-comic-neue")
|
||||||
|
(specification->package+output "font-dosis")
|
||||||
|
(specification->package "zathura")
|
||||||
|
(specification->package "zathura-ps")
|
||||||
|
(specification->package "zathura-pdf-mupdf")
|
||||||
pick-random-wallpaper
|
pick-random-wallpaper
|
||||||
notmuch-collect-tasks
|
notmuch-collect-tasks
|
||||||
notmuch-tag-mailinglists
|
notmuch-tag-mailinglists
|
||||||
|
@ -329,6 +346,7 @@
|
||||||
emacs-nginx-mode
|
emacs-nginx-mode
|
||||||
emacs-oni-git-commit
|
emacs-oni-git-commit
|
||||||
emacs-oni-php
|
emacs-oni-php
|
||||||
|
emacs-oni-web-mode
|
||||||
|
|
||||||
tree-sitter-bash
|
tree-sitter-bash
|
||||||
tree-sitter-scheme
|
tree-sitter-scheme
|
||||||
|
@ -344,7 +362,12 @@
|
||||||
;; Might be needed for cetrificates
|
;; Might be needed for cetrificates
|
||||||
nss-certs
|
nss-certs
|
||||||
|
|
||||||
tym))
|
tym
|
||||||
|
|
||||||
|
(with-source snes-blackthorne-icons
|
||||||
|
(format #f "~a/pictures/icons/Blackthorne/blackthorne_icons.tar.gz" (getenv "HOME")))
|
||||||
|
(with-source snes-blackthorne
|
||||||
|
(format #f "~a/downloads/Blackthorne.7z" (getenv "HOME")))))
|
||||||
|
|
||||||
(services
|
(services
|
||||||
(list
|
(list
|
||||||
|
@ -372,7 +395,7 @@
|
||||||
;; (home-polybar-configuration
|
;; (home-polybar-configuration
|
||||||
;; (bar "rincewind")))
|
;; (bar "rincewind")))
|
||||||
|
|
||||||
;; (service home-kdeconnect-service-type)
|
(service home-kdeconnect-service-type)
|
||||||
(service home-syncthing-service-type)
|
(service home-syncthing-service-type)
|
||||||
|
|
||||||
(service home-emacs-service-type
|
(service home-emacs-service-type
|
||||||
|
@ -416,6 +439,11 @@
|
||||||
(home-emacs-vterm-configuration
|
(home-emacs-vterm-configuration
|
||||||
(buffer-name-string "*vterm* %s")))
|
(buffer-name-string "*vterm* %s")))
|
||||||
(service home-emacs-org-modern-service-type)
|
(service home-emacs-org-modern-service-type)
|
||||||
|
(service home-wakatime-service-type
|
||||||
|
(home-wakatime-configuration
|
||||||
|
(api-url "https://waka.ryuslash.org/api")
|
||||||
|
(exclude '("COMMIT_EDITMSG$"
|
||||||
|
"TAG_EDITMSG$"))))
|
||||||
|
|
||||||
(service home-flameshot-service-type)
|
(service home-flameshot-service-type)
|
||||||
|
|
||||||
|
@ -509,18 +537,30 @@
|
||||||
|
|
||||||
(service home-icecat-service-type
|
(service home-icecat-service-type
|
||||||
(home-icecat-configuration
|
(home-icecat-configuration
|
||||||
|
(package librewolf)
|
||||||
(settings
|
(settings
|
||||||
'(("extensions.pocket.enabled" #f)
|
'(("extensions.pocket.enabled" #f)
|
||||||
("view_source.editor.args" "--no-wait")
|
("view_source.editor.args" "--no-wait")
|
||||||
("view_source.editor.external" #t)
|
("view_source.editor.external" #t)
|
||||||
("view_source.editor.path" "/home/chelys/.guix-home/profile/bin/emacsclient")
|
("view_source.editor.path" "/home/chelys/.guix-home/profile/bin/emacsclient")
|
||||||
|
;; Visual modifications. Don't let websites pick the colors or
|
||||||
|
;; the fonts, use mine instead.
|
||||||
|
("browser.display.document_color_use" 2)
|
||||||
|
("browser.display.use_document_fonts" 0)
|
||||||
("browser.display.background_color" "#222424")
|
("browser.display.background_color" "#222424")
|
||||||
("browser.display.foreground_color" "#bfbfbf")
|
("browser.display.foreground_color" "#bfbfbf")
|
||||||
("browser.display.document_color_use" 2)
|
|
||||||
("browser.anchor_color" "#ff9800")
|
("browser.anchor_color" "#ff9800")
|
||||||
("browser.visited_color" "#0babab")
|
("browser.visited_color" "#0babab")
|
||||||
("browser.display.use_document_fonts" 0)
|
|
||||||
("browser.newtabpage.activity-stream.showWeather" #f)
|
("browser.newtabpage.activity-stream.showWeather" #f)
|
||||||
|
("font.default.x-western" "sans-serif")
|
||||||
|
("font.minimum-size.x-western" 18)
|
||||||
|
("font.name.monospace.x-western" "Fantasque Sans Mono")
|
||||||
|
("font.name.sans-serif.x-western" "Dosis")
|
||||||
|
;; Sadly, with this option on it won't accept my color
|
||||||
|
;; modifications, so I turn it off, even though I would prefer
|
||||||
|
;; being able to leave everything (except the forced light
|
||||||
|
;; theme) on.
|
||||||
|
("privacy.resistFingerprinting" #f)
|
||||||
;; Change the accelerator key (modifier key for most keyboard
|
;; Change the accelerator key (modifier key for most keyboard
|
||||||
;; shortcuts) to the super key (from control).
|
;; shortcuts) to the super key (from control).
|
||||||
("ui.key.accelKey" 91))))))))
|
("ui.key.accelKey" 91))))))))
|
||||||
|
|
|
@ -39,6 +39,12 @@
|
||||||
#:select (emacs-yasnippet-capf
|
#:select (emacs-yasnippet-capf
|
||||||
emacs-golden-ratio
|
emacs-golden-ratio
|
||||||
emacs-ace-link-notmuch))
|
emacs-ace-link-notmuch))
|
||||||
|
#:use-module ((rosenthal packages binaries)
|
||||||
|
#:select (wakatime-cli-bin))
|
||||||
|
#:use-module ((rosenthal packages emacs-xyz)
|
||||||
|
#:select (emacs-wakatime-mode))
|
||||||
|
#:use-module ((srfi srfi-1)
|
||||||
|
#:select (every))
|
||||||
|
|
||||||
#:export (home-emacs-service-type
|
#:export (home-emacs-service-type
|
||||||
home-emacs-configuration
|
home-emacs-configuration
|
||||||
|
@ -71,10 +77,20 @@
|
||||||
home-emacs-vterm-configuration
|
home-emacs-vterm-configuration
|
||||||
|
|
||||||
home-emacs-org-modern-service-type
|
home-emacs-org-modern-service-type
|
||||||
home-emacs-org-modern-configuration))
|
home-emacs-org-modern-configuration
|
||||||
|
|
||||||
|
home-wakatime-service-type
|
||||||
|
home-wakatime-configuration))
|
||||||
|
|
||||||
(define-maybe string)
|
(define-maybe string)
|
||||||
|
|
||||||
|
(define (list-of-strings? obj)
|
||||||
|
(and (list? obj)
|
||||||
|
(every string? obj)))
|
||||||
|
|
||||||
|
(define (serialize-list-of-strings field value)
|
||||||
|
(string-append " " (string-join value "\n ")))
|
||||||
|
|
||||||
;;; Emacs
|
;;; Emacs
|
||||||
|
|
||||||
(define-configuration/no-serialization home-emacs-extension
|
(define-configuration/no-serialization home-emacs-extension
|
||||||
|
@ -393,6 +409,7 @@
|
||||||
"(golden-ratio-mode)\n"
|
"(golden-ratio-mode)\n"
|
||||||
"(with-eval-after-load 'ace-window\n"
|
"(with-eval-after-load 'ace-window\n"
|
||||||
" (advice-add 'ace-window :after #'golden-ratio))\n"
|
" (advice-add 'ace-window :after #'golden-ratio))\n"
|
||||||
|
"(add-to-list 'golden-ratio-exclude-modes 'calculator-mode)\n"
|
||||||
";;;;; golden-ratio-config ends here.\n"))
|
";;;;; golden-ratio-config ends here.\n"))
|
||||||
(home-emacs-golden-ratio-configuration-configurations config)))))
|
(home-emacs-golden-ratio-configuration-configurations config)))))
|
||||||
|
|
||||||
|
@ -581,3 +598,70 @@
|
||||||
(compose identity)
|
(compose identity)
|
||||||
(default-value (home-emacs-org-modern-configuration))
|
(default-value (home-emacs-org-modern-configuration))
|
||||||
(description "Install and configure emacs-org-modern.")))
|
(description "Install and configure emacs-org-modern.")))
|
||||||
|
|
||||||
|
;;; Wakatime
|
||||||
|
|
||||||
|
(define-configuration/no-serialization home-wakatime-configuration
|
||||||
|
(package
|
||||||
|
(package wakatime-cli-bin)
|
||||||
|
"Package to use for the wakatime-cli program")
|
||||||
|
(emacs-package
|
||||||
|
(package emacs-wakatime-mode)
|
||||||
|
"Package to use for setting emacs-wakatime-mode")
|
||||||
|
(api-url
|
||||||
|
maybe-string
|
||||||
|
"URL where the API lives")
|
||||||
|
;; (api-key
|
||||||
|
;; maybe-string
|
||||||
|
;; "API key for connecting to wakatime")
|
||||||
|
(debug
|
||||||
|
(boolean #f)
|
||||||
|
"Run in debug mode?")
|
||||||
|
(exclude
|
||||||
|
(list-of-strings '())
|
||||||
|
"Filename patterns to exclude"))
|
||||||
|
|
||||||
|
(define (add-wakatime-emacs-configuration config)
|
||||||
|
(home-emacs-extension
|
||||||
|
(configurations
|
||||||
|
(append
|
||||||
|
(list (mixed-text-file "wakatime-config"
|
||||||
|
";;;;; wakatime-config starts here.\n"
|
||||||
|
;; (if (maybe-value-set? (home-wakatime-configuration-api-key config))
|
||||||
|
;; (format #f "(setq wakatime-api-key ~s)~%" (home-wakatime-configuration-api-key config))
|
||||||
|
;; "")
|
||||||
|
"(setq wakatime-cli-path \"" (home-wakatime-configuration-package config) "/bin/wakatime-cli\")\n"
|
||||||
|
"(global-wakatime-mode)\n"
|
||||||
|
";;;;; wakatime-config ends here.\n"))))))
|
||||||
|
|
||||||
|
(define (add-wakatime-configuration-file config)
|
||||||
|
`((".wakatime.cfg"
|
||||||
|
,(mixed-text-file
|
||||||
|
"wakatime.cfg"
|
||||||
|
"[settings]\n"
|
||||||
|
"api_url = " (home-wakatime-configuration-api-url config) "\n"
|
||||||
|
"api_key_vault_cmd = secret-tool lookup service wakatime host " (home-wakatime-configuration-api-url config) "\n"
|
||||||
|
"debug = " (if (home-wakatime-configuration-debug config) "true" "false") "\n"
|
||||||
|
"exclude =\n"
|
||||||
|
(serialize-list-of-strings 'exclude (home-wakatime-configuration-exclude config))))))
|
||||||
|
|
||||||
|
(define (add-wakatime-packages config)
|
||||||
|
(list (home-wakatime-configuration-package config)
|
||||||
|
(home-wakatime-configuration-emacs-package config)))
|
||||||
|
|
||||||
|
(define home-wakatime-service-type
|
||||||
|
(service-type
|
||||||
|
(name 'home-wakatime)
|
||||||
|
(extensions
|
||||||
|
(list (service-extension
|
||||||
|
home-emacs-service-type
|
||||||
|
add-wakatime-emacs-configuration)
|
||||||
|
(service-extension
|
||||||
|
home-profile-service-type
|
||||||
|
add-wakatime-packages)
|
||||||
|
(service-extension
|
||||||
|
home-files-service-type
|
||||||
|
add-wakatime-configuration-file)))
|
||||||
|
(compose identity)
|
||||||
|
(default-value (home-wakatime-configuration))
|
||||||
|
(description "Install and configure wakatime.")))
|
||||||
|
|
|
@ -12,7 +12,8 @@
|
||||||
home-profile-service-type
|
home-profile-service-type
|
||||||
home-files-service-type))
|
home-files-service-type))
|
||||||
#:use-module ((guix packages)
|
#:use-module ((guix packages)
|
||||||
#:select (package?))
|
#:select (package?
|
||||||
|
package-name))
|
||||||
#:use-module ((guix gexp)
|
#:use-module ((guix gexp)
|
||||||
#:select (gexp
|
#:select (gexp
|
||||||
mixed-text-file))
|
mixed-text-file))
|
||||||
|
@ -49,7 +50,8 @@
|
||||||
(list (home-icecat-configuration-package config)))
|
(list (home-icecat-configuration-package config)))
|
||||||
|
|
||||||
(define (home-icecat-configuration-files config)
|
(define (home-icecat-configuration-files config)
|
||||||
`((".mozilla/icecat/profiles.ini"
|
`((;; ,(string-append ".mozilla/" (package-name (home-icecat-configuration-package config)) "/profiles.ini")
|
||||||
|
".librewolf/profiles.ini"
|
||||||
,(mixed-text-file
|
,(mixed-text-file
|
||||||
"profiles.ini"
|
"profiles.ini"
|
||||||
"[Install4F96D1932A9F858E]\n"
|
"[Install4F96D1932A9F858E]\n"
|
||||||
|
@ -65,7 +67,8 @@
|
||||||
"[General]\n"
|
"[General]\n"
|
||||||
"StartWithLastProfile=1\n"
|
"StartWithLastProfile=1\n"
|
||||||
"Version=2\n"))
|
"Version=2\n"))
|
||||||
(".mozilla/icecat/default/user.js"
|
(;; ,(string-append ".mozilla/" (package-name (home-icecat-configuration-package config)) "/default/user.js")
|
||||||
|
".librewolf/default/user.js"
|
||||||
,(mixed-text-file
|
,(mixed-text-file
|
||||||
"user.js"
|
"user.js"
|
||||||
(serialize-alist config (home-icecat-configuration-settings config))))))
|
(serialize-alist config (home-icecat-configuration-settings config))))))
|
||||||
|
|
|
@ -20,10 +20,20 @@
|
||||||
|
|
||||||
(define (home-kdeconnect-shepherd-service config)
|
(define (home-kdeconnect-shepherd-service config)
|
||||||
(list
|
(list
|
||||||
|
(shepherd-service
|
||||||
|
(documentation "Start kdeconnectd")
|
||||||
|
(provision '(kdeconnectd))
|
||||||
|
(auto-start? #t)
|
||||||
|
(start
|
||||||
|
#~(make-forkexec-constructor
|
||||||
|
(list #$(file-append (home-kdeconnect-configuration-package config) "/bin/kdeconnectd"))
|
||||||
|
#:log-file (format #f "~a/.local/var/log/kdeconnectd.log" (getenv "HOME"))))
|
||||||
|
(stop #~(make-kill-destructor)))
|
||||||
(shepherd-service
|
(shepherd-service
|
||||||
(documentation "Start kdeconnect")
|
(documentation "Start kdeconnect")
|
||||||
(provision '(kdeconnect))
|
(provision '(kdeconnect))
|
||||||
(requirement '(statusbar))
|
(requirement '(kdeconnectd))
|
||||||
|
;; (requirement '(statusbar))
|
||||||
(auto-start? #t)
|
(auto-start? #t)
|
||||||
(start
|
(start
|
||||||
#~(make-forkexec-constructor
|
#~(make-forkexec-constructor
|
||||||
|
|
|
@ -19,6 +19,9 @@
|
||||||
home-profile-service-type
|
home-profile-service-type
|
||||||
home-xdg-configuration-files-service-type
|
home-xdg-configuration-files-service-type
|
||||||
home-run-on-change-service-type))
|
home-run-on-change-service-type))
|
||||||
|
#:use-module ((gnu home services shepherd)
|
||||||
|
#:select (home-shepherd-service-type
|
||||||
|
shepherd-service))
|
||||||
#:use-module ((guix gexp)
|
#:use-module ((guix gexp)
|
||||||
#:select (local-file
|
#:select (local-file
|
||||||
gexp
|
gexp
|
||||||
|
@ -37,6 +40,9 @@
|
||||||
home-stumpwm-stumptray-service-type
|
home-stumpwm-stumptray-service-type
|
||||||
home-stumpwm-stumptray-configuration))
|
home-stumpwm-stumptray-configuration))
|
||||||
|
|
||||||
|
(define (serialize-integer field value)
|
||||||
|
"")
|
||||||
|
|
||||||
(define-configuration/no-serialization home-stumpwm-extension
|
(define-configuration/no-serialization home-stumpwm-extension
|
||||||
(configurations
|
(configurations
|
||||||
(text-config '())
|
(text-config '())
|
||||||
|
@ -49,6 +55,9 @@
|
||||||
(configurations
|
(configurations
|
||||||
(text-config '())
|
(text-config '())
|
||||||
"The configuration to apply.")
|
"The configuration to apply.")
|
||||||
|
(startup-delay
|
||||||
|
(integer 10)
|
||||||
|
"The number of seconds to wait for stumpwm to start up.")
|
||||||
(stumpish-package
|
(stumpish-package
|
||||||
(package stumpish)
|
(package stumpish)
|
||||||
"Package to use for setting Stumpish"))
|
"Package to use for setting Stumpish"))
|
||||||
|
@ -75,6 +84,36 @@
|
||||||
`(("files/.config/stumpwm/config"
|
`(("files/.config/stumpwm/config"
|
||||||
,#~(system* #$(file-append stumpish "/bin/stumpish") "reload"))))
|
,#~(system* #$(file-append stumpish "/bin/stumpish") "reload"))))
|
||||||
|
|
||||||
|
;; (define (stumpwm-mode-line-service config)
|
||||||
|
;; (list (shepherd-service
|
||||||
|
;; (documentation "Try and find out if the stumpwm mode line is enabled.")
|
||||||
|
;; (provision '(stumpwm-mode-line statusbar))
|
||||||
|
;; (modules '((ice-9 textual-ports)
|
||||||
|
;; (srfi srfi-1)))
|
||||||
|
;; (start
|
||||||
|
;; #~(lambda ()
|
||||||
|
;; (let loop ((attempts #$(home-stumpwm-configuration-startup-delay config)))
|
||||||
|
;; (let* ((input+output (pipe))
|
||||||
|
;; ;; Use the timeout command here to stop it.
|
||||||
|
;; (pid (spawn "timeout" '("timeout" "1" "stumpish" "eval" "(print (let ((ml (stumpwm::head-mode-line (current-head)))) (and ml (not (eq (stumpwm::mode-line-mode ml) :hidden)))))")
|
||||||
|
;; #:output (cdr input+output))))
|
||||||
|
;; (let ((result (string= "T" (string-trim-right (get-string-all (car input+output))))))
|
||||||
|
;; (close-port (car input+output))
|
||||||
|
;; (close-port (cdr input+output))
|
||||||
|
;; (waitpid pid)
|
||||||
|
;; (if result
|
||||||
|
;; result
|
||||||
|
;; (if (zero? attempts)
|
||||||
|
;; (begin
|
||||||
|
;; (format (current-error-port)
|
||||||
|
;; "Stumpwm mode line did not show up; giving up.\n")
|
||||||
|
;; #f)
|
||||||
|
;; (begin
|
||||||
|
;; (sleep 1)
|
||||||
|
;; (loop (- attemps 1))))))))))
|
||||||
|
;; (stop #~(lambda (_) #f))
|
||||||
|
;; (respawn? #f))))
|
||||||
|
|
||||||
(define home-stumpwm-service-type
|
(define home-stumpwm-service-type
|
||||||
(service-type
|
(service-type
|
||||||
(name 'home-stumpwm)
|
(name 'home-stumpwm)
|
||||||
|
@ -87,7 +126,11 @@
|
||||||
home-stumpwm-config-files)
|
home-stumpwm-config-files)
|
||||||
(service-extension
|
(service-extension
|
||||||
home-run-on-change-service-type
|
home-run-on-change-service-type
|
||||||
reload-stumpwm-config-gexp)))
|
reload-stumpwm-config-gexp)
|
||||||
|
;; (service-extension
|
||||||
|
;; home-shepherd-service-type
|
||||||
|
;; stumpwm-mode-line-service)
|
||||||
|
))
|
||||||
(compose identity)
|
(compose identity)
|
||||||
(extend home-stumpwm-extensions)
|
(extend home-stumpwm-extensions)
|
||||||
(default-value (home-stumpwm-configuration))
|
(default-value (home-stumpwm-configuration))
|
||||||
|
|
|
@ -932,3 +932,16 @@ Emacs")))
|
||||||
emacs-xcscope))
|
emacs-xcscope))
|
||||||
(synopsis "My configuration for php-mode.")
|
(synopsis "My configuration for php-mode.")
|
||||||
(description "This package provides my configuration for editing PHP files.")))
|
(description "This package provides my configuration for editing PHP files.")))
|
||||||
|
|
||||||
|
(define-public emacs-oni-web-mode
|
||||||
|
(package
|
||||||
|
(inherit emacs-oni-config)
|
||||||
|
(name "emacs-oni-web-mode")
|
||||||
|
(arguments
|
||||||
|
'(#:include '("oni-web\\.el$")))
|
||||||
|
(propagated-inputs
|
||||||
|
(list
|
||||||
|
emacs-web-mode
|
||||||
|
emacs-oni-flycheck))
|
||||||
|
(synopsis "My configuration for web-mode.")
|
||||||
|
(description "This package provides my configuration for editing Web template files.")))
|
||||||
|
|
Loading…
Reference in a new issue