From f8e602d99f623c0c61d585db74383592a171e4c0 Mon Sep 17 00:00:00 2001
From: Trianta <56975502+Trimutex@users.noreply.github.com>
Date: Fri, 21 Nov 2025 06:51:41 -0600
Subject: [PATCH] 00: update config
---
hypr/armory.conf | 20 ++--
hypr/hyprland.conf | 212 ++++++++++++++++++++++++-----------------
hypr/scripts/xrandr.sh | 4 +
waybar/config | 2 +-
4 files changed, 141 insertions(+), 97 deletions(-)
diff --git a/hypr/armory.conf b/hypr/armory.conf
index b1d32f6..4af755b 100644
--- a/hypr/armory.conf
+++ b/hypr/armory.conf
@@ -102,7 +102,7 @@ general {
gaps_in = 0
gaps_out = 4
border_size = 2
- col.active_border = 0x000000
+ col.active_border = 0x000000
col.inactive_border = 0x000000
layout = master
resize_on_border = false
@@ -110,9 +110,9 @@ general {
decoration {
rounding = 0
- shadow {
- enabled = false
- }
+ shadow {
+ enabled = false
+ }
dim_special = 0.3
fullscreen_opacity = 1.0
@@ -165,7 +165,7 @@ misc {
vrr = 1
vfr = true
middle_click_paste = false
- render_unfocused_fps = 15
+ render_unfocused_fps = 15
}
xwayland {
@@ -178,12 +178,12 @@ cursor {
inactive_timeout = 2
no_warps = false
default_monitor = DP-1
- warp_on_change_workspace = false
+ warp_on_change_workspace = false
}
debug {
disable_logs = true
- #overlay = false
+ #overlay = false
}
render {
@@ -193,9 +193,9 @@ render {
}
experimental {
- wide_color_gamut = false
- hdr = false
- xx_color_management_v4 = true
+ wide_color_gamut = false
+ hdr = false
+ xx_color_management_v4 = true
}
# < End Section >
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf
index 6d5de5a..ef95359 100755
--- a/hypr/hyprland.conf
+++ b/hypr/hyprland.conf
@@ -2,11 +2,40 @@ source = ~/.config/hypr/mocha.conf # Catppuccin colorscheme
# < Start Section >
# monitors
+# Main
+monitorv2 {
+ output = DP-1
+ # 3440x1440@160
+ # mode = 3440x1440@160
+ # 3440x1440@155
+ mode = modeline 1177.50 3440 3744 4128 4816 1440 1443 1453 1578 -hsync +vsync
+ position = 0x1350 # alt: 0x0
+ vrr = true
+ bitdepth = 10
+ cm = auto
+ sdr_min_luminance = 0.005
+ sdr_max_luminance = 250 #
+ supports_wide_color = true
+ supports_hdr = true
+ sdrbrightness = 1.1
+ sdrsaturation = 1.1
+}
-#monitor=HDMI-A-4, disabled
-
-monitor = HDMI-A-4, 3840x2160@60, 0x0, 1.6, bitdepth, 10, transform, 1
-monitor = DP-1, 3440x1440@160, 1350x0, 1, vrr, 1, bitdepth, 10
+# Side
+monitorv2 {
+ output = HDMI-A-4
+ mode = 3840x2160@60 # alt: disabled
+ transform = 2
+ scale = 1.6
+ position = 520x0
+ vrr = true
+ bitdepth = 10
+ cm = auto
+ sdr_min_luminance = 0.005
+ sdr_max_luminance = 150 #
+ sdrbrightness = 1.0
+ sdrsaturation = 1.0
+}
# < End Section >
@@ -55,17 +84,18 @@ exec-once = dunst
exec-once = swww-daemon
exec-once = syncthing --no-browser
exec-once = xwaylandvideobridge
+exec-once = pulsemeeter
# main applications
exec-once = thunderbird
-#exec-once = obs
+exec-once = obs
#exec-once = discord
-exec-once = vesktop
+exec-once = vesktop --ozone-platform-hint=auto --enable-webrtc-pipewire-capturer --enable-features=WaylandWindowDecorations
exec-once = spotify
exec-once = alacritty
exec-once = firefox
-#exec-once = bolt
-exec-once = taskset -c 1-7 steam
+exec-once = env JAVA_HOME=/usr/lib/jvm/java-17-openjdk bolt > /tmp/bolt-launcher.log 2>&1
+exec-once = taskset -c 0-19 steam
# obsidian planner
exec-once = ~/sync/obsidian/Trinote/create-week.sh
@@ -91,8 +121,7 @@ workspace = 4, monitor:DP-1, persistent:true
# Workspaces swapped for ease of use
workspace = 6, monitor:DP-1, persistent:true
-workspace = 5, monitor:HDMI-A-4, persistent:true
-workspace = 5, layoutopt:orientation:right
+workspace = 5, monitor:HDMI-A-4, persistent:true, gapsout:0
# < End Section >
@@ -103,7 +132,7 @@ workspace = 5, layoutopt:orientation:right
general {
gaps_in = 0
- gaps_out = 4
+ gaps_out = 25, 440, 25, 440
border_size = 0
col.active_border = 0x000000
col.inactive_border = 0x000000
@@ -112,7 +141,7 @@ general {
}
decoration {
- rounding = 0
+ rounding = 4
shadow {
enabled = false
}
@@ -150,7 +179,7 @@ input {
kb_layout = us
kb_options = caps:escape
follow_mouse = 2
- mouse_refocus = false;
+ mouse_refocus = true
force_no_accel = 1
}
@@ -178,8 +207,9 @@ xwayland {
}
cursor {
- inactive_timeout = 2
+ inactive_timeout = 5
no_warps = false
+ persistent_warps = true
default_monitor = DP-1
warp_on_change_workspace = false
}
@@ -187,17 +217,17 @@ cursor {
debug {
disable_logs = true
#overlay
+ full_cm_proto = true
}
render {
- explicit_sync = 1
- explicit_sync_kms = 1
- direct_scanout = false
+ new_render_scheduling = false
+ direct_scanout = true
+ cm_fs_passthrough = 1
+ cm_enabled = true
}
experimental {
- wide_color_gamut = true
- hdr = false
xx_color_management_v4 = true
}
@@ -220,49 +250,48 @@ master {
# window rules
# core
-workspace = w[t1], gapsout:0, border:0, rounding:0
-windowrulev2 = suppressevent maximize, class:^(.*)$
-windowrulev2 = renderunfocused,class:^(.*)$
-windowrulev2 = opacity 0.80 0.80,class:^(.*)$
-windowrulev2 = opacity 0.80 0.70,class:^(pavucontrol)$
-windowrulev2 = opacity 0.80 0.70,class:^(org.kde.polkit-kde-authentication-agent-1)$
-windowrulev2 = float, class:^(qt5ct)$
-windowrulev2 = float, class:^(nwg-look)$
-windowrulev2 = float, class:^(pavucontrol)$
-windowrulev2 = float, class:^(org.kde.polkit-kde-authentication-agent-1)$
-windowrulev2 = float, class:.*
+windowrule {
+ name = globals
+ match:class = ^(.*)$
+ suppress_event = maximize
+ render_unfocused = true
+ opacity = 0.80 0.80
+}
+
+windowrule = match:class ^(qt5ct)$, float true
+windowrule = match:class ^(nwg-look)$, float true
+windowrule = match:class ^(pavucontrol)$, float true
+windowrule = match:class ^(org.kde.polkit-kde-authentication-agent-1)$, float true
+windowrule = match:workspace 4, float true
# main
-windowrulev2 = workspace 1 silent, class:^(discord)$
-windowrulev2 = workspace 1 silent, class:^(vesktop)$
-windowrulev2 = workspace 1 silent, class:^(thunderbird)$
-windowrulev2 = workspace 1 silent, class:^(Dopamine)$
-windowrulev2 = workspace 1 silent, class:^(spotify)$
-windowrulev2 = workspace 2 silent, class:^(Alacritty)$
-windowrulev2 = float, class:^(Alacritty)$
-windowrulev2 = size 1920 1080, class:^(Alacritty)$
-windowrulev2 = workspace 3 silent, class:^(firefox)$
-windowrulev2 = float, class:^(firefox)$
-windowrulev2 = size 1920 1080, class:^(firefox)$
-windowrulev2 = workspace 4 silent, class:^(steam)$
-windowrulev2 = workspace 4 silent, class:^(org.prismlauncher.PrismLauncher)$
-windowrulev2 = workspace 4 silent, title:^(Minecraft.*)$
-windowrulev2 = workspace 4 silent, class:^(steam_app_.*)$
-windowrulev2 = workspace 4 silent, class:^(steam_proton)$
-windowrulev2 = workspace 4 silent, class:^(cstrike_linux64)$
-windowrulev2 = workspace 4 silent, class:^(dota2)$
-windowrulev2 = workspace 4 silent, class:^(gamescope)$
-windowrulev2 = workspace 6 silent, class:^(steam)$
+windowrule = match:class ^(discord)$, workspace 1 silent
+windowrule = match:class ^(vesktop)$, workspace 1 silent
+windowrule = match:class ^(thunderbird)$, workspace 1 silent
+windowrule = match:class ^(Dopamine)$, workspace 1 silent
+windowrule = match:class ^(spotify)$, workspace 1 silent
+windowrule = match:class ^(Alacritty)$, workspace 2 silent
+windowrule = match:class ^(Alacritty)$, tile true
+windowrule = match:class ^(firefox)$, float true
+windowrule = match:class ^(firefox)$, tile true
+windowrule = match:class ^(steam)$, workspace 4 silent
+windowrule = match:class ^(org.prismlauncher.PrismLauncher)$, workspace 4 silent
+windowrule = match:class ^(Minecraft.*)$, workspace 4 silent
+windowrule = match:class ^(steam_app_.*)$, workspace 4 silent
+windowrule = match:class ^(steam_proton)$, workspace 4 silent
+windowrule = match:class ^(cstrike_linux64)$, workspace 4 silent
+windowrule = match:class ^(dota2)$, workspace 4 silent
+windowrule = match:class ^(gamescope)$, workspace 4 silent
+windowrule = match:class ^(steam)$, workspace 6 silent
# development
-windowrulev2 = float, class:^(VirtualBox.*)$
-windowrulev2 = float, title:^(SnakePlusPlus)$
-windowrulev2 = center, title:^(SnakePlusPlus)$
-windowrulev2 = opacity 0.4, title:^(SnakePlusPlus)$
-windowrulev2 = float, title:^(TetrisPlusPlus)$
-windowrulev2 = center, title:^(TetrisPlusPlus)$
-windowrulev2 = workspace 5 silent, class:^(aquamarine)$
-windowrulev2 = fullscreen, class:^(aquamarine)$
+windowrule = match:class ^(VirtualBox.*)$, float true
+windowrule = match:title ^(SnakePlusPlus)$, float true
+windowrule = match:title ^(SnakePlusPlus)$, center true
+windowrule = match:title ^(SnakePlusPlus)$, opacity 0.4
+windowrule = match:title ^(TetrisPlusPlus)$, center true
+windowrule = match:class ^(aquamarine)$, workspace 5 silent
+windowrule = match:class ^(aquamarine)$, fullscreen true
# games
# 16:9 windowed - 1920 1080
@@ -271,46 +300,50 @@ windowrulev2 = fullscreen, class:^(aquamarine)$
# theoretical mix - 3200 1100
# alternative - 2660 1140
# world of warcraft classic
-windowrulev2 = opacity 1.00 override 1.00 override, class:^(wowclassic.exe)$
-windowrulev2 = workspace 4 silent, class:^(wowclassic.exe)$
+windowrule = match:class ^(wowclassic.exe)$, opacity 1.00 override 1.00 override
+windowrule = match:class ^(wowclassic.exe)$, workspace 4 silent
# world of warcraft
-windowrulev2 = opacity 1.00 override 1.00 override, title:^(World of Warcraft)$
-windowrulev2 = workspace 4 silent, title:^(World of Warcraft)$
+windowrule = match:title ^(World of Warcraft)$, opacity 1.00 override 1.00 override
+windowrule = match:title ^(World of Warcraft)$, workspace 4 silent
# runelite
-windowrulev2 = opacity 1.00 override 1.00 override, class:^(net-runelite-client-RuneLite)$
-windowrulev2 = fullscreen, class:^(net-runelite-client-RuneLite)$
-windowrulev2 = workspace 5, class:^(net-runelite-client-RuneLite)$
-windowrulev2 = workspace 5, class:^(Bolt.*)$
-windowrulev2 = centerwindow, class:^(Bolt.*)$
+windowrule = match:class ^(net-runelite-client-RuneLite)$, opacity 1.00 override 1.00 override
+windowrule = match:class ^(net-runelite-client-RuneLite)$, fullscreen true
+windowrule = match:class ^(net-runelite-client-RuneLite)$, workspace 5 silent
+windowrule = match:class ^(bolt.*)$, workspace 5 silent
+windowrule = match:class ^(bolt.*)$, tile true
# minecraft
-windowrulev2 = opacity 1.00 override 1.00 override, title:^(Minecraft.*)$
+windowrule = match:class ^(Minecraft.*)$, opacity 1.00 override 1.00 override
+windowrule = match:class ^(Minecraft.*)$, workspace 4 silent
+windowrule = match:class ^(Minecraft.*)$, float true
+windowrule = match:class ^(Minecraft.*)$, size 3200 1100
# native
-windowrulev2 = opacity 1.00 override 1.00 override, class:^(steam_app_.*)$
-windowrulev2 = float, class:^(steam_app_.*)$
+windowrule = match:class ^(steam_app_.*)$, opacity 1.00 override 1.00 override
+windowrule = match:class ^(steam_app_.*)$, float true
# proton
-windowrulev2 = opacity 1.00 override 1.00 override, class:^(steam_proton)$
-windowrulev2 = float, class:^(steam_proton)$
+windowrule = match:class ^(steam_proton)$, opacity 1.00 override 1.00 override
+windowrule = match:class ^(steam_proton)$, float true
# hl2 (css, etc)
+windowrule = match:class ^(cstrike_linux64)$, opacity 1.00 override 1.00 override
# dota 2
-windowrulev2 = opacity 1.00 override 1.00 override, class:^(dota2)$
+windowrule = match:class ^(dota2)$, opacity 1.00 override 1.00 override
# gamescope
-windowrulev2 = opacity 1.00 override 1.00 override, class:^(gamescope)$
-windowrulev2 = float, class:^(gamescope)$
-windowrulev2 = size 3200 1100, class:^(gamescope)$
+windowrule = match:class ^(gamescope)$, opacity 1.00 override 1.00 override
+windowrule = match:class ^(gamescope)$, float true
+windowrule = match:class ^(gamescope)$, size 3200 1100
# steamtinkerlaunch
-windowrulev2 = float, class:^(yad)$
-windowrulev2 = size 1920 1080, class:^(yad)$
+windowrule = match:class ^(yad)$, float true
+windowrule = match:class ^(yad)$, size 1920 1080
# layer rules
-layerrule = blur,waybar
-layerrule = ignorezero, waybar
+layerrule = match:namespace waybar, blur true
+layerrule = match:namespace waybar, ignore_alpha 0
# xwaylandvideobridge
-windowrulev2 = opacity 0.0 override,class:^(xwaylandvideobridge)$
-windowrulev2 = noanim,class:^(xwaylandvideobridge)$
-windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$
-windowrulev2 = maxsize 1 1,class:^(xwaylandvideobridge)$
-windowrulev2 = noblur,class:^(xwaylandvideobridge)$
+windowrule = match:class ^(xwaylandvideobridge)$, opacity 0.0 override
+windowrule = match:class ^(xwaylandvideobridge)$, no_anim true
+windowrule = match:class ^(xwaylandvideobridge)$, no_initial_focus true
+windowrule = match:class ^(xwaylandvideobridge)$, max_size 1 1
+windowrule = match:class ^(xwaylandvideobridge)$, no_blur true
# < End Section >
@@ -341,7 +374,8 @@ bind = $mainMod, RETURN, exec, alacritty
bind = $mainMod SHIFT, S, exec, grim -g "$(slurp)" - | wl-copy
bind = $mainMod SHIFT, 7, exec, taskset -c 1-7 prismlauncher
bind = $mainMod, S, exec, pkill -x rofi || rofi -show drun
-bind = $mainMod, 0, exec, taskset -c 1-7 virtualbox
+bind = $mainMod, 9, exec, taskset -c 1-7 steam
+bind = $mainMod, 0, exec, JAVA_HOME=/usr/lib/jvm/java-17-openjdk bolt --ozone-platform=wayland > /tmp/bolt-launcher.log 2>&1
# generic audio control
binde = , XF86AudioPlay, exec, playerctl play-pause
@@ -371,11 +405,17 @@ bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod SHIFT, 1, movetoworkspace, 1
+bind = $mainMod SHIFT, 1, centerwindow
bind = $mainMod SHIFT, 2, movetoworkspace, 2
+bind = $mainMod SHIFT, 2, centerwindow
bind = $mainMod SHIFT, 3, movetoworkspace, 3
+bind = $mainMod SHIFT, 3, centerwindow
bind = $mainMod SHIFT, 4, movetoworkspace, 4
+bind = $mainMod SHIFT, 4, centerwindow
bind = $mainMod SHIFT, 5, movetoworkspace, 5
+bind = $mainMod SHIFT, 5, centerwindow
bind = $mainMod SHIFT, 6, movetoworkspace, 6
+bind = $mainMod SHIFT, 6, centerwindow
bind = $mainMod ALT, 1, movetoworkspacesilent, 1
bind = $mainMod ALT, 2, movetoworkspacesilent, 2
bind = $mainMod ALT, 3, movetoworkspacesilent, 3
diff --git a/hypr/scripts/xrandr.sh b/hypr/scripts/xrandr.sh
index 892fdd9..f6be532 100755
--- a/hypr/scripts/xrandr.sh
+++ b/hypr/scripts/xrandr.sh
@@ -18,4 +18,8 @@ xrandr --addmode DP-1 3200x1100
xrandr --newmode "2100x900" 462.50 2100 2280 2512 2920 900 903 913 991 -hsync +vsync
xrandr --addmode DP-1 2100x900
+# 2.4
+xrandr --newmode "2880x1200" 818.50 2880 3128 3448 4016 1200 1203 1213 1316 -hsync +vsync
+xrandr --addmode DP-1 2880x1200
+
sleep 2 && xrandr --output DP-1 --primary # Set primary monitor for xwayland
diff --git a/waybar/config b/waybar/config
index de82045..2011061 100755
--- a/waybar/config
+++ b/waybar/config
@@ -27,7 +27,7 @@
],
"clock": {
"interval": 1,
- "format": "{:%I:%M:%S %p}",
+ "format": "{:%H:%M:%S}",
"format-alt": "{:%Y-%m-%d}",
"tooltip-format": "{:%Y %B}\n{calendar}"
},