dotfiles-nixos/home-manager/i3.nix

47 lines
1.3 KiB
Nix
Raw Normal View History

2023-06-06 15:19:23 +00:00
{ config, lib, pkgs, ... }:
let
mod = "Mod1";
in {
2023-06-06 16:41:09 +00:00
xsession = {
2023-06-06 15:19:23 +00:00
enable = true;
2023-06-06 16:41:09 +00:00
windowManager.i3 = {
enable = true;
config = {
2023-06-06 16:48:05 +00:00
modifier = mod;
2023-06-06 15:19:23 +00:00
2023-06-06 16:41:09 +00:00
# fonts = ["DejaVu Sans Mono, FontAwesome 6"];
2023-06-06 15:19:23 +00:00
2023-06-06 16:41:09 +00:00
# keybindings = lib.mkOptionDefault {
# "${mod}+p" = "exec ${pkgs.dmenu}/bin/dmenu_run";
# "${mod}+x" = "exec sh -c '${pkgs.maim}/bin/maim -s | xclip -selection clipboard -t image/png'";
# "${mod}+Shift+x" = "exec sh -c '${pkgs.i3lock}/bin/i3lock -c 222222 & sleep 5 && xset dpms force of'";
2023-06-06 15:19:23 +00:00
2023-06-06 16:41:09 +00:00
# # Focus
# "${mod}+j" = "focus left";
# "${mod}+k" = "focus down";
# "${mod}+l" = "focus up";
# "${mod}+semicolon" = "focus right";
2023-06-06 15:19:23 +00:00
2023-06-06 16:41:09 +00:00
# # Move
# "${mod}+Shift+j" = "move left";
# "${mod}+Shift+k" = "move down";
# "${mod}+Shift+l" = "move up";
# "${mod}+Shift+semicolon" = "move right";
2023-06-06 15:19:23 +00:00
2023-06-06 16:41:09 +00:00
# # My multi monitor setup
# # "${mod}+m" = "move workspace to output DP-2";
# # "${mod}+Shift+m" = "move workspace to output DP-5";
# };
2023-06-06 15:19:23 +00:00
2023-06-06 16:41:09 +00:00
# bars = [
# {
# position = "bottom";
# statusCommand = "${pkgs.i3status-rust}/bin/i3status-rs ${./i3status-rust.toml}";
# }
# ];
};
2023-06-06 15:19:23 +00:00
};
};
}