Files
nixos-conf/home/packages/river/river.nix
2025-09-26 16:35:07 -06:00

133 lines
4.9 KiB
Nix

{ config, pkgs, ... }:
let
cmd = "send-layout-cmd wideriver";
tft = "toggle-focused-tags";
tvt = "toggle-view-tags";
sft = "set-focused-tags";
in
{
home.packages = with pkgs; [
wideriver
swaybg
];
wayland.windowManager.river = {
enable = true;
systemd.enable = true;
settings = {
spawn = [
#spawn notifiers
# generic notifier
"twmnd"
# brightness/media volume notifier
"avizo-service"
#set wallpaper
"~/login-wm-setup.sh"
# set gaps on wideriver
"~/login-wm-setup-2.sh"
];
output-layout = "wideriver";
rule-add = "ssd";
border-color-urgent = "0xe67e80";
map = {
normal = {
# spawn binds
"Super Return" = "spawn alacritty";
"Super R" = "spawn fuzzel";
"Super E" = "spawn fm";
"Super B" = "spawn obsidian";
"Super Escape" = "spawn \"swaylock --screenshots --clock --indicator --indicator-radius 250 --indicator-thickness 12 --effect-blur 7x5 --ring-color 7fbbb3 --line-color d3c6aa --inside-color 2b3339 --separator-color 83c092\"";
# format changes
"Super U" = "${cmd} \"--layout left\"";
"Super I" = "${cmd} \"--layout bottom\"";
"Super O" = "${cmd} \"--layout top\"";
"Super P" = "${cmd} \"--layout right\"";
"Super N" = "${cmd} \"--layout monocle\"";
"Super M" = "${cmd} \"--layout wide\"";
# globals
"Alt Q" = "close";
"Super+Shift E" = "exit";
"Super+Shift Return" = "zoom";
"Super F" = "toggle-fullscreen";
"Super+Shift F" = "toggle-float";
# avizo keys
"None XF86AudioRaiseVolume" = "spawn \"volumectl -d -u up\"";
"None XF86AudioLowerVolume" = "spawn \"volumectl -d -u down\"";
"None XF86AudioMute" = "spawn \"volumectl -d toggle-mute\"";
"None XF86MonBrightnessUp" = "spawn \"lightctl -d up\"";
"None XF86MonBrightnessDown" = "spawn \"lightctl -d down\"";
"Super KP_Multiply" = "spawn 'playerctl play-pause'";
"Super KP_Minus" = "spawn 'playerctl next'";
"Super KP_Divide" = "spawn 'playerctl previous'";
#movement
"Super J" = "focus-view next";
"Super K" = "focus-view previous";
"Super H" = "${cmd} \"--count +1\"";
"Super L" = "${cmd} \"--count -1\"";
"Super+Shift H" = "${cmd} \"--ratio -0.05\"";
"Super+Shift J" = "swap next";
"Super+Shift K" = "swap previous";
"Super+Shift L" = "${cmd} \"--ratio +0.05\"";
# "Super+Alt H" = "move left 100";
# "Super+Alt J" = "move down 100";
# "Super+Alt K" = "move up 100";
# "Super+Alt L" = "move right 100";
# "Super Period" = "focus-output next";
# "Super Comma" = "focus-output previous";
# "Super+Shift Period" = "send-to-output next";
# "Super+Shift Comma" = "send-to-output previous";
# tag commands
"Super 1" = "${sft} 2147483649";
"Super+Shift 1" = "${tft} 1";
"Super+Alt 1" = "${tvt} 1";
"Super 2" = "${sft} 2147483650";
"Super+Shift 2" = "${tft} 2";
"Super+Alt 2" = "${tvt} 2";
"Super 3" = "${sft} 2147483652";
"Super+Shift 3" = "${tft} 4";
"Super+Alt 3" = "${tvt} 4";
"Super 4" = "${sft} 2147483656";
"Super+Shift 4" = "${tft} 8";
"Super+Alt 4" = "${tvt} 8";
"Super 5" = "${sft} 2147483664";
"Super+Shift 5" = "${tft} 16";
"Super+Alt 5" = "${tvt} 16";
"Super 6" = "${sft} 2147483680";
"Super+Shift 6" = "${tft} 32";
"Super+Alt 6" = "${tvt} 32";
"Super 7" = "${sft} 2147483712";
"Super+Shift 7" = "${tft} 64";
"Super+Alt 7" = "${tvt} 64";
"Super 8" = "${sft} 2147483776";
"Super+Shift 8" = "${tft} 128";
"Super+Alt 8" = "${tvt} 128";
"Super 9" = "${sft} 2147483904";
"Super+Shift 9" = "${tft} 256";
"Super+Alt 9" = "${tvt} 256";
"Super 0" = "${sft} 2147483648";
"Super+Shift 0" = "${tft} 2147483648";
"Super+Alt 0" = "${tvt} 2147483648";
};
locked = {
# avizo keys
"None XF86AudioRaiseVolume" = "spawn \"volumectl -d -u up\"";
"None XF86AudioLowerVolume" = "spawn \"volumectl -d -u down\"";
"None XF86AudioMute" = "spawn \"volumectl -d toggle-mute\"";
"None XF86MonBrightnessUp" = "spawn \"lightctl -d up\"";
"None XF86MonBrightnessDown" = "spawn \"lightctl -d down\"";
};
};
};
};
}