peertube-plugin-livechat/prosody/launcher.lua
2023-05-31 16:52:48 +02:00

30 lines
1009 B
Lua

#!/usr/bin/env lua
-- This file is a launcher, that takes the first argument to choose what to launch.
local what = table.remove(arg, 1);
if what == 'debug' then
-- Special debug mode. Should not be used in production.
-- Note: i did not achieve to make it properly work (Prosody uses coroutines, and i did not manage to use breakpoints)
print('Activating MobDebug...');
mobdebug_path = table.remove(arg, 1);
mobdebug_host = table.remove(arg, 1);
mobdebug_port = table.remove(arg, 1);
local lua_path_sep = package.config:sub(3,3);
local dir_sep = package.config:sub(1,1);
package.path = package.path..lua_path_sep..mobdebug_path..dir_sep.."?.lua";
require "mobdebug".checkcount = 1;
require "mobdebug".start(mobdebug_host, mobdebug_port);
require "mobdebug".coro();
what = table.remove(arg, 1);
end
if what == 'prosody' then
dofile('/usr/bin/prosody');
elseif what == 'prosodyctl' then
dofile('/usr/bin/prosodyctl');
else
print("Unknown command: "..what);
os.exit(1);
end