nixos/modules/_home/niri.nix
Zoty 8ba1b5e9c8
fix: debloat some services
note: when I created the config I struggled with making desktop
apps work, to a point where every possible solution was tried.
if something breaks in the future and stops working, the answer
is here.
2026-03-28 03:38:11 -03:00

85 lines
2.2 KiB
Nix

{ pkgs, ... }: {
home.sessionVariables = {
XDG_SESSION_TYPE = "wayland";
XDG_CURRENT_DESKTOP = "niri";
XDG_SESSION_DESKTOP = "niri";
QT_QPA_PLATFORM = "wayland;xcb";
QT_AUTO_SCREEN_SCALE_FACTOR = "1";
QT_ENABLE_HIGHDPI_SCALING = "1";
QT_SCALE_FACTOR_ROUNDING_POLICY = "RoundPreferFloor";
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
XDG_MENU_PREFIX = "plasma-";
};
xdg.configFile."niri/config.kdl".text = ''
// Modificadores: Mod = Super (tecla Windows)
input {
keyboard {
xkb {
layout "en"
}
}
touchpad {
tap
natural-scroll
}
}
layout {
gaps 8
border {
width 2
active-color "#7aa2f7"
inactive-color "#3b4261"
}
}
prefer-no-csd
screenshot-path "~/Imagens/screenshots/%Y-%m-%d %H-%M-%S.png"
binds {
// Aplicativos
Mod+Return { spawn "wezterm"; }
Mod+D { spawn "fuzzel"; }
Mod+Q { close-window; }
// Foco
Mod+Left { focus-column-left; }
Mod+Right { focus-column-right; }
Mod+Up { focus-window-up; }
Mod+Down { focus-window-down; }
// Mover janelas
Mod+Shift+Left { move-column-left; }
Mod+Shift+Right { move-column-right; }
Mod+Shift+Up { move-window-up; }
Mod+Shift+Down { move-window-down; }
// Workspaces
Mod+1 { focus-workspace 1; }
Mod+2 { focus-workspace 2; }
Mod+3 { focus-workspace 3; }
Mod+4 { focus-workspace 4; }
Mod+5 { focus-workspace 5; }
Mod+Shift+1 { move-window-to-workspace 1; }
Mod+Shift+2 { move-window-to-workspace 2; }
Mod+Shift+3 { move-window-to-workspace 3; }
Mod+Shift+4 { move-window-to-workspace 4; }
Mod+Shift+5 { move-window-to-workspace 5; }
// Sistema
Mod+Shift+E { quit; }
Mod+L { spawn "swaylock"; }
// Volume
XF86AudioRaiseVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "5%+"; }
XF86AudioLowerVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "5%-"; }
XF86AudioMute { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }
// Screenshot
Print { screenshot; }
Mod+Print { screenshot-screen; }
}
'';
}