update hyprland and nocatalia config

This commit is contained in:
Thomas
2026-08-21 23:18:35 +02:00
parent aa484bc634
commit 813b27aa96
11 changed files with 245 additions and 72 deletions
+1 -1
View File
@@ -1 +1 @@
-- User-specific keybindings. Loaded after hyprland/keybinds.lua.
-- User-specific keybinds. Loaded after hyprland/keybinds.lua.
+3 -1
View File
@@ -1,4 +1,6 @@
-- User-specific monitor overrides. Loaded after hyprland/monitors.lua.
hl.monitor({ output = "eDP-1", mode = "2256x1504@60", position = "auto", scale = 1.33, bitdepth = 10, vrr = 1 })
hl.monitor({ output = "DP-3", mode = "3440x1440@99", position = "auto", scale = 1, bitdepth = 10, vrr = 1 })
hl.monitor({ output = "DP-3", mode = "3440x1440@99", position = "auto", scale = 1, bitdepth = 10, vrr = 1 })
hl.monitor({ output = "DP-4", mode = "4096x2160@120", position = "auto", scale = 1.33, bitdepth = 10, vrr = 1 })
+2 -1
View File
@@ -1 +1,2 @@
-- User-specific window rules. Loaded after hyprland/windowrules.lua.
-- User-specific windowrules. Loaded after hyprland/windowrules.lua.
require("custom/windowrules/godot")
+51
View File
@@ -0,0 +1,51 @@
-- Godot application windowrules --
hl.window_rule({
name = "Resize Godot confirmation dialogs",
match = {
class = "org.godotengine.Editor",
float = true,
},
size = { "monitor_w * 0.15", "monitor_h * 0.1" },
center = true,
})
hl.window_rule({
name = "Resize New node dialog",
match = {
class = "org.godotengine.Editor",
title = "Créer un nouveau Node",
},
size = { 1000, 750 },
})
hl.window_rule({
name = "Resize Region edit dialog",
match = {
class = "org.godotengine.Editor",
title = "Éditeur de régions",
},
size = { 1500, 1000 },
})
hl.window_rule({
name = "Resize Region edit dialog",
match = {
class = "org.godotengine.Editor",
title = "Sélectionner une scène",
},
size = { 550, 450 },
})
hl.window_rule({
name = "Floating DEBUG window",
match = {
class = "org.godotengine.Editor",
title = ".*DEBUG.*",
},
size = { 1280, 720 },
float = true,
center = true,
})
+3
View File
@@ -28,3 +28,6 @@ require("custom/windowrules")
-- Noctalia generates a hyprlang colours file; load it last so it overrides above.
-- dofile() because it is a .conf, not a Lua module.
-- dofile(os.getenv("HOME") .. "/.config/hypr/noctalia/noctalia-colors.conf")
-- For Noctalia Color templates
require("noctalia")
+1 -1
View File
@@ -2,5 +2,5 @@
-- Shared defaults — do not edit. Add user-specific autostart in custom/autostart.lua.
hl.on("hyprland.start", function()
hl.exec_cmd("qs -c noctalia-shell")
hl.exec_cmd("noctalia")
end)
+57 -41
View File
@@ -1,80 +1,96 @@
-- https://wiki.hypr.land/Configuring/Binds/
-- Shared defaults — do not edit. Add user-specific keybindings in custom/keybinds.lua.
local mainMod = "SUPER"
local mainMod = "SUPER"
local terminal = "kitty"
local fileMgr = "nautilus"
local ipc = "qs -c noctalia-shell ipc call"
local fileMgr = "nautilus"
local ipc = "noctalia msg"
hl.bind("CTRL + ALT + T", hl.dsp.exec_cmd(terminal))
hl.bind(mainMod .. " + SPACE", hl.dsp.exec_cmd(ipc .. " launcher toggle"))
hl.bind(mainMod .. " + C", hl.dsp.window.close())
hl.bind(mainMod .. " + M", hl.dsp.exit())
hl.bind(mainMod .. " + E", hl.dsp.exec_cmd(fileMgr))
hl.bind(mainMod .. " + V", hl.dsp.window.float({ action = "toggle" }))
hl.bind(mainMod .. " + F", hl.dsp.window.fullscreen({ state = "toggle" }))
hl.bind(mainMod .. " + P", hl.dsp.window.pseudo())
hl.bind(mainMod .. " + U", hl.dsp.layout("togglesplit"))
hl.bind(mainMod .. " + H", hl.dsp.layout("swapsplit"))
hl.bind("CTRL + ALT + T", hl.dsp.exec_cmd(terminal))
hl.bind(mainMod .. " + C", hl.dsp.window.close())
hl.bind(mainMod .. " + M", hl.dsp.exit())
hl.bind(mainMod .. " + E", hl.dsp.exec_cmd(fileMgr))
hl.bind(mainMod .. " + V", hl.dsp.window.float({ action = "toggle" }))
hl.bind(mainMod .. " + F", hl.dsp.window.fullscreen({ mode = "maximized", state = "toggle" }))
hl.bind(mainMod .. " + P", hl.dsp.window.pseudo())
hl.bind(mainMod .. " + U", hl.dsp.layout("togglesplit"))
hl.bind(mainMod .. " + H", hl.dsp.layout("swapsplit"))
-- Focus: arrow keys + IJKL
for _, m in ipairs({
{ "left", "l" }, { "right", "r" }, { "up", "u" }, { "down", "d" },
{ "J", "l" }, { "L", "r" }, { "I", "u" }, { "K", "d" },
{ "left", "l" },
{ "right", "r" },
{ "up", "u" },
{ "down", "d" },
{ "J", "l" },
{ "L", "r" },
{ "I", "u" },
{ "K", "d" },
}) do
hl.bind(mainMod .. " + " .. m[1], hl.dsp.focus({ direction = m[2] }))
hl.bind(mainMod .. " + " .. m[1], hl.dsp.focus({ direction = m[2] }))
end
-- Workspaces 1..10: digit + AZERTY keysym, plus SHIFT to move active window
local azerty = {
"ampersand", "eacute", "quotedbl", "apostrophe", "parenleft",
"minus", "egrave", "underscore", "ccedilla", "agrave",
"ampersand",
"eacute",
"quotedbl",
"apostrophe",
"parenleft",
"minus",
"egrave",
"underscore",
"ccedilla",
"agrave",
}
for i = 1, 10 do
local digit = (i == 10) and "0" or tostring(i)
hl.bind(mainMod .. " + " .. digit, hl.dsp.focus({ workspace = i }))
hl.bind(mainMod .. " + " .. azerty[i], hl.dsp.focus({ workspace = i }))
hl.bind(mainMod .. " + SHIFT + " .. azerty[i], hl.dsp.window.move({ workspace = i }))
local digit = (i == 10) and "0" or tostring(i)
hl.bind(mainMod .. " + " .. digit, hl.dsp.focus({ workspace = i }))
hl.bind(mainMod .. " + " .. azerty[i], hl.dsp.focus({ workspace = i }))
hl.bind(mainMod .. " + SHIFT + " .. azerty[i], hl.dsp.window.move({ workspace = i }))
end
-- Mouse scroll between workspaces
hl.bind(mainMod .. " + mouse_down", hl.dsp.focus({ workspace = "e+1" }))
hl.bind(mainMod .. " + mouse_up", hl.dsp.focus({ workspace = "e-1" }))
hl.bind(mainMod .. " + mouse_up", hl.dsp.focus({ workspace = "e-1" }))
-- Mouse drag / resize
hl.bind(mainMod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true })
hl.bind(mainMod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true })
hl.bind(mainMod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true })
-- Volume / brightness
for _, b in ipairs({
{ "XF86AudioRaiseVolume", "wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+" },
{ "XF86AudioLowerVolume", "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-" },
{ "XF86AudioMute", "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" },
{ "XF86AudioMicMute", "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle" },
{ "XF86MonBrightnessUp", "brightnessctl -e4 -n2 set 5%+" },
{ "XF86MonBrightnessDown", "brightnessctl -e4 -n2 set 5%-" },
{ "XF86AudioRaiseVolume", "wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+" },
{ "XF86AudioLowerVolume", "wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-" },
{ "XF86AudioMute", "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" },
{ "XF86AudioMicMute", "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle" },
{ "XF86MonBrightnessUp", "brightnessctl -e4 -n2 set 5%+" },
{ "XF86MonBrightnessDown", "brightnessctl -e4 -n2 set 5%-" },
}) do
hl.bind(b[1], hl.dsp.exec_cmd(b[2]), { locked = true, repeating = true })
hl.bind(b[1], hl.dsp.exec_cmd(b[2]), { locked = true, repeating = true })
end
-- Media player
for _, b in ipairs({
{ "XF86AudioNext", "playerctl next" },
{ "XF86AudioPause", "playerctl play-pause" },
{ "XF86AudioPlay", "playerctl play-pause" },
{ "XF86AudioPrev", "playerctl previous" },
{ "XF86AudioNext", "playerctl next" },
{ "XF86AudioPause", "playerctl play-pause" },
{ "XF86AudioPlay", "playerctl play-pause" },
{ "XF86AudioPrev", "playerctl previous" },
}) do
hl.bind(b[1], hl.dsp.exec_cmd(b[2]), { locked = true })
hl.bind(b[1], hl.dsp.exec_cmd(b[2]), { locked = true })
end
-- Screenshot
hl.bind("Print", hl.dsp.exec_cmd("hyprshot -m region"), { locked = true })
hl.bind("Print", hl.dsp.exec_cmd("hyprshot -m region"), { locked = true })
hl.bind("CTRL + Print", hl.dsp.exec_cmd("hyprshot -m output -m active"), { locked = true })
hl.bind("XF86Calculator", hl.dsp.exec_cmd("gnome-calculator"))
-- Noctalia IPC
hl.bind(mainMod .. " + T", hl.dsp.exec_cmd(ipc .. " darkMode toggle"))
hl.bind(mainMod .. " + W", hl.dsp.exec_cmd(ipc .. " wallpaper toggle"))
hl.bind(mainMod .. " + SHIFT + L", hl.dsp.exec_cmd(ipc .. " lockScreen lock"))
hl.bind("switch:Lid Switch", hl.dsp.exec_cmd(ipc .. " lockScreen lock"), { locked = true })
hl.bind(mainMod .. " + SPACE", hl.dsp.exec_cmd(ipc .. " panel-toggle launcher"))
hl.bind(mainMod .. " + S", hl.dsp.exec_cmd(ipc .. " panel-toggle control-center"))
hl.bind(mainMod .. " + T", hl.dsp.exec_cmd(ipc .. " theme-mode-toggle"))
hl.bind(mainMod .. " + W", hl.dsp.exec_cmd(ipc .. " panel-toggle wallpaper"))
hl.bind(mainMod .. " + SHIFT + L", hl.dsp.exec_cmd(ipc .. " session lock"))
hl.bind("switch:Lid Switch", hl.dsp.exec_cmd(ipc .. " session lock"), { locked = true })
hl.bind(mainMod .. " + R", hl.dsp.exec_cmd(ipc .. " plugin noctalia/screen_recorder:service all toggle"))
+25 -25
View File
@@ -2,41 +2,41 @@
-- Shared defaults — do not edit. Add user-specific window rules in custom/windowrules.lua.
hl.window_rule({
name = "floating-window",
match = { class = "(Imprimer l'image|org.gnome.Calculator|org.gnome.Loupe)" },
float = true,
name = "floating-window",
match = { class = "(Imprimer l'image|org.gnome.Calculator|org.gnome.Loupe)" },
float = true,
})
hl.window_rule({
name = "kitty-term",
match = { class = "kitty" },
size = "(monitor_w*0.50) (monitor_h*0.47)",
float = true,
center = true,
name = "kitty-term",
match = { class = "kitty" },
size = "(monitor_w*0.50) (monitor_h*0.47)",
float = true,
center = true,
})
hl.window_rule({
name = "floating-messages",
match = { class = "(signal|org.telegram.desktop)" },
size = "(monitor_w*0.27) (monitor_h*0.7)",
move = "(monitor_w*0.70) (monitor_h*0.15)",
float = true,
pin = true,
name = "floating-messages",
match = { class = "(signal|org.telegram.desktop)" },
size = "(monitor_w*0.25) (monitor_h*0.7)",
move = "(monitor_w*0.72) (monitor_h*0.15)",
float = true,
pin = true,
})
hl.window_rule({
name = "filesystems",
match = { class = "DevTools|Tous les fichiers|org.gnome.Nautilus" },
float = true,
center = true,
size = "(monitor_w*0.48) (monitor_h*0.5)",
name = "filesystems",
match = { class = "DevTools|Tous les fichiers|org.gnome.Nautilus" },
float = true,
center = true,
size = "(monitor_w*0.48) (monitor_h*0.5)",
})
hl.window_rule({
name = "pip",
match = { class = "zen", title = "Picture-in-Picture" },
center = true,
size = "1280 720",
float = true,
pin = true,
name = "pip",
match = { class = "zen", title = "Picture-in-Picture" },
center = true,
size = "1280 720",
float = true,
pin = true,
})