aboutsummaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
Diffstat (limited to 'util')
-rw-r--r--util/startup.lua9
1 files changed, 2 insertions, 7 deletions
diff --git a/util/startup.lua b/util/startup.lua
index 8c6c8b99..e7107a9c 100644
--- a/util/startup.lua
+++ b/util/startup.lua
@@ -228,9 +228,7 @@ end
function startup.setup_plugindir()
local custom_plugin_paths = config.get("*", "plugin_paths");
local installer_plugin_path = config.get("*", "installer_plugin_path") or "custom_plugins";
- -- This variable separates different paths, like this "," here -> /usr;/home
local path_sep = package.config:sub(3,3);
- -- This variable is the separator between directories, in a path, like the "/" here -> /home/path/to/somewhere
local dir_sep = package.config:sub(1,1);
if custom_plugin_paths then
-- path1;path2;path3;defaultpath...
@@ -241,18 +239,15 @@ function startup.setup_plugindir()
local current_directory = require "lfs".currentdir();
installer_plugin_path = config.resolve_relative_path(current_directory, installer_plugin_path);
require "lfs".mkdir(installer_plugin_path)
- -- Developers may have add these custom paths to their LUA_PATH/LUA_CPATH variables, before running prosody
- -- Therefore, I'll just check if the paths we are about to add aren't already at package.(path/cpath)
+ -- Checking for duplicates
+ -- The commands using luarocks need the path to the directory that has the /share and /lib folders.
if not string.match(package.path, installer_plugin_path) then
local lua_version = _VERSION:match(" (.+)$")
- -- I'm assuming there's good reason not to hard code any separator
- -- This next line is unnecessary, but I think it makes the code more readable and neat
local sub_path = dir_sep.."lua"..dir_sep..lua_version..dir_sep
package.path = package.path..path_sep..installer_plugin_path..dir_sep.."share"..sub_path.."?.lua";
package.path = package.path..path_sep..installer_plugin_path..dir_sep.."share"..sub_path.."?"..dir_sep.."init.lua";
package.cpath = package.cpath..path_sep..installer_plugin_path..dir_sep.."lib"..sub_path.."?.lua";
end
- -- The commands using luarocks need the path to the directory that has the /share and /lib folders.
CFG_PLUGINDIR = installer_plugin_path..path_sep..(CFG_PLUGINDIR or "plugins");
prosody.paths.plugins = CFG_PLUGINDIR;
end