config/modules/gui/window-manager.nix
2022-01-11 23:20:57 +00:00

80 lines
1.6 KiB
Nix

{ pkgs, config, lib, ... }:
let theme = config.riley.theme.hex;
modifier = "Mod4";
keybindings = (import ./keybinds.nix {
inherit modifier lib pkgs config;
directional = {
left = "H";
right = "L";
up = "K";
down = "J";
};
workspace = {
numbered = 5;
named = {
"web" = "equal";
"doc" = "minus";
"dev" = "0";
};
};
launchers = {
browser = "google-chrome-stable";
};
});
in (lib.mkIf (config.riley.gui) {
services.xserver = {
enable = true;
windowManager.i3.enable = true;
};
home-manager.users."riley" = {
xsession.windowManager.i3 = {
enable = true;
config = with lib; (rec {
inherit modifier keybindings;
terminal = "${pkgs.alacritty}/bin/alacritty";
colors = {
focused = rec {
background = theme.background.normal;
text = theme."red".bright;
border = background;
childBorder = border;
indicator = border;
};
unfocused = rec {
background = theme.background.normal;
text = theme.foreground.slight;
border = background;
childBorder = border;
indicator = border;
};
focusedInactive = colors.unfocused;
};
window = {
border = 2;
commands = [
{ command = "border pixel 2"; criteria = { class = ".*"; }; }
];
};
fonts = {
names = [ "Source Sans 3" ];
style = "Semibold";
size = 10.0;
};
});
};
};
})