-- Build the startup list once, using the same program names and UWSM wrapper as -- the keybinding module. local commands = require("lib.commands") local settings = require("config.settings") local startup_commands = { -- Session services that manage their own lifecycle. "fcitx5 -d", "hyprpm reload -n", -- Graphical/session applications launched inside UWSM scopes. commands.uwsm(settings.programs.terminal), commands.uwsm("hyprpaper"), commands.uwsm("firefox"), commands.uwsm("wl-paste --type text --watch cliphist store"), commands.uwsm("wl-paste --type image --watch cliphist store"), commands.uwsm("noctalia"), } -- This event only fires when Hyprland starts; reloading the config will not -- launch duplicate copies of these applications. hl.on("hyprland.start", function() for _, command in ipairs(startup_commands) do hl.exec_cmd(command) end end)