{ config, lib, pkgs, hostname, ... }: { home.packages = with pkgs; [ wlr-randr ]; wayland.windowManager.river = { enable = false; package = pkgs.river.overrideAttrs (finalAttrs: previousAttrs: { version = "2024-11-04"; src = pkgs.fetchFromGitea { domain = "codeberg.org"; owner = "river"; repo = "river"; rev = "14e941bae16b1ca478c32198c131c4297157f888"; hash = "sha256-uACc9Cb1tSw3I0fMlEMX74NfU+Tg3It74tb+nc51AZ4="; fetchSubmodules = true; }; buildInputs = (pkgs.lib.lists.remove pkgs.wlroots_0_16 previousAttrs.buildInputs) ++ [ pkgs.wlroots pkgs.makeWrapper ]; postInstall = previousAttrs.postInstall + '' wrapProgram "$out/bin/river" --set WLR_NO_HARDWARE_CURSORS 1 --set WLR_RENDERER vulkan ''; }); extraConfig = (builtins.readFile ./${hostname}) + '' riverctl map normal $MAINMOD D spawn 'tofi-drun --drun-launch=true' riverctl map normal $MAINMOD Return spawn 'kitty' riverctl map normal $MAINMOD+Shift p exit riverctl map normal $MAINMOD q close riverctl map normal $MAINMOD escape spawn 'swaylock -i ~/wallpapers/lock.png' riverctl map normal $MAINMOD l focus-view next riverctl map normal $MAINMOD h focus-view previous riverctl map normal $MAINMOD m swap next riverctl map normal $MAINMOD COMMA swap previous riverctl map -repeat normal None XF86AudioLowerVolume spawn 'wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%-' riverctl map -repeat normal None XF86AudioRaiseVolume spawn 'wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+' riverctl map normal None XF86AudioMute spawn 'wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle' riverctl map -repeat normal None XF86MonBrightnessUp spawn 'xbacklight -inc 10' riverctl map -repeat normal None XF86MonBrightnessDown spawn 'xbacklight -dec 10' riverctl spawn rivertile riverctl default-layout rivertile riverctl input 'pointer-2362-628-PIXA3854:00_093A:0274_Touchpad' accel-profile flat riverctl input 'pointer-2362-628-PIXA3854:00_093A:0274_Touchpad' natural-scroll enabled riverctl input 'pointer-2362-628-PIXA3854:00_093A:0274_Touchpad' tap enabled riverctl keyboard-layout -options caps:escape gb for i in $(seq 1 9); do tags=$((1 << ($i - 1))) riverctl map normal $MAINMOD $i set-focused-tags $tags riverctl map normal $MAINMOD+Shift $i toggle-view-tags $tags done ''; }; }