{ config, pkgs, lib, ... }: with lib; { xsession.windowManager.i3 = { enable = true; package = pkgs.i3-gaps; config = let mod = "Mod4"; in { modifier = mod; # revisar luego si config.bars tiene un default danino fonts = { names = [ "JetBrains Mono" ]; style = "Regular"; size = 8.0; }; gaps = { inner = 10; outer = -10; }; window = { hideEdgeBorders = "both"; titlebar = false; }; # mkOptionDefault hace que se ponga la config por default # y se sobreescriba las cosas que pongo acA # NO QUITARLO. ver man home-configuration.nix keybindings = mkOptionDefault { "${mod}+Return" = "exec ${pkgs.kitty}/bin/kitty ${pkgs.tmux}/bin/tmux"; "${mod}+Tab" = "focus right"; "${mod}+Shift+Tab" = "focus left"; "${mod}+Shift+s" = "exec ${pkgs.maim}/bin/maim -s -u | ${pkgs.xclip}/bin/xclip -selection clipboard -t image/png -i"; "${mod}+Shift+w" = "move workspace to output right"; }; # menu = "${pkgs.dmenu}/bin/dmenu_run" startup = [ { command = "${pkgs.xss-lock}/bin/xss-lock --transfer-sleep-lock -- ${pkgs.i3lock}/bin/i3lock --nofork"; notification = false; } { command = "${pkgs.networkmanagerapplet}/bin/nm-applet"; notification = false; } { command = "${pkgs.xorg.xrandr}/bin/xrandr --output DisplayPort-0 --primary --mode 1920x1080 --rate 143.85 --pos 0x0 --rotate normal --output DisplayPort-1 --mode 1920x1080 --rate 59.94 --pos 1920x0 --rotate normal --output HDMI-A-0 --off --output HDMI-A-1 --off --output DVI-D-0 --off"; notification = false; always = true; } { command = "${pkgs.i3-gaps}/bin/i3-msg 'workspace $ws1; exec ${pkgs.firefox}/bin/firefox'"; } { command = "${pkgs.i3-gaps}/bin/i3-msg 'workspace $ws1; exec ${pkgs.tdesktop}/bin/telegram-desktop'"; } { command = "${pkgs.i3-gaps}/bin/i3-msg 'workspace $ws1; exec ${pkgs.signal-desktop}/bin/signal-desktop'"; } ]; workspaceOutputAssign = [ { output = "DisplayPort-0"; workspace = "$ws1"; } { output = "DisplayPort-1"; workspace = "$ws10"; } ]; bars = [ ]; }; }; }