Small emacs service

This commit is contained in:
Aleksandr Lebedev 2025-11-10 00:27:20 +01:00
parent 4db81bbde7
commit 54ff0cc3ae
5 changed files with 1141 additions and 24 deletions

View file

@ -274,7 +274,7 @@ layout {
spawn-sh-at-startup "emacs --daemon"
// To run a shell command (with variables, pipes, etc.), use spawn-sh-at-startup:
spawn-sh-at-startup "dms run"
spawn-sh-at-startup "qs -c dms"
spawn-sh-at-startup "wl-paste --watch cliphist store &"
spawn-sh-at-startup "nextcloud --background"
@ -382,38 +382,38 @@ binds {
// Use spawn-sh to run a shell command. Do this if you need pipes, multiple commands, etc.
Mod+Space hotkey-overlay-title="Application Launcher" {
spawn "dms" "ipc" "call" "spotlight" "toggle";
spawn-sh "qs -c dms ipc call spotlight toggle";
}
Mod+V hotkey-overlay-title="Clipboard Manager" {
spawn "dms" "ipc" "call" "clipboard" "toggle";
spawn-sh "qs -c dms ipc call clipboard toggle";
}
Mod+M hotkey-overlay-title="Task Manager" {
spawn "dms" "ipc" "call" "processlist" "toggle";
spawn-sh "qs -c dms ipc call processlist toggle";
}
Super+L hotkey-overlay-title="Lock Screen" {
spawn "dms" "ipc" "call" "lock" "lock";
spawn-sh "qs -c dms ipc call lock lock";
}
Mod+Y hotkey-overlay-title="Browse Wallpapers" {
spawn "dms" "ipc" "call" "dankdash" "wallpaper";
spawn-sh "qs -c dms ipc call dankdash wallpaper";
}
XF86AudioRaiseVolume allow-when-locked=true {
spawn "dms" "ipc" "call" "audio" "increment" "3";
spawn-sh "qs -c dms ipc call audio increment 3";
}
XF86AudioLowerVolume allow-when-locked=true {
spawn "dms" "ipc" "call" "audio" "decrement" "3";
spawn-sh "qs -c dms ipc call audio decrement 3";
}
XF86AudioMute allow-when-locked=true {
spawn "dms" "ipc" "call" "audio" "mute";
spawn-sh "qs -c dms ipc call audio mute";
}
XF86AudioMicMute allow-when-locked=true {
spawn "dms" "ipc" "call" "audio" "micmute";
spawn-sh "qs -c dms ipc call audio micmute";
}
XF86MonBrightnessUp allow-when-locked=true {
spawn "dms" "ipc" "call" "brightness" "increment" "5" "";
spawn-sh "qs -c dms ipc call brightness increment 5 ''";
}
// You can override the default device for e.g. keyboards by adding the device name to the last param
XF86MonBrightnessDown allow-when-locked=true {
spawn "dms" "ipc" "call" "brightness" "decrement" "5" "";
spawn-sh "qs -c dms ipc call brightness decrement 5 ''";
}
// Night mode toggle
Mod+Shift+N allow-when-locked=true {

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,10 @@
;;; -*- lexical-binding: t; -*-
(require 'package)
;;https://github.com/wbolster/emacs-direnv/issues/85
(setenv "PATH" (mapconcat 'identity exec-path ":")) ;;fixes direnv losing nix pkgs
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
(package-initialize)
(org-babel-load-file
(expand-file-name
"config.org"
user-emacs-directory))

View file

@ -31,13 +31,13 @@
(list `(".emacs.d/config.el"
,(mixed-text-file "config.el"
";; Emacs Config from Guix Home\n"
(call-with-input-file (home-emacs-configuration-config-file config) get-string-all)))
"(load-file \"" (home-emacs-configuration-config-file config) "\")\n"))
`(".emacs.d/early-config.el"
,(mixed-text-file "early-config.el"
";; Emacs Early Config from Guix Home\n"
(string-append "(make-directory \"" package-user-dir "\" t)\n")
(string-append "(setq package-user-dir \"" package-user-dir "\")\n")
(home-emacs-configuration-early-config-file config)))))
"(load-file \"" (home-emacs-configuration-early-config-file config) "\")\n"))))
(define (home-emacs-profile-service config)
(list (home-emacs-configuration-emacs config)))

View file

@ -22,6 +22,7 @@
#:use-module (gnu packages admin)
#:use-module (gnu packages fonts)
#:use-module (gnu packages games)
#:use-module (gnu packages xdisorg)
#:use-module (gnu services)
#:use-module (guix gexp)
#:use-module (gnu home services shells)
@ -44,8 +45,6 @@
librewolf
icecat
nheko
supertux
supertuxkart
;birdtray
nextcloud-client
nautilus
@ -54,6 +53,7 @@
quickshell
cava
wl-clipboard
cliphist
brightnessctl
qtmultimedia
`(,glib "bin")
@ -83,15 +83,15 @@
(home-dotfiles-configuration
(directories '("../../files"))))
(service home-secretsd-service-type)
; (service home-emacs-service-type
; (home-emacs-configuration
; (emacs emacs-pgtk)
; (config-file
; "../../../.emacs.d/config.el")
; (early-config-file
; "../../../.emacs.d/init.el")
(service home-emacs-service-type
(home-emacs-configuration
(emacs emacs-pgtk)
(config-file
(local-file "./emacs/config.el"))
(early-config-file
(local-file "./emacs/init.el"))
; (emacs-packages (list
; emacs-guix))
;))
))
)
%base-home-services)))