80 lines
2.6 KiB
Nix
80 lines
2.6 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
hostname,
|
|
...
|
|
}: {
|
|
home.packages = with pkgs; [
|
|
wlr-randr
|
|
];
|
|
wayland.windowManager.river = {
|
|
enable = true;
|
|
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
|
|
'';
|
|
};
|
|
}
|