218 lines
4.8 KiB
Plaintext
218 lines
4.8 KiB
Plaintext
# https://wiki.hyprland.org/Configuring/
|
|
|
|
source = monitors.conf
|
|
|
|
$scritps = ~/.config/hypr/scripts
|
|
|
|
exec-once = mako &
|
|
exec-once = nm-applet &
|
|
exec-once = waybar &
|
|
exec-once = hyprpaper
|
|
exec-once = systemctl --user start hyprpolkitagent
|
|
|
|
exec-once = hyprpm reload -n
|
|
exec-once = sleep 1 && $scritps/random_wallpaper.sh
|
|
|
|
env = XCURSOR_SIZE,24
|
|
env = HYPRCURSOR_SIZE,24
|
|
env = HYPRCURSOR_THEME,Bibata-Modern-Ice
|
|
|
|
general {
|
|
gaps_in = 5
|
|
gaps_out = 10
|
|
|
|
border_size = 2
|
|
|
|
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
|
col.inactive_border = rgba(595959aa)
|
|
|
|
allow_tearing = true
|
|
|
|
layout = dwindle
|
|
}
|
|
|
|
decoration {
|
|
rounding = 10
|
|
rounding_power = 2
|
|
active_opacity = 1.0
|
|
inactive_opacity = 1.0
|
|
|
|
shadow {
|
|
enabled = true
|
|
range = 4
|
|
render_power = 3
|
|
color = rgba(1a1a1aee)
|
|
}
|
|
|
|
blur {
|
|
enabled = false
|
|
size = 3
|
|
passes = 1
|
|
|
|
vibrancy = 0.1696
|
|
}
|
|
}
|
|
|
|
animations {
|
|
enabled = false
|
|
}
|
|
|
|
dwindle {
|
|
pseudotile = true
|
|
preserve_split = true
|
|
}
|
|
|
|
master {
|
|
new_status = master
|
|
}
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#input
|
|
|
|
input {
|
|
kb_layout = us,no
|
|
kb_options = grp:win_space_toggle
|
|
kb_variant =
|
|
kb_model =
|
|
kb_rules =
|
|
|
|
follow_mouse = 1
|
|
|
|
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
|
accel_profile = flat
|
|
|
|
touchpad {
|
|
natural_scroll = false
|
|
}
|
|
}
|
|
|
|
# https://wiki.hyprland.org/Configuring/Binds/
|
|
|
|
$terminal = ghostty
|
|
$files = thunar
|
|
$menu = hyprlauncher
|
|
$browser = librewolf
|
|
$code = code
|
|
$lock = hyprlock
|
|
$colorPicker = hyprpicker -a -f hex -r -n -q
|
|
$screenshot = slurp | grim -g - - | wl-copy
|
|
|
|
$mainMod = SUPER
|
|
|
|
# Programs
|
|
bind = $mainMod, E, exec, $files
|
|
bind = $mainMod, R, exec, $menu
|
|
bind = $mainMod, B, exec, $browser
|
|
bind = $mainMod, L, exec, $lock
|
|
bind = $mainMod, C, exec, $code
|
|
bind = $mainMod SHIFT, C, exec, $colorPicker
|
|
bind = $mainMod, RETURN, exec, $terminal
|
|
bind = $mainMod SHIFT, E, exit
|
|
bind = $mainMod SHIFT, S, exec, $screenshot
|
|
|
|
# Window control
|
|
bind = $mainMod, Q, killactive,
|
|
bind = $mainMod SHIFT, E, exit,
|
|
bind = $mainMod, W, togglefloating,
|
|
bind = $mainMod, F, fullscreen,
|
|
|
|
# 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
|
|
|
|
plugin {
|
|
split-monitor-workspaces {
|
|
count = 3
|
|
keep_focused = 0
|
|
enable_notifications = 1
|
|
enable_persistent_workspaces = 1
|
|
}
|
|
}
|
|
|
|
$mainMod = SUPER
|
|
# Switch workspaces with mainMod + [0-5]
|
|
bind = $mainMod, 1, split-workspace, 1
|
|
bind = $mainMod, 2, split-workspace, 2
|
|
bind = $mainMod, 3, split-workspace, 3
|
|
bind = $mainMod, 4, split-workspace, 4
|
|
bind = $mainMod, 5, split-workspace, 5
|
|
|
|
# Move active window to a workspace with mainMod + SHIFT + [0-5]
|
|
bind = $mainMod SHIFT, 1, split-movetoworkspacesilent, 1
|
|
bind = $mainMod SHIFT, 2, split-movetoworkspacesilent, 2
|
|
bind = $mainMod SHIFT, 3, split-movetoworkspacesilent, 3
|
|
bind = $mainMod SHIFT, 4, split-movetoworkspacesilent, 4
|
|
bind = $mainMod SHIFT, 5, split-movetoworkspacesilent, 5
|
|
|
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
|
bindm = $mainMod, mouse:272, movewindow
|
|
bindm = $mainMod, mouse:273, resizewindow
|
|
|
|
# Laptop multimedia keys for volume and LCD brightness
|
|
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
|
|
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
|
|
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
|
|
|
|
# Requires playerctl
|
|
bindl = , XF86AudioNext, exec, playerctl next
|
|
bindl = , XF86AudioPause, exec, playerctl play-pause
|
|
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
|
bindl = , XF86AudioPrev, exec, playerctl previous
|
|
|
|
workspace = w[tv1], gapsout:0, gapsin:0
|
|
workspace = f[1], gapsout:0, gapsin:0
|
|
|
|
# https://wiki.hypr.land/Configuring/Window-Rules/
|
|
|
|
windowrule {
|
|
name = no-gaps-wtv1
|
|
match:float = false
|
|
match:workspace = w[tv1]
|
|
|
|
border_size = 0
|
|
rounding = 0
|
|
}
|
|
|
|
windowrule {
|
|
name = no-gaps-f1
|
|
match:float = false
|
|
match:workspace = f[1]
|
|
|
|
border_size = 0
|
|
rounding = 0
|
|
}
|
|
|
|
windowrule {
|
|
# Ignore maximize requests from all apps. You'll probably like this.
|
|
name = suppress-maximize-events
|
|
match:class = .*
|
|
|
|
suppress_event = maximize
|
|
}
|
|
|
|
windowrule {
|
|
# Fix some dragging issues with XWayland
|
|
name = fix-xwayland-drags
|
|
match:class = ^$
|
|
match:title = ^$
|
|
match:xwayland = true
|
|
match:float = true
|
|
match:fullscreen = false
|
|
match:pin = false
|
|
|
|
no_focus = true
|
|
}
|
|
|
|
# Hyprland-run windowrule
|
|
windowrule {
|
|
name = move-hyprland-run
|
|
|
|
match:class = hyprland-run
|
|
|
|
move = 20 monitor_h-120
|
|
float = yes
|
|
} |