From 11dd1c52a4f6d817fae5456554a1dba1915cfe80 Mon Sep 17 00:00:00 2001 From: MrAkells Date: Wed, 30 Apr 2025 00:17:48 +0300 Subject: [PATCH] hyprland: update config --- .config/hypr/hyprland.conf | 203 +++++++++++-------------------------- 1 file changed, 61 insertions(+), 142 deletions(-) diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf index 3996d2d..54c457b 100644 --- a/.config/hypr/hyprland.conf +++ b/.config/hypr/hyprland.conf @@ -1,71 +1,38 @@ -################ -### MONITORS ### -################ +monitor=,2560x1440@180,auto,auto -# See https://wiki.hyprland.org/Configuring/Monitors/ -monitor=DP-1,2560x1440@180,0x0,1 +exec-once = waybar +exec-once = ~/.scripts/wallpaper-changer.sh +exec-once = [workspace 3 silent] chromium +exec-once = [workspace 4 silent] telegram-desktop +exec-once = [workspace 6 silent] alacritty -e ncspot - -################# -### AUTOSTART ### -################# - -# Autostart necessary processes (like notifications daemons, status bars, etc.) -# Or execute your favorite apps at launch like this: - -# exec-once = $terminal -# exec-once = nm-applet & -exec-once = uwsm app -- hyprpaper -exec-once = uwsm app -- waybar -exec-once = uwsm app -- mako - - -############################# -### ENVIRONMENT VARIABLES ### -############################# - -# See https://wiki.hyprland.org/Configuring/Environment-variables/ - -env = XCURSOR_SIZE,24 env = XCURSOR_THEME,Qogir-white-cursors +env = XCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24 -env = MOZ_ENABLE_WAYLAND,1 env = ELECTRON_OZONE_PLATFORM_HINT,wayland +env = MOZ_ENABLE_WAYLAND,1 env = QT_QPA_PLATFORMTHEME,qt6ct - -##################### -### LOOK AND FEEL ### -##################### - -# Refer to https://wiki.hyprland.org/Configuring/Variables/ - -# https://wiki.hyprland.org/Configuring/Variables/#general general { gaps_in = 5 gaps_out = 10 - border_size = 2 + border_size = 3 - # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg col.inactive_border = rgba(595959aa) - # Set to true enable resizing windows by clicking and dragging on borders and gaps resize_on_border = false - # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on - allow_tearing = true + allow_tearing = false layout = dwindle } -# https://wiki.hyprland.org/Configuring/Variables/#decoration decoration { rounding = 10 rounding_power = 2 - # Change transparency of focused and unfocused windows active_opacity = 1.0 inactive_opacity = 1.0 @@ -76,22 +43,18 @@ decoration { color = rgba(1a1a1aee) } - # https://wiki.hyprland.org/Configuring/Variables/#blur blur { enabled = true - size = 4 - passes = 2 + size = 3 + passes = 1 vibrancy = 0.1696 } } -# https://wiki.hyprland.org/Configuring/Variables/#animations animations { enabled = yes, please :) - # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more - bezier = easeOutQuint,0.23,1,0.32,1 bezier = easeInOutCubic,0.65,0.05,0.36,1 bezier = linear,0,0,1,1 @@ -116,46 +79,27 @@ animations { animation = workspacesOut, 1, 1.94, almostLinear, fade } -# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/ -# "Smart gaps" / "No gaps when only" -# uncomment all if you wish to use that. -#workspace = w[tv1], gapsout:0, gapsin:0 -#workspace = f[1], gapsout:0, gapsin:0 -#windowrule = bordersize 0, floating:0, onworkspace:w[tv1] -#windowrule = rounding 0, floating:0, onworkspace:w[tv1] -#windowrule = bordersize 0, floating:0, onworkspace:f[1] -#windowrule = rounding 0, floating:0, onworkspace:f[1] - -# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more dwindle { - pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below - preserve_split = true # You probably want this + pseudotile = true + preserve_split = true } -# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more master { new_status = master } -# https://wiki.hyprland.org/Configuring/Variables/#misc misc { force_default_wallpaper = 0 disable_hyprland_logo = true - vrr = 0 + vrr = 2 } render { direct_scanout = 1 } - -############# -### INPUT ### -############# - -# https://wiki.hyprland.org/Configuring/Variables/#input input { - kb_layout = us,ua,ru + kb_layout = us, ru, ua kb_variant = kb_model = kb_options = grp:win_space_toggle @@ -164,91 +108,67 @@ input { follow_mouse = 1 accel_profile = flat - sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + sensitivity = 0 touchpad { natural_scroll = false } } -# https://wiki.hyprland.org/Configuring/Variables/#gestures -gestures { - workspace_swipe = false -} +bind = SUPER, RETURN, exec, alacritty +bind = SUPER, E, exec, nemo +bind = SUPER, R, exec, rofi -show run +bind = SUPER, D, exec, rofi -show drun +bind = , Print, exec, grim - | wl-copy && notify-send "Screenshot copied to clipboard!" +bind = SUPER SHIFT, S, exec, grim -g "$(slurp)" - | wl-copy && notify-send "Screenshot copied to clipboard!" -# Example per-device config -# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more -device { - name = epic-mouse-v1 - sensitivity = -0.5 -} - - -################### -### KEYBINDINGS ### -################### - -# See https://wiki.hyprland.org/Configuring/Keywords/ -$mainMod = SUPER # Sets "Windows" key as main modifier - -# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more -bind = $mainMod, RETURN, exec, uwsm app -- alacritty -bind = $mainMod, Q, killactive, -bind = $mainMod ALT, E, exit, -bind = $mainMod, E, exec, uwsm app -- nemo -bind = $mainMod, F, fullscreen, -bind = $mainMod, V, togglefloating, -bind = $mainMod, R, exec, uwsm app -- wofi --show run -bind = $mainMod, D, exec, uwsm app -- wofi --show drun -bind = $mainMod, P, pseudo, # dwindle -bind = $mainMod, J, togglesplit, # dwindle -bind = $mainMod SHIFT, S, exec, hyprshot -m region --clipboard-only -bind = , PRINT, exec, hyprshot -m active -m output --clipboard-only +bind = SUPER, Q, killactive, +bind = SUPER, S, togglefloating, +bind = SUPER, F, fullscreen, +bind = SUPER, P, pseudo, +bind = SUPER, J, togglesplit, +bind = SUPER ALT, E, exit, # Move focus with mainMod + arrow keys -bind = $mainMod, left, movefocus, l -bind = $mainMod, right, movefocus, r -bind = $mainMod, up, movefocus, u -bind = $mainMod, down, movefocus, d +bind = SUPER, left, movefocus, l +bind = SUPER, right, movefocus, r +bind = SUPER, up, movefocus, u +bind = SUPER, down, movefocus, d # Switch workspaces with mainMod + [0-9] -bind = $mainMod, 1, workspace, 1 -bind = $mainMod, 2, workspace, 2 -bind = $mainMod, 3, workspace, 3 -bind = $mainMod, 4, workspace, 4 -bind = $mainMod, 5, workspace, 5 -bind = $mainMod, 6, workspace, 6 -bind = $mainMod, 7, workspace, 7 -bind = $mainMod, 8, workspace, 8 -bind = $mainMod, 9, workspace, 9 -bind = $mainMod, 0, workspace, 10 +bind = SUPER, 1, workspace, 1 +bind = SUPER, 2, workspace, 2 +bind = SUPER, 3, workspace, 3 +bind = SUPER, 4, workspace, 4 +bind = SUPER, 5, workspace, 5 +bind = SUPER, 6, workspace, 6 +bind = SUPER, 7, workspace, 7 +bind = SUPER, 8, workspace, 8 +bind = SUPER, 9, workspace, 9 +bind = SUPER, 0, workspace, 10 # Move active window to a workspace with mainMod + SHIFT + [0-9] -bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1 -bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2 -bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3 -bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4 -bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5 -bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6 -bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7 -bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8 -bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9 -bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10 - -# Example special workspace (scratchpad) -#bind = $mainMod, S, togglespecialworkspace, magic -#bind = $mainMod SHIFT, S, movetoworkspacesilent, special:magic +bind = SUPER SHIFT, 1, movetoworkspace, 1 +bind = SUPER SHIFT, 2, movetoworkspace, 2 +bind = SUPER SHIFT, 3, movetoworkspace, 3 +bind = SUPER SHIFT, 4, movetoworkspace, 4 +bind = SUPER SHIFT, 5, movetoworkspace, 5 +bind = SUPER SHIFT, 6, movetoworkspace, 6 +bind = SUPER SHIFT, 7, movetoworkspace, 7 +bind = SUPER SHIFT, 8, movetoworkspace, 8 +bind = SUPER SHIFT, 9, movetoworkspace, 9 +bind = SUPER SHIFT, 0, movetoworkspace, 10 # Scroll through existing workspaces with mainMod + scroll -bind = $mainMod, mouse_down, workspace, e+1 -bind = $mainMod, mouse_up, workspace, e-1 +bind = SUPER, mouse_down, workspace, e+1 +bind = SUPER, mouse_up, workspace, e-1 # Move/resize windows with mainMod + LMB/RMB and dragging -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow +bindm = SUPER, mouse:272, movewindow +bindm = SUPER, mouse:273, resizewindow # Laptop multimedia keys for volume and LCD brightness -bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ +bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+ bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle @@ -268,13 +188,12 @@ bindl = , XF86AudioPrev, exec, playerctl previous # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules +# Bitwarden float popup +windowrule = float,title:^(_crx_nngceckbapebfimnlniiiahkandclblb)$ + windowrule = float,class:^(org.telegram.desktop)$ windowrule = opacity 0.85, class:^(code)$ -windowrule = immediate, class:^(gamescope)$ -windowrule = float, class:^(gamescope)$ -windowrule = noanim, class:^(gamescope)$ - # Ignore maximize requests from apps. You'll probably like this. windowrule = suppressevent maximize, class:.*