{ config, pkgs, ... }: { imports = [ ../common/home.nix ]; home.stateVersion = "24.05"; programs.zsh = { localVariables = { PROMPT = '' ╭─(%F{green}%B%n@%m%f%b)──(%F{blue}%B%50<...<%5~%<<%b%f)──(%B%?%b) ╰─(%B%j%b%# ''; }; }; wayland.windowManager.hyprland = { settings = { "$col_accentdark" = "rgb(00ff00)"; "$col_accentlight" = "rgb(80ff80)"; "$col_inactive" = "rgba(80808040)"; "$col_urgent" = "rgb(ffd966)"; animations = { enabled = false; }; decoration = { inactive_opacity = 1.0; drop_shadow = false; blur.enabled = false; }; gestures.workspace_swipe = true; input.kb_layout = "fr"; input.touchpad = { disable_while_typing = false; natural_scroll = true; }; misc.animate_manual_resizes = false; bindel = [ ", XF86AudioRaiseVolume, exec, swayosd-client --output-volume=raise" ", XF86AudioLowerVolume, exec, swayosd-client --output-volume=lower" ", XF86AudioMute, exec, swayosd-client --output-volume=mute-toggle" ", XF86MonBrightnessUp, exec, swayosd-client --brightness=raise" ", XF86MonBrightnessDown, exec, swayosd-client --brightness=lower" ]; }; }; programs.niri = { enable = true; package = pkgs.niri; settings = { input = { keyboard = { xkb.layout = "fr"; xkb.options = "compose:rctrl"; repeat-delay = 300; repeat-rate = 100; }; touchpad = { tap = true; natural-scroll = true; accel-profile = "flat"; }; mouse.accel-profile = "flat"; warp-mouse-to-focus = true; focus-follows-mouse.enable = true; }; outputs."eDP-1" = { scale = 1; }; layout = { gaps = 10; default-column-width.proportion = 0.5; preset-window-heights = [{ proportion = 1.0 / 2.0; }]; focus-ring.enable = false; border = { enable = true; width = 2; active.color = "#35f835e5"; inactive.color = "#80808080"; }; }; workspaces = { w1 = { name = "admin"; }; w2 = { name = "everything"; }; w3 = { name = "apps"; }; }; window-rules = [{ matches = [{ app-id = "im.riot.Riot"; }]; open-on-workspace = "apps"; } { geometry-corner-radius = { top-left = 10.0; top-right = 10.0; bottom-right = 10.0; bottom-left = 10.0; }; clip-to-geometry = true; } ]; prefer-no-csd = true; screenshot-path = "~/screenshots/%Y%m%d%H%m%N.png"; binds = with config.lib.niri.actions; { "Mod+Space".action = spawn "alacritty"; "Mod+Shift+Space".action = spawn "alacritty -e sudo -i"; "Mod+F1".action = spawn "anyrun"; "Mod+L".action = spawn "hyprlock"; "XF86AudioRaiseVolume" = { allow-when-locked = true; action = spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"; }; "XF86AudioLowerVolume" = { allow-when-locked = true; action = spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"; }; "XF86AudioMute" = { allow-when-locked = true; action = spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }; "XF86MonBrightnessDown" = { allow-when-locked = true; action = spawn "brightnessctl" "set" "10-"; }; "XF86MonBrightnessUp" = { allow-when-locked = true; action = spawn "brightnessctl" "set" "+10"; }; "Mod+Shift+Q".action = close-window; "Mod+A".action = focus-column-left; "Mod+Z".action = focus-window-or-workspace-up; "Mod+S".action = focus-window-or-workspace-down; "Mod+D".action = focus-column-right; "Mod+Shift+A".action = move-column-left; "Mod+Shift+Z".action = move-window-up; "Mod+Shift+S".action = move-window-down; "Mod+Shift+D".action = move-column-right; "Mod+Page_Up".action = focus-workspace-up; "Mod+Page_Down".action = focus-workspace-down; "Mod+Shift+Page_Up".action = move-column-to-workspace-up; "Mod+Shift+Page_Down".action = move-column-to-workspace-down; "Mod+WheelScrollDown".action = focus-column-right; "Mod+WheelScrollUp".action = focus-column-left; "Mod+Shift+WheelScrollDown".action = move-column-right; "Mod+Shift+WheelScrollUp".action = move-column-left; "Alt+TouchpadScrollDown".action = spawn "brightnessctl" "set" "10-"; "Alt+TouchpadScrollUp".action = spawn "brightnessctl" "set" "+10"; "Mod+ampersand".action = focus-workspace 1; "Mod+eacute".action = focus-workspace 2; "Mod+quotedbl".action = focus-workspace 3; "Mod+apostrophe".action = focus-workspace 4; "Mod+Shift+ampersand".action = move-column-to-workspace 1; "Mod+Shift+eacute".action = move-column-to-workspace 2; "Mod+Shift+quotedbl".action = move-column-to-workspace 3; "Mod+Shift+apostrophe".action = move-column-to-workspace 4; "Mod+Tab".action = focus-workspace-previous; "Mod+F".action = maximize-column; "Mod+W".action = set-column-width "-10%"; "Mod+X".action = set-column-width "+10%"; "Mod+Shift+W".action = set-window-height "-10%"; "Mod+Shift+X".action = set-window-height "+10%"; "Print".action = screenshot-screen; "Shift+Print".action = screenshot; "Alt+Print".action = screenshot-window; "Mod+Shift+Backspace" = { action = quit { skip-confirmation = true; }; }; "XF86Display".action = power-off-monitors; }; }; }; }