2024-01-17 07:36:49 +00:00
|
|
|
{ config, inputs, self, username, pkgs, ... }:
|
2023-11-14 20:20:07 +00:00
|
|
|
|
|
|
|
let
|
|
|
|
modifier = "Mod4";
|
|
|
|
in
|
2023-12-12 20:29:00 +00:00
|
|
|
{
|
2023-11-14 20:20:07 +00:00
|
|
|
xsession.windowManager.i3 = {
|
|
|
|
enable = true;
|
|
|
|
|
|
|
|
config = {
|
|
|
|
assigns = {
|
2024-01-25 08:04:55 +00:00
|
|
|
"7" = [{ class = "vlc"; }];
|
|
|
|
"8" = [{ class = "0ad"; }];
|
2023-11-14 20:20:07 +00:00
|
|
|
"9" = [
|
|
|
|
{ class = "Slack"; }
|
|
|
|
{ class = "discord"; }
|
|
|
|
];
|
|
|
|
};
|
|
|
|
|
2024-01-31 18:25:21 +00:00
|
|
|
focus.followMouse = false;
|
|
|
|
|
2023-11-14 20:20:07 +00:00
|
|
|
modifier = modifier;
|
|
|
|
|
|
|
|
keybindings = inputs.nixpkgs.lib.mkOptionDefault {
|
2024-01-31 18:24:47 +00:00
|
|
|
"${modifier}+d" = "exec ${pkgs.dmenu}/bin/dmenu_run -sb '#555555'";
|
|
|
|
|
2024-01-17 07:36:49 +00:00
|
|
|
"${modifier}+Shift+b" = "exec ${pkgs.firefox-devedition}/bin/firefox-devedition";
|
2023-11-16 19:11:50 +00:00
|
|
|
"${modifier}+Tab" = "workspace back_and_forth";
|
2023-11-21 23:16:17 +00:00
|
|
|
|
|
|
|
# Change focus.
|
|
|
|
"${modifier}+h" = "focus left";
|
|
|
|
"${modifier}+j" = "focus down";
|
|
|
|
"${modifier}+k" = "focus up";
|
|
|
|
"${modifier}+l" = "focus right";
|
|
|
|
|
|
|
|
# Move focused window.
|
|
|
|
"${modifier}+Shift+h" = "move left";
|
|
|
|
"${modifier}+Shift+j" = "move down";
|
|
|
|
"${modifier}+Shift+k" = "move up";
|
|
|
|
"${modifier}+Shift+l" = "move right";
|
|
|
|
|
2024-01-15 00:07:41 +00:00
|
|
|
"${modifier}+Shift+s" = "exec --no-startup-id feh --randomize --bg-scale /home/${username}/Pictures/Wallpaper/*;";
|
2024-01-04 13:00:00 +00:00
|
|
|
"${modifier}+Shift+p" = "exec flameshot gui";
|
2024-01-04 21:51:46 +00:00
|
|
|
"${modifier}+Shift+y" = "exec copyq toggle";
|
2024-01-04 13:00:00 +00:00
|
|
|
|
2023-11-21 23:16:17 +00:00
|
|
|
"XF86AudioRaiseVolume" = "exec pamixer -ui 2 && pamixer --get-volume";
|
|
|
|
"XF86AudioLowerVolume" = "exec pamixer -ud 2 && pamixer --get-volume";
|
|
|
|
"XF86AudioMute" = "exec pamixer --toggle-mute && ( [ \"$(pamixer --get-mute)\" = \"true\" ] && echo 0";
|
|
|
|
|
|
|
|
"XF86MonBrightnessDown" = "exec brightnessctl set 5%- | sed -En 's/.*\(([0-9]+)%\).*/\1/p'";
|
|
|
|
"XF86MonBrightnessUp" = "exec brightnessctl set +5% | sed -En 's/.*\(([0-9]+)%\).*/\1/p'";
|
2023-11-14 20:20:07 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
terminal = "alacritty";
|
|
|
|
|
|
|
|
window = {
|
|
|
|
border = 0;
|
|
|
|
hideEdgeBorders = "none";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
extraConfig = ''
|
|
|
|
set $laptop eDP-1
|
|
|
|
bindswitch --reload --locked lid:on output $laptop disable
|
|
|
|
bindswitch --reload --locked lid:off output $laptop enable
|
|
|
|
|
2024-01-17 07:36:49 +00:00
|
|
|
exec --no-startup-id ${pkgs.feh}/bin/feh --randomize --bg-scale /home/${username}/Pictures/Wallpaper/*;
|
2024-01-08 01:13:35 +00:00
|
|
|
|
2023-11-14 20:20:07 +00:00
|
|
|
default_border none
|
|
|
|
default_floating_border none
|
|
|
|
smart_borders on
|
|
|
|
smart_gaps on
|
2024-01-29 12:59:23 +00:00
|
|
|
|
|
|
|
#border backgr text indicator
|
|
|
|
client.focused #444444 #555555 #ffffff #dddddd
|
|
|
|
client.focused_inactive #222222 #333333 #888888 #292d2e
|
|
|
|
client.unfocused #222222 #111111 #888888 #292d2e
|
|
|
|
client.urgent #2f343a #900000 #ffffff #900000
|
|
|
|
|
2023-11-14 20:20:07 +00:00
|
|
|
'';
|
2024-01-29 12:59:23 +00:00
|
|
|
|
|
|
|
config = {
|
|
|
|
bars = [{
|
|
|
|
position = "bottom";
|
|
|
|
statusCommand = "${pkgs.i3status}/bin/i3status";
|
|
|
|
colors = {
|
|
|
|
background = "#161616";
|
|
|
|
statusline = "#ffffff";
|
|
|
|
separator = "#333333";
|
|
|
|
|
|
|
|
focusedWorkspace = {
|
|
|
|
background = "#444444";
|
|
|
|
border = "#555555";
|
|
|
|
text = "#ffffff";
|
|
|
|
};
|
|
|
|
|
|
|
|
activeWorkspace = {
|
|
|
|
background = "#555555";
|
|
|
|
border = "#666666";
|
|
|
|
text = "#ffffff";
|
|
|
|
};
|
|
|
|
|
|
|
|
inactiveWorkspace = {
|
|
|
|
background = "#111111";
|
|
|
|
border = "#000000";
|
|
|
|
text = "#888888";
|
|
|
|
};
|
|
|
|
|
|
|
|
bindingMode = {
|
|
|
|
background = "#ff0000";
|
|
|
|
border = "#880000";
|
|
|
|
text = "#ffffff";
|
|
|
|
};
|
|
|
|
|
|
|
|
urgentWorkspace = {
|
|
|
|
background = "#ff0000";
|
|
|
|
border = "#880000";
|
|
|
|
text = "#ffffff";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}];
|
|
|
|
|
|
|
|
fonts = { names = [ "GeistMono" ]; };
|
|
|
|
|
|
|
|
gaps = {
|
|
|
|
smartBorders = "on";
|
|
|
|
smartGaps = true;
|
|
|
|
};
|
|
|
|
};
|
2023-11-14 20:20:07 +00:00
|
|
|
};
|
2023-12-15 11:13:27 +00:00
|
|
|
|
|
|
|
programs.i3status = {
|
|
|
|
enable = true;
|
|
|
|
|
|
|
|
general = {
|
|
|
|
colors = true;
|
|
|
|
|
|
|
|
color_bad = "#f7768e";
|
|
|
|
color_degraded = "#ff9e64";
|
|
|
|
color_good = "#c0caf5";
|
|
|
|
};
|
|
|
|
|
|
|
|
modules = {
|
|
|
|
cpu_temperature.enable = false;
|
|
|
|
ipv6.enable = false;
|
|
|
|
load.enable = false;
|
|
|
|
};
|
|
|
|
};
|
2023-11-14 20:20:07 +00:00
|
|
|
}
|