mirror of
https://github.com/nix-community/home-manager
synced 2024-12-05 01:19:46 +01:00
96 lines
2.7 KiB
Nix
96 lines
2.7 KiB
Nix
|
{ ... }:
|
||
|
|
||
|
{
|
||
|
wayland.windowManager.river = {
|
||
|
enable = true;
|
||
|
xwayland.enable = true;
|
||
|
extraSessionVariables = {
|
||
|
FOO = "foo";
|
||
|
BAR = "bar";
|
||
|
FOURTY_TWO = 42;
|
||
|
};
|
||
|
# systemdIntegration = true;
|
||
|
settings = {
|
||
|
attach-mode = "bottom";
|
||
|
background-color = "0x002b36";
|
||
|
border-color-focused = "0x93a1a1";
|
||
|
border-color-unfocused = "0x586e75";
|
||
|
border-color-urgent = "0xff0000";
|
||
|
border-width = 2;
|
||
|
csd-filter-add.app-id = [ "bar" "foo" ];
|
||
|
declare-mode = [ "locked" "normal" "passthrough" ];
|
||
|
default-layout = "rivertile";
|
||
|
float-filter-add.app-id = "mpd";
|
||
|
float-filter-add.title = "popup title with spaces";
|
||
|
focus-follows-cursor = "normal";
|
||
|
hide-cursor.timeout = 2;
|
||
|
hide-cursor.when-typing = true;
|
||
|
input.pointer-foo-bar = {
|
||
|
accel-profile = "flat";
|
||
|
events = true;
|
||
|
pointer-accel = -0.3;
|
||
|
tap = false;
|
||
|
};
|
||
|
keyboard-layout."-variant".colemak."-options"."altwin:swap_alt_wincaps:escapegrp:alt_shift_toggle" =
|
||
|
"us,de";
|
||
|
map.locked.None.XF86AudioLowerVolume.spawn = "'pamixer -d 5'";
|
||
|
map.locked.None.XF86AudioRaiseVolume.spawn = "'pamixer -i 5'";
|
||
|
map.normal."Alt E" = "toggle-fullscreen";
|
||
|
map.normal."Alt P" = "enter-mode passthrough";
|
||
|
map.normal."Alt Q" = "close";
|
||
|
map.normal."Alt Return" = "spawn foot";
|
||
|
map.normal."Alt T" = "toggle-float";
|
||
|
map.passthrough."Alt P" = "enter-mode normal";
|
||
|
map-pointer.normal."Alt BTN_LEFT" = "move-view";
|
||
|
map-pointer.normal."Super BTN_LEFT" = "move-view";
|
||
|
map-pointer.normal."Super BTN_MIDDLE" = "toggle-float";
|
||
|
map-pointer.normal."Super BTN_RIGHT" = "resize-view";
|
||
|
map-switch = {
|
||
|
locked = {
|
||
|
lid.open = "foo";
|
||
|
tablet.on = "foo";
|
||
|
};
|
||
|
normal = {
|
||
|
lid = {
|
||
|
close = "foo";
|
||
|
open = "foo";
|
||
|
};
|
||
|
tablet = {
|
||
|
off = "foo bar";
|
||
|
on = "foo";
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
rule-add."-app-id" = {
|
||
|
"'bar'" = "csd";
|
||
|
"'float*'"."-title"."'foo'" = "float";
|
||
|
};
|
||
|
set-cursor-warp = "on-output-change";
|
||
|
set-repeat = "50 300";
|
||
|
xcursor-theme = "someGreatTheme 12";
|
||
|
spawn = [ "firefox" "'foot -a terminal'" ];
|
||
|
};
|
||
|
|
||
|
extraConfig = ''
|
||
|
rivertile -view-padding 6 -outer-padding 6 &
|
||
|
some
|
||
|
extra config
|
||
|
'';
|
||
|
};
|
||
|
|
||
|
test.stubs = {
|
||
|
dbus = { };
|
||
|
river = { };
|
||
|
xwayland = { };
|
||
|
};
|
||
|
|
||
|
nmt.script = ''
|
||
|
riverInit=home-files/.config/river/init
|
||
|
assertFileExists "$riverInit"
|
||
|
assertFileIsExecutable "$riverInit"
|
||
|
|
||
|
normalizedConfig=$(normalizeStorePaths "$riverInit")
|
||
|
assertFileContent "$normalizedConfig" "${./init}"
|
||
|
'';
|
||
|
}
|