dotfiles.nix/i3.nix

122 lines
3.6 KiB
Nix
Raw Normal View History

2020-03-14 08:49:32 +00:00
{ lib, lockCmd, statusCmd, ... }: {
2020-01-03 01:13:32 +00:00
enable = true;
config = rec {
2020-03-14 08:49:32 +00:00
fonts = [ "Aileron" "FontAwesome 14" ];
2020-01-03 01:13:32 +00:00
colors = {
2020-03-14 08:49:32 +00:00
background = "#CBBB9B";
2020-01-03 01:13:32 +00:00
focused = {
border = "#421B28";
2020-03-14 08:49:32 +00:00
background = "#3F71A8";
2020-01-03 01:13:32 +00:00
text = "#EAE1CE";
indicator = "#A04060";
2020-03-14 08:49:32 +00:00
childBorder = "#3F71A8";
2020-01-03 01:13:32 +00:00
};
focusedInactive = {
border = "#7F6E73";
background = "#B59DA4";
text = "#383632";
indicator = "#484E50";
childBorder = "#5F676A";
};
unfocused = {
border = "#333333";
background = "#222222";
text = "#CDC5B4";
indicator = "#292D2E";
childBorder = "#222222";
};
placeholder = {
border = "#000000";
background = "#0C0C0C";
text = "#CDC5B4";
indicator = "#000000";
childBorder = "#0C0C0C";
};
urgent = {
border = "#D890A8";
background = "#D890A8";
text = "#383632";
indicator = "#D890A8";
childBorder = "#D890A8";
};
};
bars = [{
fonts = [ "Fira Code" "FontAwesome 11" ];
2020-03-14 08:49:32 +00:00
statusCommand = statusCmd;
2020-01-03 01:13:32 +00:00
colors = {
2020-03-14 08:49:32 +00:00
background = "#000000";
2020-01-03 01:13:32 +00:00
statusline = "#EAE1CE";
separator = "#CDC5B4";
focusedWorkspace = {
2020-03-14 08:49:32 +00:00
border = "#3F71A8";
background = "#3F71A8";
2020-01-03 01:13:32 +00:00
text = "#EAE1CE";
};
activeWorkspace = {
border = "#CDC5B4";
background = "#222222";
text = "#EAE1CE";
};
inactiveWorkspace = {
border = "#222222";
background = "#222222";
text = "#CDC5B4";
};
urgentWorkspace = {
border = "#D890A8";
background = "#D890A8";
text = "#383632";
};
bindingMode = {
border = "#D890A8";
background = "#D890A8";
text = "#383632";
};
};
}];
modifier = "Mod4";
keybindings = lib.mkOptionDefault {
"${modifier}+c" = "exec CM_ONESHOT=1 clipmenud";
"${modifier}+v" = "exec clipmenu";
"${modifier}+Escape" = "exec ${lockCmd}";
"${modifier}+0" = "workspace number 0";
"${modifier}+1" = "workspace number 1";
"${modifier}+2" = "workspace number 2";
"${modifier}+3" = "workspace number 3";
"${modifier}+4" = "workspace number 4";
"${modifier}+5" = "workspace number 5";
"${modifier}+6" = "workspace number 6";
"${modifier}+7" = "workspace number 7";
"${modifier}+8" = "workspace number 8";
"${modifier}+9" = "workspace number 9";
"${modifier}+d" = "exec --no-startup-id rofi -show run";
"XF86AudioRaiseVolume" = "exec --no-startup-id amixer sset Master 5%+";
"XF86AudioLowerVolume" = "exec --no-startup-id amixer sset Master 5%-";
2020-01-17 17:11:49 +00:00
"XF86MonBrightnessUp" = "exec --no-startup-id light -A 10";
"XF86MonBrightnessDown" = "exec --no-startup-id light -U 10";
2020-01-03 01:13:32 +00:00
};
workspaceLayout = "tabbed";
2020-01-17 17:11:49 +00:00
assigns = {
"1: web" = [{ class = "Firefox"; }];
2020-03-14 08:49:32 +00:00
"2: devel" = [ { class = "(K|k)itty"; } { class = "Atom"; } ];
"3: social" = [
{ class = "(N|n)heko"; }
{ class = "Slack"; }
{ class = "discord"; }
];
2020-01-17 17:11:49 +00:00
"4: admin" = [{ class = "Enpass"; }];
2020-03-14 08:49:32 +00:00
"5: games" = [{ class = "(S|s)team"; }];
"6: other" = [{ class = ".*"; }];
2020-01-17 17:11:49 +00:00
};
2020-01-03 01:13:32 +00:00
};
extraConfig = ''
exec --no-startup-id firefox
2020-03-14 08:49:32 +00:00
exec --no-startup-id kitty
2020-01-03 06:06:04 +00:00
exec --no-startup-id Enpass
2020-03-14 08:49:32 +00:00
# exec --no-startup-id slack
# exec --no-startup-id nheko
# exec --no-startup-id Discord
2020-01-17 17:11:49 +00:00
for_window [class="Firefox"] focus
2020-01-03 01:13:32 +00:00
'';
}