{ pkgs, depot, lib, config, ... }: { imports = [ ./graphical-client.nix ]; home.packages = lib.mkAfter (with pkgs; [ element-desktop ]); xsession.windowManager.i3 = { enable = true; config = { modifier = "Mod4"; keybindings = let modifier = config.xsession.windowManager.i3.config.modifier; in lib.mkOptionDefault { "${modifier}+l" = "exec loginctl lock-session"; "${modifier}+p" = "exec ${depot.nix.pkgs.flameshot}/bin/flameshot gui"; "${modifier}+Return" = "exec ${pkgs.kitty}/bin/kitty"; }; startup = [ { command = "xss-lock --transfer-sleep-lock -- i3lock --nofork"; notification = false; } { command = "${pkgs.networkmanagerapplet}/bin/nm-applet"; notification = false; } { command = "${pkgs._1password-gui}/bin/1password --silent"; notification = false; } ]; }; }; services.random-background = { enable = true; imageDirectory = "${depot.nix.pkgs.lukegb-wallpapers}"; interval = null; }; }