first go at hyprland with lua config
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
local float_classes = {
|
||||
"^(.*Emulator.*)$", "^(.*desktop-portal.*)$", "^(org.quickshell)$",
|
||||
"^(polkit.*agent.*)$", "^(praat)$", "^(network)$", "^(nm-)$", "^(Network)$",
|
||||
"^(Rofi)$", "^(Gimp)$", "^(thunar)$", "^(Nautilus)$",
|
||||
"^(LmDev-.*)$", "^(notification)$", "^(Genymotion Player)$", "^(launcher)$",
|
||||
}
|
||||
local workspace_rules = {
|
||||
{ class = "^(KeePassXC)$", ws = "2" },
|
||||
{ class = "^(firefox)$", ws = "3" },
|
||||
{ class = "^(floorp)$", ws = "3" },
|
||||
{ class = "^(brave-browser)$", ws = "3" },
|
||||
{ class = "^(Spotify)$", ws = "4" },
|
||||
{ class = "^(discord)$", ws = "6" },
|
||||
{ class = "^(.*obs.*)$", ws = "8" },
|
||||
{ title = "^(Minecraft)$", ws = "name:extra" },
|
||||
{ class = "^(signal)$", title = "^(Signal)$", ws = "6" },
|
||||
{ class = "^(.*)$", title = "^(.*WhatsApp.*)$", ws = "6" },
|
||||
}
|
||||
local fullscreen_inhibits = {
|
||||
"^(floorp)$", "^(firefox)$", "^(ghostty)$", "^(brave-browser)$",
|
||||
}
|
||||
local focus_inhibits = {
|
||||
"^(mpv)$", "^(firefox)$", "^(floorp)$", "^(spotify)$",
|
||||
"^(Emacs|emacs)$", "^(brave-browser)$", "^(Discord|dicord)$",
|
||||
}
|
||||
|
||||
hl.window_rule({
|
||||
match = { class = "steam", title = "^(Friends List)$"},
|
||||
float = true,
|
||||
})
|
||||
hl.window_rule({
|
||||
match = { class = "^(Discord|discord)$" },
|
||||
opacity = "0.98 0.90",
|
||||
})
|
||||
hl.window_rule({
|
||||
match = { class = "^(Emacs|emacs)$" },
|
||||
opacity = "0.96 0.90",
|
||||
})
|
||||
hl.window_rule({
|
||||
match = { xwayland = true },
|
||||
rounding = 0,
|
||||
})
|
||||
|
||||
for _, float_class in ipairs(float_classes) do
|
||||
hl.window_rule({
|
||||
match = { class = float_class},
|
||||
float = true
|
||||
})
|
||||
end
|
||||
for _, rule in ipairs(workspace_rules) do
|
||||
hl.window_rule({
|
||||
match = { class = rule.class, title = rule.title },
|
||||
workspace = rule.ws
|
||||
})
|
||||
end
|
||||
for _, fs_inhib in ipairs(fullscreen_inhibits) do
|
||||
hl.window_rule({
|
||||
match = { class = fs_inhib },
|
||||
idle_inhibit = "fullscreen",
|
||||
})
|
||||
end
|
||||
for _, fo_inhib in ipairs(focus_inhibits) do
|
||||
hl.window_rule({
|
||||
match = { class = fo_inhib },
|
||||
idle_inhibit = "focus",
|
||||
})
|
||||
end
|
||||
Reference in New Issue
Block a user