diff options
| author | Robert Günzler <r@gnzler.io> | 2025-04-30 13:22:06 +0200 |
|---|---|---|
| committer | Robert Günzler <r@gnzler.io> | 2025-04-30 13:22:06 +0200 |
| commit | 27ca3598a5de58591fc80c516f75b7f204954c5b (patch) | |
| tree | 306b2483e8474b188ddd7895037e7d41ade1044c /.config/river/init | |
| parent | a04bebc3c33cc969eba03e74a91ddea6b4746553 (diff) | |
update river config
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to '.config/river/init')
| -rwxr-xr-x | .config/river/init | 186 |
1 files changed, 21 insertions, 165 deletions
diff --git a/.config/river/init b/.config/river/init index 320d3cf..fedb5f9 100755 --- a/.config/river/init +++ b/.config/river/init @@ -1,176 +1,32 @@ #!/bin/sh -# Note: the "Mod4" modifier is also known as Logo, GUI, Windows, Mod4, etc. -riverctl input "1739:0:Synaptics_TM3289-021" natural-scroll enabled -riverctl input "1739:0:Synaptics_TM3289-021" pointer-accel 0 -riverctl input "1739:0:Synaptics_TM3289-021" tap enabled -riverctl input "1739:0:Synaptics_TM3289-021" accel-profile adaptive +riverctl spawn /etc/s6-rc/bin/s6-session-spawn -# run application launcher -riverctl map normal Mod4 D spawn 'menu -run' +. "$XDG_CONFIG_HOME/river/functions.sh" +. "$XDG_CONFIG_HOME/river/colors" +. "$XDG_CONFIG_HOME/river/keybinds" +. "$XDG_CONFIG_HOME/river/rules" +. "$XDG_CONFIG_HOME/river/layouts" +. "$XDG_CONFIG_HOME/river/gsettings" -# start an instance of foot (https://codeberg.org/dnkl/foot) -riverctl map normal Mod4 Return spawn foot +#riverctl spawn 'dbus-update-activation-environment DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP' +riverctl spawn 'light -i set 80%' +riverctl spawn 'kanshictl reload' -# Mod4+Q to close the focused view -riverctl map normal Mod4+Shift Q close - -# Mod4+Shift+E to exit river -riverctl map normal Mod4+Shift E exit - -# Mod4+J and Mod4+K to focus the next/previous view in the layout stack -riverctl map normal Mod4 J focus-view next -riverctl map normal Mod4 K focus-view previous - -# Mod4+Shift+J and Mod4+Shift+K to swap the focused view with the next/previous -# view in the layout stack -riverctl map normal Mod4+Shift J swap next -riverctl map normal Mod4+Shift K swap previous - -# Mod4+Period and Mod4+Comma to focus the next/previous output -riverctl map normal Mod4 Period focus-output next -riverctl map normal Mod4 Comma focus-output previous - -# Mod4+Shift+{Period,Comma} to send the focused view to the next/previous output -riverctl map normal Mod4+Shift Period send-to-output next -riverctl map normal Mod4+Shift Comma send-to-output previous - -# bump the focused view to the top of the layout stack -riverctl map normal Mod4+Shift Return zoom - -# Mod4+H and Mod4+L to decrease/increase the main ratio of rivertile(1) -riverctl map normal Mod4 H send-layout-cmd rivertile "main-ratio -0.05" -riverctl map normal Mod4 L send-layout-cmd rivertile "main-ratio +0.05" - -# Mod4+Shift+H and Mod4+Shift+L to increment/decrement the main count of rivertile(1) -riverctl map normal Mod4+Shift H send-layout-cmd rivertile "main-count +1" -riverctl map normal Mod4+Shift L send-layout-cmd rivertile "main-count -1" - -# Mod4+Alt+{H,J,K,L} to move views -# riverctl map normal Mod4+Alt H move left 100 -# riverctl map normal Mod4+Alt J move down 100 -# riverctl map normal Mod4+Alt K move up 100 -# riverctl map normal Mod4+Alt L move right 100 - -# snap views to screen edges -riverctl map normal Mod4+Control H snap left -riverctl map normal Mod4+Control J snap down -riverctl map normal Mod4+Control K snap up -riverctl map normal Mod4+Control L snap right - -# Mod4+Alt+Shif+{H,J,K,L} to resize views -# riverctl map normal Mod4+Alt+Shift H resize horizontal -100 -# riverctl map normal Mod4+Alt+Shift J resize vertical 100 -# riverctl map normal Mod4+Alt+Shift K resize vertical -100 -# riverctl map normal Mod4+Alt+Shift L resize horizontal 100 - -# Mod4 + Left Mouse Button to move views -riverctl map-pointer normal Mod4 BTN_LEFT move-view - -# Mod4 + Right Mouse Button to resize views -riverctl map-pointer normal Mod4 BTN_RIGHT resize-view - -riverctl focus-follows-cursor normal - -for i in $(seq 1 9); do - tags=$((1 << (i - 1))) - - # focus tag [0-8] - riverctl map normal Mod4 "$i" set-focused-tags "$tags" - # tag focused view with tag [0-8] - riverctl map normal Mod4+Shift "$i" set-view-tags "$tags" - # toggle focus of tag [0-8] - riverctl map normal Mod4+Control "$i" toggle-focused-tags "$tags" - # toggle tag [0-8] of focused view - riverctl map normal Mod4+Shift+Control "$i" toggle-view-tags "$tags" -done - -# Mod4+0 to focus all tags -# Mod4+Shift+0 to tag focused view with all tags -all_tags=$(((1 << 32) - 1)) -riverctl map normal Mod4 0 set-focused-tags $all_tags -riverctl map normal Mod4+Shift 0 set-view-tags $all_tags -riverctl map normal Mod4+Control+Shift 0 toggle-view-tags $all_tags - -# Mod4+Space to toggle float -riverctl map normal Mod4+Control Space toggle-float - -# Mod4+F to toggle fullscreen -riverctl map normal Mod4 F toggle-fullscreen -# Mod4+{Up,Right,Down,Left} to change layout orientation -riverctl map normal Mod4 Up send-layout-cmd rivertile "main-location top" -riverctl map normal Mod4 Right send-layout-cmd rivertile "main-location right" -riverctl map normal Mod4 Down send-layout-cmd rivertile "main-location bottom" -riverctl map normal Mod4 Left send-layout-cmd rivertile "main-location left" - -# Declare a passthrough mode. This mode has only a single mapping to return to -# normal mode. This makes it useful for testing a nested wayland compositor -riverctl declare-mode passthrough -# enter passthrough mode -riverctl map normal Mod4 F11 enter-mode passthrough -# return to normal mode -riverctl map passthrough Mod4 F11 enter-mode normal - -# bindsym Return mode "default" -# bindsym Escape mode "default" -# bindsym q mode "default" -riverctl declare-mode menu -riverctl map normal Mod4 M enter-mode menu -riverctl map menu None A spawn 'riverctl spawn soundswitch; riverctl enter mode normal' -riverctl map menu None M spawn 'riverctl spawn mnts; riverctl enter mode normal' -riverctl map menu None N spawn 'riverctl spawn notifmenu; riverctl enter mode normal' -riverctl map menu None P spawn 'riverctl spawn passmenu; riverctl enter mode normal' -riverctl map menu None R spawn 'riverctl spawn rcmenu; riverctl enter mode normal' -riverctl map menu None X spawn 'riverctl spawn "menu -drun"; riverctl enter mode normal' -riverctl map menu None Return enter-mode normal -riverctl map menu None Escape enter-mode normal -riverctl map menu None Q enter-mode normal - -# Various media key mapping examples for both normal and locked mode which do -# not have a modifier -for mode in normal locked; do - riverctl map $mode None XF86AudioRaiseVolume spawn 'soundswitch -V' - riverctl map $mode None XF86AudioLowerVolume spawn 'soundswitch -v' - riverctl map $mode None XF86AudioMute spawn 'soundswitch -m' - - # Control MPRIS aware media players with playerctl (https://github.com/altdesktop/playerctl) - riverctl map $mode None XF86AudioMedia spawn 'playerctl -p playerctld play-pause' - riverctl map $mode None XF86AudioPlay spawn 'playerctl -p playerctld play-pause' - riverctl map $mode None XF86AudioPrev spawn 'playerctl -p playerctld previous' - riverctl map $mode None XF86AudioNext spawn 'playerctl -p playerctld next' - - # Control screen backlight brighness with light (https://github.com/haikarainen/light) - riverctl map $mode None XF86MonBrightnessUp spawn 'light -A 5' - riverctl map $mode None XF86MonBrightnessDown spawn 'light -U 5' - - riverctl map $mode None XF86Display spawn 'kanshictl reload' - riverctl map $mode None XF86Keyboard spawn 'light -S 0' - riverctl map $mode None XF86Favorites spawn 'light -S 100' -done - -# Set background and border color -riverctl background-color 0x002b36 -riverctl border-color-focused 0x70649a -riverctl border-color-unfocused 0x1c1c1c -riverctl border-color-urgent 0x9f353a -riverctl border-width 2 - -# Set keyboard repeat rate riverctl set-repeat 70 200 +riverctl input "pointer-*" natural-scroll enabled +riverctl input "pointer-*" pointer-accel 0 +riverctl input "pointer-*" tap enabled +riverctl input "pointer-*" accel-profile adaptive +riverctl input "pointer-*" disable-while-typing enabled +riverctl input "*Kensington_Slimblade_Trackball" natural-scroll disabled +riverctl input "*Kensington_Slimblade_Trackball" pointer-accel 1 -# Make certain views start floating -# riverctl float-filter-add app-id float -# riverctl float-filter-add title "popup title with spaces" - -# Set app-ids and titles of views which should use client side decorations -# riverctl csd-filter-add app-id "gedit" - -#riverctl spawn 'once -- s6-svscan ~/.local/share/s6' -riverctl spawn 'dbus-update-activation-environment DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP' -riverctl spawn 'light -S 80' -#riverctl spawn 'sleep 1.4 && kanshictl reload' +riverctl set-cursor-warp on-output-change # Set and exec into the default layout generator, rivertile. # River will send the process group of the init executable SIGTERM on exit. riverctl default-layout rivertile -exec rivertile -view-padding 5 -outer-padding 0 +riverctl send-layout-cmd rivertile "main-ratio 0.66" +riverctl send-layout-cmd rivertile "main-count 1" +exec rivertile -view-padding 0 -outer-padding 0 |