98 lines
2.7 KiB
Nix
98 lines
2.7 KiB
Nix
{ config, lib, pkgs, user, ... }:
|
|
|
|
let
|
|
cfg = config.xsession.windowManager.i3;
|
|
font.name = "DejaVu Sans Mono";
|
|
font.size = 12.0;
|
|
in
|
|
{
|
|
imports = [
|
|
./i3status-rust.nix
|
|
];
|
|
|
|
home.file = {
|
|
workspaces = {
|
|
source = ./workspaces;
|
|
target = ".config/i3/workspaces";
|
|
recursive = true;
|
|
};
|
|
wallpapers = {
|
|
source = ./wallpapers;
|
|
target = ".config/i3/wallpapers";
|
|
recursive = true;
|
|
};
|
|
};
|
|
|
|
xsession.windowManager.i3 = {
|
|
enable = true;
|
|
|
|
config = {
|
|
modifier = "Mod4";
|
|
terminal = "${pkgs.kitty}/bin/kitty";
|
|
|
|
fonts = {
|
|
names = [ font.name ];
|
|
size = font.size;
|
|
};
|
|
|
|
window = {
|
|
titlebar = false;
|
|
border = 0;
|
|
};
|
|
|
|
floating = {
|
|
titlebar = false;
|
|
border = 0;
|
|
};
|
|
|
|
menu = "${pkgs.rofi}/bin/rofi -show drun";
|
|
|
|
bars = [{
|
|
mode = "hide";
|
|
position = "top";
|
|
statusCommand = "${pkgs.i3status-rust}/bin/i3status-rs ~/.config/i3status-rust/config-default.toml";
|
|
|
|
fonts = {
|
|
names = [ font.name ];
|
|
size = font.size;
|
|
};
|
|
}];
|
|
|
|
defaultWorkspace = "workspace number 1";
|
|
|
|
keybindings = lib.mkOptionDefault {
|
|
"${cfg.config.modifier}+Shift+o" = "exec xdg-open \"zoommtg://zoom.us/join?action=join&confno=4861587170&pwd=ZVk3aHphcWppY21ONjZOMVh6STN6dz09\"";
|
|
};
|
|
|
|
startup = [
|
|
{ command = "i3-msg 'workspace 1; append_layout ~/.config/i3/workspaces/workspace-1.json'"; }
|
|
{ command = "i3-msg 'workspace 2; append_layout ~/.config/i3/workspaces/workspace-2.json'"; }
|
|
{ command = "i3-msg 'workspace 4; append_layout ~/.config/i3/workspaces/workspace-4.json'"; }
|
|
{ command = "i3-msg 'workspace 5; append_layout ~/.config/i3/workspaces/workspace-5.json'"; }
|
|
{ command = "kitty"; notification = false; }
|
|
{ command = "firefox"; notification = false; }
|
|
{ command = "element-desktop"; notification = false; }
|
|
{ command = "keepassxc"; notification = false; }
|
|
{ command = "nextcloud"; notification = false; }
|
|
{ command = "signal-desktop"; notification = false; }
|
|
{ command = "slack"; notification = false; }
|
|
{ command = "telegram-desktop"; notification = false; }
|
|
{ command = "thunderbird"; notification = false; }
|
|
{ command = "whatsapp-for-linux"; notification = false; }
|
|
{ command = "zoom"; notification = false; }
|
|
];
|
|
|
|
assigns = {
|
|
"6" = [{ class = "^\.zoom $"; }];
|
|
};
|
|
};
|
|
};
|
|
|
|
services.betterlockscreen = {
|
|
enable = true;
|
|
arguments = [ "--update /home/mandlm/.config/i3/wallpapers/nix-wallpaper-dracula.png" ];
|
|
};
|
|
|
|
services.unclutter.enable = true;
|
|
}
|