Files
Modus/config/hypr/modus.lua
T

107 lines
4.5 KiB
Lua

local modus = "$HOME/.config/Modus"
hl.on("hyprland.start", function()
local cmds = {
"uwsm app -- awww-daemon",
"wl-paste --type text --watch cliphist store",
"wl-paste --type image --watch cliphist store",
"pgrep -x hypridle >/dev/null || uwsm app -- hypridle",
"cd " .. modus .. " && uwsm app -- uv run start",
}
for i = 1, #cmds do
local cmd = cmds[i]
hl.exec_cmd(cmd)
end
end)
hl.curve("easeOutQuint", { type = "bezier", points = { { 0.23, 1 }, { 0.32, 1 } } })
hl.curve("easeInOutCubic", { type = "bezier", points = { { 0.65, 0.05 }, { 0.36, 1 } } })
hl.curve("linear", { type = "bezier", points = { { 0, 0 }, { 1, 1 } } })
hl.curve("almostLinear", { type = "bezier", points = { { 0.5, 0.5 }, { 0.75, 1 } } })
hl.curve("quick", { type = "bezier", points = { { 0.15, 0 }, { 0.1, 1 } } })
hl.curve("move", { type = "bezier", points = { { 0.36, 0.13 }, { 0.1, 1.36 } } })
hl.curve("new", { type = "bezier", points = { { 0.36, 0.13 }, { 0.1, 1.26 } } })
hl.curve("workspace", { type = "bezier", points = { { 0.42, 0 }, { 0.58, 1 } } })
hl.curve("resize", { type = "bezier", points = { { 0.46, 0 }, { 0.58, 1.16 } } })
hl.curve("easy", { type = "spring", mass = 1, stiffness = 71.2633, dampening = 15.8273644 })
hl.animation({ leaf = "global", enabled = true, speed = 1, bezier = "default" })
hl.animation({ leaf = "border", enabled = true, speed = 5.39, bezier = "easeOutQuint" })
hl.animation({ leaf = "windows", enabled = true, speed = 3.5, bezier = "new" })
hl.animation({ leaf = "windowsIn", enabled = true, speed = 3.5, bezier = "move", style = "popin 87%" })
hl.animation({ leaf = "windowsOut", enabled = true, speed = 3.5, bezier = "move", style = "popin 87%" })
hl.animation({ leaf = "fadeIn", enabled = true, speed = 3.5, bezier = "default" })
hl.animation({ leaf = "fadeOut", enabled = true, speed = 3.5, bezier = "default" })
hl.animation({ leaf = "fade", enabled = true, speed = 3.03, bezier = "quick" })
hl.animation({ leaf = "layers", enabled = true, speed = 3.81, bezier = "easeOutQuint" })
hl.animation({ leaf = "layersIn", enabled = true, speed = 4, bezier = "easeOutQuint", style = "fade" })
hl.animation({ leaf = "layersOut", enabled = true, speed = 1.5, bezier = "linear", style = "fade" })
hl.animation({ leaf = "fadeLayersIn", enabled = true, speed = 1.79, bezier = "almostLinear" })
hl.animation({ leaf = "fadeLayersOut", enabled = true, speed = 1.39, bezier = "almostLinear" })
hl.animation({ leaf = "workspaces", enabled = true, speed = 2, bezier = "workspace", style = "" })
hl.animation({ leaf = "workspacesIn", enabled = true, speed = 2, bezier = "workspace", style = "" })
hl.animation({ leaf = "workspacesOut", enabled = true, speed = 2, bezier = "workspace", style = "" })
hl.animation({ leaf = "zoomFactor", enabled = true, speed = 7, bezier = "quick" })
-- Layer Rules for Blurs and Animations
local layer_rules = {
{
match = { namespace = "modus-notifications" },
blur = true,
xray = 0,
blur_popups = true,
ignore_alpha = 0,
no_anim = true,
},
{ match = { namespace = "lockscreen" }, animation = "popin" },
{
match = { namespace = "modus-launcher" },
blur = true,
xray = 0,
blur_popups = true,
ignore_alpha = 0,
animation = "popin",
},
{
match = { namespace = "fabric" },
blur = true,
ignore_alpha = 0,
xray = 0,
blur_popups = true,
},
{
match = { namespace = "modus" },
blur = true,
xray = 0,
blur_popups = true,
ignore_alpha = 0,
},
{ match = { namespace = "notification-center" }, animation = "slide right" },
}
for _, rule in ipairs(layer_rules) do
hl.layer_rule(rule)
end
local fabricSend = "fabric-cli exec modus1"
-- Reload Modus
hl.bind("SUPER + ALT + B", hl.dsp.exec_cmd("killall modus; cd " .. modus .. " && uwsm app -- uv run start"))
-- Fabric Launcher Binds
for key, method in pairs({
["SUPER + SHIFT + Y"] = "app.set_css()", -- Reload CSS
["ALT + TAB"] = "switcher.show_switcher()", -- Application Switcher
["SUPER + SPACE"] = "launcher.show_launcher()", -- App Launcher
["SUPER + V"] = "launcher.show_launcher('clip')", -- Clipboard History
["SUPER + W"] = "launcher.show_launcher('wall')", -- Wallpapers
["ALT + SHIFT + W"] = "launcher.show_launcher('wall random', external=True)", -- Random Wallpaper
["SUPER + Period"] = "launcher.show_launcher('em')", -- Emoji Picker
["SUPER + ESCAPE"] = "launcher.show_launcher('power')", -- Power Menu
["SUPER + SHIFT + M"] = "launcher.show_launcher('caffeine on', external=True)", -- Toggle Caffeine
}) do
hl.bind(key, hl.dsp.exec_cmd(fabricSend .. " '" .. method .. "'"))
end