feat(home/linux/gui/hyprland): hypridle & windowrules & keybindings

This commit is contained in:
Ryan Yin
2025-06-01 11:19:04 +08:00
parent 41be352b2c
commit fa9aaa6d27
7 changed files with 333 additions and 149 deletions

View File

@@ -1,12 +1,110 @@
#-- General ----------------------------------------------------
# General settings like MOD key, Gaps, Colors, etc.
# WINDOWS AND BORDERS
# ================================================
general {
gaps_in=5
gaps_out=10
layout = dwindle
border_size=4
col.active_border=0xFFB4A1DB
col.inactive_border=0xFF343A40
# Cursor
no_focus_fallback = true
# Gaps
gaps_in = 5
gaps_out = 5
# Borders
border_size = 2
col.active_border = 0xff4477ff
col.inactive_border = 0xff2f343f
# Resize
resize_on_border = false
hover_icon_on_border = false
# Allow tearing (you must add a window rule to the window to allow tearing)
allow_tearing = false
}
cursor {
inactive_timeout = 900 # Hide the cursor after n ms (also works on screenlock)
no_warps = false # Never move the cursor automatically
}
ecosystem {
no_donation_nag = true
}
misc {
# Allow windows to steal focus - (only xorg apps currently)
focus_on_activate = false
# Enable if you use personalized wallpapers
disable_hyprland_logo = true
}
# VISUAL EFFECTS
# ================================================
# See: https://wiki.hyprland.org/Configuring/Variables
decoration {
# Round borders
rounding = 8
# Shadow
shadow {
enabled = true
range = 4
render_power = 3
color = rgba(1a1a1aee)
}
active_opacity=1.0
inactive_opacity=0.9
fullscreen_opacity=1.0
blur {
enabled=true
new_optimizations = true
size=3 # minimum 1
passes=1 # minimum 1, more passes = more resource intensive.
ignore_opacity=false
}
}
# See: https://wiki.hyprland.org/Configuring/Animations
animations {
enabled = yes
# BEZIERS NAME X0 Y0 X1 Y1
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
# ANIMATION NAME ON SPEED CURVE STYLE
animation = windows, 1, 2, myBezier
animation = windowsOut, 1, 2, default, popin 80%
animation = border, 1, 5, default
animation = fadeIn, 1, 2, default
animation = fadeOut, 1, 2, default
animation = workspaces, 1, 6, default, fade
animation = specialWorkspace, 1, 3, myBezier, slide
}
# LAYOUT DETAILS
# ================================================
# See: https://wiki.hyprland.org/Configuring/Dwindle-Layout/
dwindle {
pseudotile = yes
preserve_split = yes
}
# See: https://wiki.hyprland.org/Configuring/Master-Layout
master {
new_on_top = true
}
# See: https://wiki.hyprland.org/Configuring/Variables
gestures {
workspace_swipe = off
}
#-- Input ----------------------------------------------------
@@ -32,42 +130,8 @@ input {
numlock_by_default=1
}
#-- Decoration ----------------------------------------------------
# Decoration settings like Rounded Corners, Opacity, Blur, etc.
decoration {
rounding=8 # Original: rounding=-1
active_opacity=1.0
inactive_opacity=0.9
fullscreen_opacity=1.0
blur {
enabled=true
size=3 # minimum 1
passes=1 # minimum 1, more passes = more resource intensive.
ignore_opacity=false
}
# Your blur "amount" is blur_size * blur_passes, but high blur_size (over around 5-ish) will produce artifacts.
# if you want heavy blur, you need to up the blur_passes.
# the more passes, the more you can up the blur_size without noticing artifacts.
}
#-- Animations ----------------------------------------------------
animations {
enabled=1
# animation=NAME,ONOFF,SPEED,CURVE,STYLE
animation=windows,1,8,default,popin 80%
animation=fadeOut,1,8,default
animation=fadeIn,1,8,default
animation=workspaces,1,8,default
#animation=workspaces,1,6,overshot
}
#-- Dwindle ----------------------------------------------------
dwindle {
pseudotile=0 # enable pseudotiling on dwindle
}
# Monitors
# ===================================================
monitor = , preferred, auto, 1