home-manager/tests/modules/services/window-managers/bspwm/configuration.nix
2023-05-13 00:09:52 +02:00

42 lines
1 KiB
Nix

{ pkgs, ... }:
{
xsession.windowManager.bspwm = {
enable = true;
monitors.focused = [ "desktop 1" "d'esk top" ]; # pathological desktop names
alwaysResetDesktops = false;
settings = {
border_width = 2;
split_ratio = 0.52;
gapless_monocle = true;
external_rules_command = "/path/to/external rules command";
ignore_ewmh_fullscreen = [ "enter" "exit" ];
};
rules."*" = {
sticky = true;
center = false;
desktop = "d'esk top#next";
splitDir = "north";
border = null;
unknownRule = 42;
};
extraConfigEarly = ''
extra config early
'';
extraConfig = ''
extra config
'';
startupPrograms = [ "foo" "bar || qux" ];
};
test.stubs.bspwm = { };
nmt.script = ''
bspwmrc=home-files/.config/bspwm/bspwmrc
assertFileExists "$bspwmrc"
assertFileIsExecutable "$bspwmrc"
assertFileContent "$bspwmrc" ${
pkgs.writeShellScript "bspwmrc-expected" (builtins.readFile ./bspwmrc)
}
'';
}