aboutsummaryrefslogtreecommitdiffstats
path: root/oni/home/config/data.scm
diff options
context:
space:
mode:
Diffstat (limited to 'oni/home/config/data.scm')
-rw-r--r--oni/home/config/data.scm144
1 files changed, 144 insertions, 0 deletions
diff --git a/oni/home/config/data.scm b/oni/home/config/data.scm
new file mode 100644
index 0000000..18d5108
--- /dev/null
+++ b/oni/home/config/data.scm
@@ -0,0 +1,144 @@
+(define-module (oni home config data)
+ #:use-module (gnu home)
+ #:use-module (gnu home services)
+ #:use-module (gnu home services desktop)
+ #:use-module (gnu services)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages shellutils)
+ #:use-module (gnu packages wm)
+ #:use-module (gnu packages xdisorg)
+ #:use-module (guix gexp)
+ #:use-module (oni home services rofi)
+ #:use-module (oni home services xsession)
+ #:use-module (oni home services xbindkeys)
+ #:use-module (oni home services zsh)
+ #:use-module (oni home services herbstluftwm)
+ #:use-module (oni home services polybar)
+ #:use-module (oni home services kdeconnect)
+ #:use-module (oni home services cmst)
+ #:use-module (oni home services syncthing)
+ #:use-module (oni home services unclutter)
+ #:use-module (oni home services dunst)
+ #:use-module (oni home services environment)
+ #:use-module (oni packages hlwm-run-or-raise)
+ #:use-module (oni packages pick-random-wallpaper)
+ #:use-module (oni home config common))
+
+(home-environment
+ (packages (list (specification->package+output "glibc-locales")
+ (specification->package+output "font-fantasque-sans")
+ (specification->package+output "font-comic-neue")
+ hlwm-run-or-raise
+ pick-random-wallpaper))
+
+ (services
+ (list
+ 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
+ home-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-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
+ "set_monitors 1920x1080+0+0"
+ "focus_edge left"
+ "keybind Mod4-apostrophe spawn dunstctl close"
+ "keybind Mod4-quotedbl spawn dunstctl close-all"
+ "keybind Mod4-Control-apostrophe spawn dunstctl history-pop"
+ "keybind Mod4-Mod1-apostrophe spawn dunstctl context"
+ "spawn pick-random-wallpaper"))))
+
+ (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))))))