My NixOS configurations + dotfiles

hyprland: update display config for -git

kris.darkworld.download 985dd5e1 08524bdd

verified
+140 -69
+140 -69
config/hypr/config/display.conf
··· 1 - # Monitor ( https://wiki.hyprland.org/Configuring/Monitors ) 1 + ############################################# 2 + # MONITORS 3 + ############################################# 4 + 2 5 monitor=,1920x1080@240,auto,1 3 6 # monitor=Unknown-1,disabled 4 7 5 - # General Configuration 6 - general { 8 + 9 + ############################################# 10 + # GENERAL 11 + ############################################# 12 + 13 + general { 7 14 gaps_in = 5 8 15 gaps_out = 20 9 16 border_size = 2 10 17 11 18 col.active_border = rgb(89b4fa) 12 - # rgba(088f72ee) rgba(2ccfabee) rgba(088f72ee) rgba(ffffffee) rgba(7bade2ee) rgba(5049ccee) rgba(3e1a78ee) 90deg 13 19 col.inactive_border = rgb(585b70) 14 - resize_on_border = false 20 + 21 + resize_on_border = false 15 22 allow_tearing = true 16 23 layout = dwindle 17 24 } 18 25 19 - # Window Decorations 26 + 27 + ############################################# 28 + # DECORATION 29 + ############################################# 30 + 20 31 decoration { 21 32 rounding = 12 22 33 23 - # Change transparency of focused and unfocused windows 24 34 active_opacity = 1.0 25 - inactive_opacity = 1 35 + inactive_opacity = 1.0 26 36 fullscreen_opacity = 1.0 27 37 28 38 shadow { ··· 40 50 size = 3 41 51 passes = 1 42 52 xray = false 43 - 44 53 vibrancy = 0.1696 45 54 } 46 55 } 47 56 48 - # Animations 57 + 58 + ############################################# 59 + # ANIMATIONS 60 + ############################################# 61 + 49 62 animations { 50 63 enabled = true 51 64 52 65 bezier = myBezier, 0.05, 0.9, 0.1, 1.05 53 - bezier = main, 0.445, 0.05, 0.55, 0.95 66 + bezier = main, 0.445, 0.05, 0.55, 0.95 54 67 bezier = monitorBez, 0, 1, 1, 1 55 68 56 - animation = windows, 1, 7, myBezier 57 - animation = windowsOut, 1, 7, default 58 - animation = border, 1, 10, default 59 - animation = borderangle, 1, 8, default 60 - animation = fade, 1, 7, default 61 - animation = workspaces, 1, 6, default, slide 62 - 69 + animation = windows, 1, 7, myBezier 70 + animation = windowsOut, 1, 7, default 71 + animation = border, 1, 10, default 72 + animation = borderangle, 1, 8, default 73 + animation = fade, 1, 7, default 74 + animation = workspaces, 1, 6, default, slide 63 75 animation = specialWorkspace, 1, 6, myBezier, slide 76 + animation = monitorAdded, 1, 30, monitorBez 77 + } 64 78 65 - # animation = specialWorkspaceIn, 1, 6, myBezier, slidevert bottom 66 - # animation = specialWorkspaceOut, 1, 6, myBezier, slidevert top 67 79 68 - animation = monitorAdded, 1, 30, monitorBez 69 - 70 - } 80 + ############################################# 81 + # RENDER 82 + ############################################# 71 83 72 84 render { 73 85 # new_render_scheduling = true 74 86 } 75 87 88 + 89 + ############################################# 90 + # CURSOR 91 + ############################################# 92 + 76 93 cursor { 77 94 use_cpu_buffer = 2 78 95 enable_hyprcursor = true 79 96 invisible = false 80 97 } 81 98 82 - windowrule = tag +game, class:org.vinegarhq.Sober 83 - windowrule = tag +game, class:com.mojang.minecraft.java-edition 84 - windowrule = tag +discord, class:equibop 85 99 86 - windowrule = tag +code, class:code 87 - windowrule = tag +music, class:cider 88 - windowrule = tag +music, class:spotify 100 + ############################################# 101 + # WINDOW RULES (TAGGING) 102 + ############################################# 103 + 104 + windowrule { 105 + name = games 106 + match:class = org.vinegarhq.Sober|com.mojang.minecraft.java-edition|deltarune.exe|steam_app_1671210 107 + tag = +game 108 + } 109 + 110 + windowrule { 111 + name = discord 112 + match:class = equibop 113 + tag = +discord 114 + } 115 + 116 + windowrule { 117 + name = deltarune 118 + match:class = deltarune.exe|steam_app_1671210 119 + tag = +deltarune 120 + } 121 + 122 + windowrule { 123 + name = code 124 + match:class = code|windsurf 125 + tag = +code 126 + } 127 + 128 + windowrule { 129 + name = music 130 + match:class = cider|spotify 131 + tag = +music 132 + } 133 + 134 + # Tag behavior rules 135 + windowrule { 136 + name = render unfocused 137 + match:tag = music|game|discord 138 + render_unfocused = on 139 + } 89 140 90 - # windowrule = opacity 0.7, tag:music 91 141 92 - windowrulev2 = renderunfocused, tag:music 93 - windowrulev2 = renderunfocused, tag:game 94 - windowrulev2 = renderunfocused, tag:discord 142 + ############################################# 143 + # LAYOUTS 144 + ############################################# 95 145 96 - # Dwindle layout 97 146 dwindle { 98 - pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below 99 - preserve_split = true # You probably want this 147 + pseudotile = true 148 + preserve_split = true 100 149 } 101 150 102 - # Misc Config 103 - misc { 151 + 152 + ############################################# 153 + # MISC 154 + ############################################# 155 + 156 + misc { 104 157 force_default_wallpaper = 2 105 158 disable_hyprland_logo = false 106 159 initial_workspace_tracking = 0 ··· 111 164 allow_session_lock_restore = 1 112 165 } 113 166 114 - # Layer Rules 115 - layerrule = animation slide top, waybar 116 - layerrule = abovelock true, waybar 117 - layerrule = abovelock true, notifications 118 167 119 - # layerrule = noscreenshare, notifications 168 + ############################################# 169 + # LAYER RULES 170 + ############################################# 120 171 121 - layerrule = animation fade, selection 122 - layerrule = animation popin 70%, wofi 123 - layerrule = animation slide right, notifications 124 - layerrule = dimaround, wofi 172 + layerrule { 173 + name = waybar 174 + match:namespace = waybar 175 + animation = slide top 176 + above_lock = 2 177 + order = -20 178 + } 125 179 126 - layerrule = order -999, wl_shimeji 127 - layerrule = order -10, wofi 128 - layerrule = order -20, waybar 129 - layerrule = order -25, gtk-layer-shell 130 - layerrule = blur, swww-daemon 180 + layerrule { 181 + name = notifications 182 + match:namespace = notifications 183 + animation = slide right 184 + above_lock = 2 185 + } 131 186 132 - # Window Rules 133 - windowrulev2 = float,class:^(blueman-manager-wrapped)$ 134 - windowrulev2 = size 900 500,class:^(blueman-manager-wrapped)$ 135 - windowrulev2 = center,class:^(blueman-manager-wrapped)$ 187 + layerrule { 188 + name = wofi 189 + match:namespace = wofi 190 + animation = popin 70% 191 + dim_around = on 192 + order = -10 193 + } 136 194 137 - windowrulev2 = float,class:^(org.pulseaudio.pavucontrol)$ 138 - windowrulev2 = size 900 500,class:^(org.pulseaudio.pavucontrol)$ 139 - windowrulev2 = center,class:^(org.pulseaudio.pavucontrol)$ 195 + layerrule { 196 + name = shimeji 197 + match:namespace = wl_shimeji 198 + order = -9999 199 + above_lock = 2 200 + } 140 201 141 - windowrulev2 = float,class:^(nm-connection-editor)$ 142 - windowrulev2 = size 900 500,class:^(nm-connection-editor)$ 143 - windowrulev2 = center,class:^(nm-connection-editor)$ 202 + layerrule { 203 + name = gtk layer shell 204 + match:namespace = gtk-layer-shell 205 + order = -25 206 + } 144 207 145 - windowrulev2 = allowsinput,class:^(steam_proton)$ 146 208 147 - windowrulev2 = renderunfocused, class:^(equibop)$ 148 - windowrulev2 = renderunfocused, class:^(discord)$ 209 + ############################################# 210 + # FLOATING UTILITY WINDOWS 211 + ############################################# 149 212 150 - # dotfille settings 151 - windowrulev2 = float,class:io.Astal.ocbwoy3-settings 152 - windowrulev2 = size 900 500,class:io.Astal.ocbwoy3-settings 153 - windowrulev2 = center,class:io.Astal.ocbwoy3-settings 213 + windowrule { 214 + name = blueman music internet 215 + match:class = blueman-manager|blueman-manager-wrapped|org.pulseaudio.pavucontrol|nm-connection-editor|nm-connection-editor-wrapped 216 + float = true 217 + size = 900 500 218 + center = true 219 + } 154 220 221 + ############################################# 222 + # OTHER 223 + ############################################# 224 + 225 + windowrule = match:class steam_proton|org.vinegarhq.Sober, allows_input on 155 226 156 227 # windowrulev2 = immediate, class:^(sober)$ 157 228 # windowrulev2 = fullscreen,title:^(Sober)$