(define-module (oni home config data) #:use-module (gnu home services desktop) #:use-module (gnu home services) #:use-module (gnu home) #:use-module (gnu packages admin) #:use-module ((gnu packages emacs) #:select (emacs)) #:use-module ((gnu packages emacs-xyz) #:select (emacs-guix emacs-org-contacts)) #:use-module ((gnu packages fonts) #:select (font-dosis)) #:use-module ((gnu packages forth) #:select (gforth)) #:use-module (gnu packages shellutils) #:use-module (gnu packages wm) #:use-module (gnu packages xdisorg) #:use-module (gnu packages) #:use-module (gnu services) #:use-module (guix gexp) #:use-module (oni home config common) #:use-module ((oni home services admin) #:select (home-cbatticon-service-type)) #:use-module (oni home services cmst) #:use-module (oni home services dunst) #:use-module ((oni home services emacs) #:select (home-emacs-service-type home-emacs-configuration home-emacs-helpful-service-type home-emacs-helpful-configuration home-emacs-yasnippet-capf-service-type home-emacs-eros-service-type home-emacs-ace-link-service-type home-emacs-ace-link-configuration home-emacs-golden-ratio-service-type home-emacs-pinentry-service-type home-emacs-org-caldav-service-type)) #:use-module (oni home services environment) ;; #:use-module (oni home services herbstluftwm) #:use-module (oni home services kdeconnect) #:use-module ((oni home services picom) #:select (home-picom-service-type home-picom-configuration)) #:use-module (oni home services polybar) #:use-module (oni home services rofi) #:use-module (oni home services sawfish) #:use-module (oni home services syncthing) #:use-module (oni home services unclutter) ;; #:use-module (oni home services xbindkeys) #:use-module ((oni home services xdisorg) #:select (home-xss-lock-service-type)) #:use-module (oni home services xsession) #:use-module (oni home services zsh) #:use-module ((oni packages emacs) #:select (emacs-outli emacs-syncthing-status)) #:use-module ((oni packages emacs-config) #:select (emacs-oni-org-roam emacs-oni-vterm emacs-oni-elisp emacs-oni-eshell emacs-oni-core emacs-oni-compilation emacs-oni-common-lisp emacs-oni-gui emacs-oni-magit emacs-oni-project emacs-oni-bookmark emacs-oni-dired emacs-oni-browse-url emacs-oni-c emacs-oni-circe emacs-oni-conf emacs-oni-css emacs-oni-diff-hl emacs-oni-ediff emacs-oni-eww emacs-oni-grep emacs-oni-highlight-indent-guides emacs-oni-html 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 emacs-oni-git-commit emacs-oni-python emacs-oni-yaml)) ;; #:use-module (oni packages hlwm-run-or-raise) #:use-module (oni packages pick-random-wallpaper) #:use-module (oni packages sawfish) #:use-module (oni packages shutdown-rofi) #:use-module (oni packages zsh)) (define data-picom-service (service home-picom-service-type (home-picom-configuration (detect-transient #t) (shadow #t) (wintypes '((dnd (shadow . #f)) (dock (shadow . #f)))) (shadow-radius 10) (shadow-exclude '("name = 'mowedline'" "class_g = 'trayer'" "bounding_shaped"))))) (home-environment (packages (list (specification->package+output "glibc-locales") (specification->package+output "font-fantasque-sans") (specification->package+output "font-comic-neue") font-dosis ;; hlwm-run-or-raise pick-random-wallpaper shutdown-rofi emacs-sawfish emacs-org-contacts emacs-syncthing-status emacs-outli emacs-guix (emacs-oni-org-roam emacs) emacs-oni-vterm emacs-oni-elisp emacs-oni-core emacs-oni-eshell emacs-oni-compilation emacs-oni-common-lisp emacs-oni-gui emacs-oni-magit emacs-oni-project emacs-oni-bookmark emacs-oni-dired emacs-oni-browse-url emacs-oni-c emacs-oni-conf emacs-oni-css emacs-oni-diff-hl emacs-oni-ediff emacs-oni-embrace emacs-oni-eww emacs-oni-grep emacs-oni-highlight-indent-guides emacs-oni-html 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-git-commit emacs-oni-python emacs-oni-yaml gforth)) (services (list home-channels-service home-environment-service home-rofi-default-service home-dunst-default-service home-redshift-service ;; home-xbindkeys-service home-zsh-service home-guile-service home-xmodmap-service home-openssh-service home-kitty-service data-picom-service ;; This has to be the first extension because it needs to be added to the ;; configuration last. (service home-zsh-syntax-highlighting-service-type) (service home-zsh-autosuggestions-service-type) (service home-zsh-contextual-abbrevs-service-type) (service home-xsession-service-type (home-xsession-configuration (configuration (list (mixed-text-file "xsession" "xrdb -cpp m4 -merge \"${HOME}/.config/X11/Xresources\" -I\"${HOME}/.config/X11/Xresources.d\"\n" "xrandr --setprovideroutputsource modesetting NVIDIA-0\n" "xrandr --auto\n" "xrandr --dpi 96\n"))))) ;; (service home-herbstluftwm-service-type ;; (home-herbstluftwm-configuration ;; (tags '(dev web game)) ;; (key-bindings ;; '(("s-S-q" . "quit") ;; ("s-S-e" . "reload"))) ;; (mouse-bindings ;; '(("s-Button1" . "move") ;; ("s-Button2" . "zoom") ;; ("s-Button3" . "resize"))) ;; (settings ;; '((default_frame_layout . 2) ;; (frame_border_active_color . "#3d3d3d") ;; (frame_border_normal_color . "#222222") ;; (frame_bg_normal_color . "#111111") ;; (frame_bg_active_color . "#263f1f") ;; (frame_border_width . 0) ;; (window_border_width . 2) ;; (window_border_inner_width . 0) ;; (window_border_normal_color . "#222222") ;; (window_border_active_color . "#1f3f3f") ;; (window_border_inner_color . "#111111") ;; (always_show_frame . 0) ;; (frame_gap . 30) ;; (window_gap . 30) ;; (frame_padding . -30) ;; (frame_bg_transparent . 1) ;; (smart_window_surroundings . 0) ;; (smart_frame_surroundings . 0) ;; (mouse_recenter_gap . 0) ;; (swap_monitors_to_get_tag . 0) ;; (update_dragged_clients . 1) ;; (tree_style . "╾│ ├└╼─┐"))) ;; (attributes ;; '(((theme tiling reset) . 1) ;; ((theme floating reset) . 1))) ;; (rules ;; '(("focus=on") ;; ("class=Emacs" "tag=dev" "index=01" "switchtag=on" "hook=emacs") ;; ("class~'URxvt|kitty'" "tag=dev" "index=1" "switchtag=on" "hook=urxvt") ;; ("class~'Conkeror|[Ff]irefox|Chromium'" "tag=web" "index=0" "switchtag=on") ;; ("class=Pinentry" "pseudotile=on") ;; ("class=Alsaplayer" "pseudotile=on") ;; ("class=Gcr-prompter" "pseudotile=on") ;; ("class=Steam" "title='Steam Login'" "pseudotile=on") ;; ("class=Steam" "title~'Steam - News .*'" "pseudotile=on") ;; ("class=" "title=Steam" "pseudotile=on") ;; ("class=xfreerdp" "floating=on" "tag=work" "index=0" "switchtag=on") ;; ("windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)'" "pseudotile=on") ;; ("windowtype='_NET_WM_WINDOW_TYPE_DIALOG'" "focus=on") ;; ("windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)'" "manage=off") ;; ("class=pinball.exe" "pseudotile=on"))) ;; (padding '(0 0 0 16 16)) ;; (layouts ;; '((web clients max:0) ;; (dev split horizontal:0.54:1 (clients max:0) (clients vertical:0)))) ;; (extra ;; (list ;; (mixed-text-file ;; "autostart" ;; "set_monitors 1920x1080+0+0\n" ;; "focus_edge left\n" ;; "keybind Mod4-apostrophe spawn dunstctl close\n" ;; "keybind Mod4-quotedbl spawn dunstctl close-all\n" ;; "keybind Mod4-Control-apostrophe spawn dunstctl history-pop\n" ;; "keybind Mod4-Mod1-apostrophe spawn dunstctl context\n" ;; "spawn pick-random-wallpaper\n"))))) (service home-sawfish-service-type) (service home-polybar-service-type (home-polybar-configuration (bar "data"))) (service home-kdeconnect-service-type) (service home-cmst-service-type) (service home-syncthing-service-type) (service home-unclutter-service-type (home-unclutter-configuration (package unclutter-xfixes) (exclude-root #t))) (service home-emacs-service-type (home-emacs-configuration (configurations (list (local-file "../services/emacs/init.el") (mixed-text-file "init.el" "(with-eval-after-load 'project (require 'oni-project))\n" "(projectile-mode)\n" "(setq custom-file \"~/.config/emacs/custom.el\")\n" "(load custom-file)\n" "(provide 'init)\n" ";;; init.el ends here\n"))))) (service home-emacs-helpful-service-type (home-emacs-helpful-configuration (configurations (list (local-file "../services/emacs/oni-helpful.el"))))) (service home-emacs-yasnippet-capf-service-type) (service home-emacs-eros-service-type) (service home-emacs-ace-link-service-type (home-emacs-ace-link-configuration (default-key "C-S-e") (goto-address-key "C-S-e") (org-mode-key "C-S-e"))) (service home-emacs-golden-ratio-service-type) (service home-emacs-pinentry-service-type) (service home-emacs-org-caldav-service-type) (service home-xss-lock-service-type) (service home-cbatticon-service-type))))