diff options
| author | 2025-12-01 00:14:46 -0800 | |
|---|---|---|
| committer | 2025-12-01 00:19:38 -0800 | |
| commit | 5b5e40d9291776bc6946aa7c10ccff37751d5206 (patch) | |
| tree | 1dadd28d711bd6c1bae31d9159d0198e0afdb251 | |
| parent | 4b78dfb521f454deb8e85829a009f4515fe6fe6d (diff) | |
| download | new-dotfiles-5b5e40d9291776bc6946aa7c10ccff37751d5206.tar.gz new-dotfiles-5b5e40d9291776bc6946aa7c10ccff37751d5206.zip | |
Move ‘foreign-distro-compatibility-packages’ to common
Also have all the configurations use it.
| -rw-r--r-- | oni/home/config/common.scm | 14 | ||||
| -rw-r--r-- | oni/home/config/data.scm | 103 | ||||
| -rw-r--r-- | oni/home/config/pop-os.scm | 451 | ||||
| -rw-r--r-- | oni/home/config/rincewind.scm | 11 |
4 files changed, 294 insertions, 285 deletions
diff --git a/oni/home/config/common.scm b/oni/home/config/common.scm index 62c74b1..093f99f 100644 --- a/oni/home/config/common.scm +++ b/oni/home/config/common.scm @@ -12,6 +12,8 @@ #:select (simple-service)) #:use-module ((gnu home services guix) #:select (home-channels-service-type)) + #:use-module ((gnu packages) + #:select (specification->package+output)) #:use-module ((guix channels) #:select (channel make-channel-introduction @@ -24,7 +26,17 @@ home-xmodmap-service home-openssh-service home-kitty-service - home-channels-service)) + home-channels-service + + foreign-distro-compatibility-packages)) + +(define foreign-distro-compatibility-packages + (map specification->package+output + '("glibc-locales" + "hicolor-icon-theme" ; Might be needed for certain icons? + "nss-certs" ; Might be needed for cetrificates + "man-db" ; Needed to see man pages from packages + ))) (define home-redshift-service (service home-redshift-service-type diff --git a/oni/home/config/data.scm b/oni/home/config/data.scm index 39598ef..8577a4f 100644 --- a/oni/home/config/data.scm +++ b/oni/home/config/data.scm @@ -115,59 +115,60 @@ "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 + (packages (append + foreign-distro-compatibility-packages + (list (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 - emacs-oni-gnus + (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 + emacs-oni-gnus - gforth)) + gforth))) (services (list diff --git a/oni/home/config/pop-os.scm b/oni/home/config/pop-os.scm index 27d1d6e..123c2b1 100644 --- a/oni/home/config/pop-os.scm +++ b/oni/home/config/pop-os.scm @@ -27,7 +27,8 @@ #:use-module ((oni home config common) #:select (home-channels-service home-zsh-service - home-kitty-service)) + home-kitty-service + foreign-distro-compatibility-packages)) #:use-module ((oni home services dunst) #:select (home-dunst-default-service)) #:use-module ((oni home services emacs) @@ -104,237 +105,239 @@ #:use-module (oni packages shutdown-rofi)) (home-environment - (packages (list (specification->package+output "glibc-locales") - (specification->package+output "font-fantasque-sans") - (specification->package+output "font-comic-neue") - (specification->package+output "font-dosis") - (specification->package+output "mandoc") - font-comfortaa - emacs-oni-core - emacs-oni-compilation - emacs-oni-common-lisp - emacs-oni-browse-url - emacs-oni-package - emacs-oni-elisp - emacs-oni-gui - emacs-oni-magit - emacs-oni-diff-hl - emacs-oni-project - emacs-oni-dired - emacs-oni-log-edit - emacs-oni-git-commit - emacs-oni-scheme - emacs-oni-tramp - emacs-oni-bookmark - (emacs-oni-org emacs) - (emacs-oni-org-roam emacs) - emacs-oni-html - emacs-oni-grep - emacs-oni-shr - emacs-oni-css - emacs-dockerfile-mode - emacs-oni-yaml - emacs-oni-web-mode - emacs-oni-php - emacs-oni-projectile - htop - ;; emacs-php-ts-mode - emacs-oni-lua - emacs-oni-sh - emacs-deft - emacs-dashboard - emacs-flycheck-phpstan - emacs-indexed - emacs-typescript-mode - emacs-oni-js - hunspell - hunspell-dict-en-ca - emacs-dired-git-info - emacs-oni-elfeed + (packages (append + foreign-distro-compatibility-packages + (list (specification->package+output "glibc-locales") + (specification->package+output "font-fantasque-sans") + (specification->package+output "font-comic-neue") + (specification->package+output "font-dosis") + (specification->package+output "mandoc") + font-comfortaa + emacs-oni-core + emacs-oni-compilation + emacs-oni-common-lisp + emacs-oni-browse-url + emacs-oni-package + emacs-oni-elisp + emacs-oni-gui + emacs-oni-magit + emacs-oni-diff-hl + emacs-oni-project + emacs-oni-dired + emacs-oni-log-edit + emacs-oni-git-commit + emacs-oni-scheme + emacs-oni-tramp + emacs-oni-bookmark + (emacs-oni-org emacs) + (emacs-oni-org-roam emacs) + emacs-oni-html + emacs-oni-grep + emacs-oni-shr + emacs-oni-css + emacs-dockerfile-mode + emacs-oni-yaml + emacs-oni-web-mode + emacs-oni-php + emacs-oni-projectile + htop + ;; emacs-php-ts-mode + emacs-oni-lua + emacs-oni-sh + emacs-deft + emacs-dashboard + emacs-flycheck-phpstan + emacs-indexed + emacs-typescript-mode + emacs-oni-js + hunspell + hunspell-dict-en-ca + emacs-dired-git-info + emacs-oni-elfeed - hlwm-run-or-raise - shutdown-rofi - playerctl - pamixer - ;; need to have a file - ;; /etc/udev/rules.d/40-monitor-hotplug.rules - ;; ACTION=="change", SUBSYSTEM=="drm", RUN+="/var/guix/profiles/per-user/tomwillemsen/guix-home/profile/bin/autorandr --batch --change --default default" - autorandr + hlwm-run-or-raise + shutdown-rofi + playerctl + pamixer + ;; need to have a file + ;; /etc/udev/rules.d/40-monitor-hotplug.rules + ;; ACTION=="change", SUBSYSTEM=="drm", RUN+="/var/guix/profiles/per-user/tomwillemsen/guix-home/profile/bin/autorandr --batch --change --default default" + autorandr - emacs-guix - emacs-rainbow-identifiers + emacs-guix + emacs-rainbow-identifiers - emacs-vundo)) - (services (list home-channels-service - home-dunst-default-service - home-environment-service - home-kitty-service - home-rofi-default-service + emacs-vundo))) + (services (list home-channels-service + home-dunst-default-service + home-environment-service + home-kitty-service + home-rofi-default-service - (service home-emacs-service-type - (home-emacs-configuration - (helpful-configuration - (home-emacs-helpful-configuration - (configurations - (list - (local-file "../services/emacs/oni-helpful.el"))))) - (yasnippet-capf - (home-emacs-yasnippet-capf-configuration)) - (envrc - (home-emacs-envrc-configuration)) - (configurations - (list - (local-file "../services/emacs/init.el") - (local-file "pop-os/emacs.el") - (mixed-text-file - "init.el" - "(with-eval-after-load 'project (require 'oni-project))\n" - "(require 'oni-gui)\n" - "(provide 'oni-gnus)\n" - "(add-to-list 'auto-mode-alist '(\"\\.vue$\" . web-mode))\n"))))) - (service home-emacs-org-journal-service-type) - (service home-wakatime-service-type - (home-wakatime-configuration - (api-url "https://waka.ryuslash.org/api") - (exclude '("^COMMIT_EDITMSG$" - "^TAG_EDITMSG$")))) - (service home-emacs-vterm-service-type - (home-emacs-vterm-configuration - (buffer-name-string "*vterm* %s"))) + (service home-emacs-service-type + (home-emacs-configuration + (helpful-configuration + (home-emacs-helpful-configuration + (configurations + (list + (local-file "../services/emacs/oni-helpful.el"))))) + (yasnippet-capf + (home-emacs-yasnippet-capf-configuration)) + (envrc + (home-emacs-envrc-configuration)) + (configurations + (list + (local-file "../services/emacs/init.el") + (local-file "pop-os/emacs.el") + (mixed-text-file + "init.el" + "(with-eval-after-load 'project (require 'oni-project))\n" + "(require 'oni-gui)\n" + "(provide 'oni-gnus)\n" + "(add-to-list 'auto-mode-alist '(\"\\.vue$\" . web-mode))\n"))))) + (service home-emacs-org-journal-service-type) + (service home-wakatime-service-type + (home-wakatime-configuration + (api-url "https://waka.ryuslash.org/api") + (exclude '("^COMMIT_EDITMSG$" + "^TAG_EDITMSG$")))) + (service home-emacs-vterm-service-type + (home-emacs-vterm-configuration + (buffer-name-string "*vterm* %s"))) - home-zsh-service + home-zsh-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-zsh-atuin-service-type - (home-zsh-atuin-configuration - (inline-height 20) - (filter-mode 'directory) - (history-filter - '("^ +")) - (enter-accept #t))) + ;; 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-zsh-atuin-service-type + (home-zsh-atuin-configuration + (inline-height 20) + (filter-mode 'directory) + (history-filter + '("^ +")) + (enter-accept #t))) - ;; (service home-stumpwm-service-type - ;; (home-stumpwm-configuration - ;; (package stumpwm+swank) - ;; (locker-program "/usr/bin/i3lock") - ;; (configurations - ;; (list (local-file "../services/stumpwm/stumpwm.lisp") - ;; (local-file "../services/stumpwm/pop-os-config.lisp"))))) - ;; (service home-stumpwm-stumptray-service-type - ;; (home-stumpwm-stumptray-configuration - ;; (configurations - ;; (list (mixed-text-file "config-stumptray" - ;; "(require 'stumptray)\n" - ;; "(stumptray::stumptray)\n"))))) - ;; (service home-stumpwm-playerctl-service-type - ;; (home-stumpwm-playerctl-configuration - ;; (configurations - ;; (list (local-file "../services/stumpwm/playerctl.lisp"))))) - ;; (service home-stumpwm-pamixer-service-type - ;; (home-stumpwm-pamixer-configuration - ;; (configurations - ;; (list (local-file "../services/stumpwm/pamixer.lisp"))))) + ;; (service home-stumpwm-service-type + ;; (home-stumpwm-configuration + ;; (package stumpwm+swank) + ;; (locker-program "/usr/bin/i3lock") + ;; (configurations + ;; (list (local-file "../services/stumpwm/stumpwm.lisp") + ;; (local-file "../services/stumpwm/pop-os-config.lisp"))))) + ;; (service home-stumpwm-stumptray-service-type + ;; (home-stumpwm-stumptray-configuration + ;; (configurations + ;; (list (mixed-text-file "config-stumptray" + ;; "(require 'stumptray)\n" + ;; "(stumptray::stumptray)\n"))))) + ;; (service home-stumpwm-playerctl-service-type + ;; (home-stumpwm-playerctl-configuration + ;; (configurations + ;; (list (local-file "../services/stumpwm/playerctl.lisp"))))) + ;; (service home-stumpwm-pamixer-service-type + ;; (home-stumpwm-pamixer-configuration + ;; (configurations + ;; (list (local-file "../services/stumpwm/pamixer.lisp"))))) - (service home-flameshot-service-type) - (service home-mbsync-service-type) + (service home-flameshot-service-type) + (service home-mbsync-service-type) - (service home-herbstluftwm-service-type - (home-herbstluftwm-configuration - (tags '(dev web)) - (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.7375:1 (clients max:0) (clients vertical:0)))) - (extra - (list - (mixed-text-file - "autostart" - "herbstclient focus_edge left\n" - "herbstclient keybind Mod4-apostrophe spawn dunstctl close\n" - "herbstclient keybind Mod4-quotedbl spawn dunstctl close-all\n" - "herbstclient keybind Mod4-Control-apostrophe spawn dunstctl history-pop\n" - "herbstclient keybind Mod4-Mod1-apostrophe spawn dunstctl context\n" - "herbstclient spawn pick-random-wallpaper\n"))))) + (service home-herbstluftwm-service-type + (home-herbstluftwm-configuration + (tags '(dev web)) + (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.7375:1 (clients max:0) (clients vertical:0)))) + (extra + (list + (mixed-text-file + "autostart" + "herbstclient focus_edge left\n" + "herbstclient keybind Mod4-apostrophe spawn dunstctl close\n" + "herbstclient keybind Mod4-quotedbl spawn dunstctl close-all\n" + "herbstclient keybind Mod4-Control-apostrophe spawn dunstctl history-pop\n" + "herbstclient keybind Mod4-Mod1-apostrophe spawn dunstctl context\n" + "herbstclient spawn pick-random-wallpaper\n"))))) - (service home-sxhkd-service-type - (home-sxhkd-configuration - (configurations - (list (local-file "sxhkdrc") - (mixed-text-file - "sxhkdrc-playerctl" - "XF86AudioPlay\n" - " herbstclient spawn " playerctl "/bin/playerctl play-pause\n" - "XF86AudioNext\n" - " herbstclient spawn " playerctl "/bin/playerctl next\n" - "XF86AudioPrev\n" - " herbstclient spawn " playerctl "/bin/playerctl prev\n") - (mixed-text-file - "sxhkdrc-pamixer" - "XF86AudioRaiseVolume\n" - " herbstclient spawn " pamixer "/bin/pamixer --increase 10\n" - "XF86AudioLowerVolume\n" - " herbstclient spawn " pamixer "/bin/pamixer --decrease 10\n" - "XF86AudioMute\n" - " herbstclient spawn " pamixer "/bin/pamixer --toggle-mute\n"))))) - (service home-polybar-service-type - (home-polybar-configuration - (bar "example"))) + (service home-sxhkd-service-type + (home-sxhkd-configuration + (configurations + (list (local-file "sxhkdrc") + (mixed-text-file + "sxhkdrc-playerctl" + "XF86AudioPlay\n" + " herbstclient spawn " playerctl "/bin/playerctl play-pause\n" + "XF86AudioNext\n" + " herbstclient spawn " playerctl "/bin/playerctl next\n" + "XF86AudioPrev\n" + " herbstclient spawn " playerctl "/bin/playerctl prev\n") + (mixed-text-file + "sxhkdrc-pamixer" + "XF86AudioRaiseVolume\n" + " herbstclient spawn " pamixer "/bin/pamixer --increase 10\n" + "XF86AudioLowerVolume\n" + " herbstclient spawn " pamixer "/bin/pamixer --decrease 10\n" + "XF86AudioMute\n" + " herbstclient spawn " pamixer "/bin/pamixer --toggle-mute\n"))))) + (service home-polybar-service-type + (home-polybar-configuration + (bar "example"))) - (service home-gpg-agent-service-type - (home-gpg-agent-configuration - (ssh-support? #t) - (extra-content - "allow-emacs-pinentry\n")))))) + (service home-gpg-agent-service-type + (home-gpg-agent-configuration + (ssh-support? #t) + (extra-content + "allow-emacs-pinentry\n")))))) diff --git a/oni/home/config/rincewind.scm b/oni/home/config/rincewind.scm index d209301..ffb807e 100644 --- a/oni/home/config/rincewind.scm +++ b/oni/home/config/rincewind.scm @@ -69,7 +69,8 @@ home-xmodmap-service home-openssh-service home-kitty-service - home-channels-service)) + home-channels-service + foreign-distro-compatibility-packages)) #:use-module ((oni home services autokey) #:select (home-autokey-service-type)) #:use-module ((oni home services copyq) @@ -270,14 +271,6 @@ (define my-emacs emacs-next) -(define foreign-distro-compatibility-packages - (map specification->package+output - '("glibc-locales" - "hicolor-icon-theme" ; Might be needed for certain icons? - "nss-certs" ; Might be needed for cetrificates - "man-db" ; Needed to see man pages from packages - ))) - (define archlinux-compatibility-packages (map specification->package '("fakeroot" ; Needed to build arch packages |
