140 lines
3.3 KiB
Nix
140 lines
3.3 KiB
Nix
{ config, lib, pkgs, ...}:
|
|
|
|
let
|
|
mod = "Mod4";
|
|
in {
|
|
xsession = {
|
|
enable = true;
|
|
|
|
windowManager.i3 = {
|
|
enable = true;
|
|
package = pkgs.i3-gaps;
|
|
config = {
|
|
bars = [
|
|
{
|
|
fonts = {
|
|
size = 11.0;
|
|
};
|
|
statusCommand = "${pkgs.i3status-rust}/bin/i3status-rs /home/daniel/.config/i3status-rust/config-main.toml";
|
|
position = "top";
|
|
}
|
|
];
|
|
colors = {
|
|
focused = {
|
|
border = "#6272A4";
|
|
background = "#6272A4";
|
|
text = "#F8F8F2";
|
|
indicator = "#6272A4";
|
|
childBorder = "#6272A4";
|
|
};
|
|
focusedInactive = {
|
|
border = "#44475A";
|
|
background = "#44475A";
|
|
text = "#F8F8F2";
|
|
indicator = "#44475A";
|
|
childBorder = "#44475A";
|
|
};
|
|
unfocused = {
|
|
border = "#282A36";
|
|
background = "#282A36";
|
|
text = "#BFBFBF";
|
|
indicator = "#282A36";
|
|
childBorder = "#282A36";
|
|
};
|
|
urgent = {
|
|
border = "#44475A";
|
|
background = "#FF5555";
|
|
text = "#F8F8F2";
|
|
indicator = "#FF5555";
|
|
childBorder = "#FF5555";
|
|
};
|
|
placeholder = {
|
|
border = "#282A36";
|
|
background = "#282A36";
|
|
text = "#F8F8F2";
|
|
indicator = "#282A36";
|
|
childBorder = "#282A36";
|
|
};
|
|
background = "#F8F8F2";
|
|
};
|
|
|
|
defaultWorkspace = "workspace number 1";
|
|
|
|
floating = {
|
|
modifier = mod;
|
|
criteria = [
|
|
{ instance = "pavucontrol"; }
|
|
];
|
|
};
|
|
|
|
focus = {
|
|
followMouse = false;
|
|
};
|
|
|
|
fonts = {
|
|
names = [ "pango:monospace 8" ];
|
|
style = "monospace";
|
|
size = 8.0;
|
|
};
|
|
|
|
gaps = {
|
|
outer = 10;
|
|
inner = 5;
|
|
smartBorders = "on";
|
|
};
|
|
|
|
keybindings = lib.mkOptionDefault {
|
|
"${mod}+q" = "kill";
|
|
"${mod}+d" = "exec rofi -show drun";
|
|
|
|
"${mod}+h" = "focus left";
|
|
"${mod}+j" = "focus down";
|
|
"${mod}+k" = "focus up";
|
|
"${mod}+l" = "focus right";
|
|
|
|
"${mod}+Shift+h" = "move left";
|
|
"${mod}+Shift+l" = "move right";
|
|
|
|
"${mod}+Tab" = "workspace back_and_forth";
|
|
|
|
"${mod}+b" = "split h";
|
|
"${mod}+v" = "split v";
|
|
"${mod}+Control+Return" = "exec --no-startup-id i3utils workspace new";
|
|
"${mod}+Control+Shift+Return" = "exec --no-startup-id i3utils workspace new -b";
|
|
"${mod}+Shift+Return" = "exec --no-startup-id i3utils workspace new -n, move next";
|
|
|
|
"${mod}+Control+j" = "exec --no-startup-id $HOME/bin/scripts/godown";
|
|
"${mod}+Control+k" = "exec --no-startup-id $HOME/bin/scripts/goup";
|
|
"${mod}+Control+h" = "exec --no-startup-id i3utils workspace new -b";
|
|
|
|
"${mod}+Shift+k" = "exec --no-startup-id i3utils window move prev";
|
|
"${mod}+Shift+j" = "exec --no-startup-id i3utils window move next";
|
|
|
|
"${mod}+p" = "scratchpad show";
|
|
"${mod}+Escape" = "exec i3lock -i /home/daniel/wallpapers/lock.png";
|
|
"${mod}+Shift+Escape" = "exec i3lock -i /home/daniel/wallpapers/lock.png && systemctl suspend";
|
|
};
|
|
|
|
modifier = mod;
|
|
|
|
startup = [
|
|
{ command = "$HOME/bin/scripts/flower"; always = true; }
|
|
{ command = "feh --bg-fill $HOME/wallpapers/wallpaper.jpg"; always = false; }
|
|
];
|
|
|
|
terminal = "kitty";
|
|
|
|
window = {
|
|
border = 3;
|
|
titlebar = false;
|
|
commands = [
|
|
{ command = "move position center #2116 46"; criteria = { class = "jetbrains-toolbox"; }; }
|
|
{ command = "move scratchpad"; criteria = { instance = "spotify"; }; }
|
|
];
|
|
};
|
|
|
|
};
|
|
};
|
|
};
|
|
}
|