48 lines
1.4 KiB
Nix
48 lines
1.4 KiB
Nix
{ pkgs, lib, ... }:
|
||
|
||
let
|
||
monitorPages = [ "Ⅰ" "Ⅱ" "Ⅲ" "Ⅳ" "Ⅴ" "Ⅵ" "Ⅶ" "Ⅷ" "Ⅸ" "Ⅹ" ];
|
||
monitorPagesString = lib.strings.concatStringsSep " " monitorPages;
|
||
strPalette = pkgs.lib.rice.palette.toRGBHex pkgs.rice.colorPalette;
|
||
xrandr = "${pkgs.xorg.xrandr}/bin/xrandr";
|
||
xsetroot = "${pkgs.xorg.xsetroot}/bin/xsetroot";
|
||
in
|
||
{
|
||
xsession.windowManager.bspwm = {
|
||
enable = true;
|
||
settings = {
|
||
border_width = 1;
|
||
border_radius = 8;
|
||
window_gap = 2;
|
||
split_ratio = 0.5;
|
||
top_padding = 0;
|
||
borderless_monocle = true;
|
||
gapless_monocle = false;
|
||
normal_border_color = strPalette.normal.blue;
|
||
focused_border_color = strPalette.bright.red;
|
||
};
|
||
# monitors = builtins.foldl' (acc: monitor: acc // { ${monitor} = monitorPages; }) { } monitors;
|
||
rules = {
|
||
"*" = { follow = true; };
|
||
"Zathura" = { state = "tiled"; };
|
||
};
|
||
extraConfig = ''
|
||
${xsetroot} -solid black -cursor_name left_ptr
|
||
autorandr -c
|
||
|
||
for monitor in $(${xrandr} --listactivemonitors | cut -d " " -f 6); do
|
||
bspc monitor $monitor -d ${monitorPagesString}
|
||
done
|
||
|
||
systemctl --user restart \
|
||
polybar.service \
|
||
update-background.service
|
||
'';
|
||
startupPrograms = [ ];
|
||
};
|
||
services = {
|
||
network-manager-applet.enable = true;
|
||
blueman-applet.enable = true;
|
||
};
|
||
home.packages = with pkgs; [ blueman ];
|
||
}
|