183 lines
8.4 KiB
Text
183 lines
8.4 KiB
Text
# WHY:
|
|
# ╭───────────────────────────────────────────────────╮
|
|
# │ This is the hyprland configuration file to source │
|
|
# │ and setup my hyprland environment │
|
|
# ╰───────────────────────────────────────────────────╯
|
|
|
|
|
|
# ╭──────────────╮
|
|
# │ Source files │
|
|
# ╰──────────────╯
|
|
$h_conf = ~/.config/hypr
|
|
|
|
# NOTE:
|
|
#╭───────────────────────────────────────────────────────────────────────────╮
|
|
#│ sources monitors config outside of git repo to let useroptions be a thing │
|
|
#│ also sources the following variables: │
|
|
#│ > $main <- this should contain the main monitor (e.g. DP-1 or HDMI-A-1..) │
|
|
#│ > $secondary <- This is just the second monitor │
|
|
#╰───────────────────────────────────────────────────────────────────────────╯
|
|
source = $HOME/.monitors.conf
|
|
# variable for specialworkspace (has to be configured in .monitors.conf like -> 'workspace = name:x, on-created-empty:$terminal')
|
|
$terminal = foot
|
|
|
|
# $secondary = $main # <- Uncomment this, if you only have one monitor
|
|
# ─< main-workspaces >────────────────────────────────────────────────────────────────────────────
|
|
workspace = 1, monitor:$main, persitent:true
|
|
workspace = 2, monitor:$secondary, persitent:true
|
|
workspace = 3, monitor:$main, persitent:true
|
|
workspace = 4, monitor:$secondary, persitent:true, inactive_opacity:1
|
|
workspace = 5, monitor:$main
|
|
workspace = 6, monitor:$main
|
|
workspace = 7, monitor:$secondary
|
|
workspace = 8, monitor:$secondary
|
|
workspace = 9, monitor:$main, persistent:true, allow-tearing:true
|
|
# ─< Gaming workspace >──────────────────────────────────────────────────────────────────────
|
|
workspace = 69, monitor:$main, persistent:true, allow-tearing:true, gapsin:0, gapsout:0, rounding:0, border:0
|
|
|
|
# ────────────────────────────────────────< specials >────────────────────────────────────────
|
|
workspace = special:magic, monitor:$main, on-created-empty:$terminal, border:0
|
|
|
|
# ─< source hotkeys file for hyprland >──────────────────────────────────────────────────────
|
|
source = $h_conf/hotkeys.conf
|
|
|
|
# ─< initialisation script >─────────────────────────────────────────────────────────────────
|
|
exec-once = $h_conf/.scripts/init.sh
|
|
|
|
exec-once = hypridle
|
|
|
|
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
|
|
|
# See https://wiki.hyprland.org/Configuring/Environment-variables/
|
|
# ╭───────────────────────╮
|
|
# │ Environment-variables │
|
|
# ╰───────────────────────╯
|
|
|
|
env = XCURSOR_SIZE,16
|
|
env = HYPRCURSOR_THEME,catppuccin-mocha-dark-cursors
|
|
env = HYPRCURSOR_SIZE,16
|
|
|
|
env = QT_QPA_PLATFORMTHEME,qt6ct # change to qt6ct if you have that
|
|
env = QT_QPA_PLATFORM,wayland;xcb
|
|
env = QT_SCALE_FACTOR,1
|
|
# env = GTK_THEME,Nordic-darker
|
|
env = XDG_CURRENT_DESKTOP,Hyprland
|
|
env = XDG_SESSION_DESKTOP,Hyprland
|
|
env = XDG_SESSION_TYPE,wayland
|
|
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
|
|
|
|
# ──────────────────────────────────────< windowrules >─────────────────────────────────────
|
|
windowrule = workspace special:windoof, title:^(.*[Ll]ooking [Gg]lass.*)
|
|
windowrule = workspace 69, title:^(.*[Ss]team.*)
|
|
windowrule = workspace 69, title:^(.*GDLauncher.*)
|
|
|
|
# ╭───────────────╮
|
|
# │ LOOK AND FEEL │
|
|
# ╰───────────────╯
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#general
|
|
general {
|
|
gaps_in = 1
|
|
gaps_out = 4
|
|
|
|
border_size = 1
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
col.active_border = rgba(ffffffe0) rgba(8f8f8fe0) 45deg
|
|
col.inactive_border = rgba(2f2f2fe0)
|
|
|
|
extend_border_grab_area = false
|
|
resize_on_border = true
|
|
|
|
# layout = master
|
|
layout = dwindle
|
|
|
|
snap {
|
|
enabled = true
|
|
window_gap = 12
|
|
monitor_gap = 24
|
|
border_overlap = false
|
|
}
|
|
|
|
allow_tearing = false
|
|
}
|
|
|
|
windowrule = immediate, class:^(cs2)$
|
|
windowrule = immediate, class:^(steam)$
|
|
windowrule = immediate, class:^(GDLauncher)$
|
|
# windowrule = immediate, class:^(cs2)$
|
|
# windowrule = immediate, class:^(cs2)$
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
|
decoration {
|
|
rounding = 0
|
|
rounding_power = 10
|
|
|
|
# Change transparency of focused and unfocused windows
|
|
active_opacity = 0.98
|
|
# inactive_opacity = 0.284
|
|
fullscreen_opacity = 1
|
|
dim_inactive = true
|
|
dim_strength = 0.3
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#blur
|
|
blur {
|
|
enabled = true
|
|
size = 5
|
|
passes = 2
|
|
|
|
vibrancy = 0.01696
|
|
}
|
|
}
|
|
|
|
# ▄▀█ █▄░█ █ █▀▄▀█ ▄▀█ ▀█▀ █ █▀█ █▄░█
|
|
# █▀█ █░▀█ █ █░▀░█ █▀█ ░█░ █ █▄█ █░▀█
|
|
|
|
|
|
animations {
|
|
enabled = true
|
|
# Animation curves
|
|
|
|
bezier = linear, 0, 0, 1, 1
|
|
bezier = md3_standard, 0.2, 0, 0, 1
|
|
bezier = md3_decel, 0.05, 0.7, 0.1, 1
|
|
bezier = md3_accel, 0.3, 0, 0.8, 0.15
|
|
bezier = overshot, 0.05, 0.9, 0.1, 1.1
|
|
bezier = crazyshot, 0.1, 1.5, 0.76, 0.92
|
|
bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
|
|
bezier = menu_decel, 0.1, 1, 0, 1
|
|
bezier = menu_accel, 0.38, 0.04, 1, 0.07
|
|
bezier = easeInOutCirc, 0.85, 0, 0.15, 1
|
|
bezier = easeOutCirc, 0, 0.55, 0.45, 1
|
|
bezier = easeOutExpo, 0.16, 1, 0.3, 1
|
|
bezier = softAcDecel, 0.26, 0.26, 0.15, 1
|
|
bezier = md2, 0.4, 0, 0.2, 1 # use with .2s duration
|
|
# Animation configs
|
|
animation = windows, 1, 1, md3_decel, popin 60%
|
|
animation = windowsIn, 1, 1, md3_decel, popin 60%
|
|
animation = windowsOut, 1, 1, md3_accel, popin 60%
|
|
animation = border, 1, 1, default
|
|
animation = fade, 1, 1, md3_decel
|
|
# animation = layers, 1, 2, md3_decel, slide
|
|
animation = layersIn, 1, 1, menu_decel, slide
|
|
animation = layersOut, 1, 1, menu_accel
|
|
animation = fadeLayersIn, 1, 1, menu_decel
|
|
animation = fadeLayersOut, 1, 1, menu_accel
|
|
animation = workspaces, 1, 1, menu_decel, slide
|
|
# animation = workspaces, 1, 2.5, softAcDecel, slide
|
|
# animation = workspaces, 1, 7, menu_decel, slidefade 15%
|
|
# animation = specialWorkspace, 1, 3, md3_decel, slidefadevert 15%
|
|
animation = specialWorkspace, 1, 1, md3_decel, slidevert
|
|
}
|
|
|
|
# https://wiki.hyprland.org/Configuring/Variables/#misc
|
|
misc {
|
|
vrr = 2
|
|
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
|
|
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
|
|
enable_swallow = true
|
|
swallow_regex = ^(ghostty|wezterm-gui|kitty|Alacritty|foot)$
|
|
animate_manual_resizes = true
|
|
animate_mouse_windowdragging = true
|
|
new_window_takes_over_fullscreen = 2
|
|
}
|