aboutsummaryrefslogtreecommitdiffstats
path: root/util
diff options
context:
space:
mode:
authorJoão Duarte <jvsDuarte08@gmail.com>2019-08-01 09:12:28 -0700
committerJoão Duarte <jvsDuarte08@gmail.com>2019-08-01 09:12:28 -0700
commit579bcb64d580b2e018f5aa4f647d23cb5b2da5e9 (patch)
tree33de4fdeca2cfae5628dd2f4375b383282faf226 /util
parentf27cd24e27134ff803e57768d1adac625f154162 (diff)
downloadprosody-579bcb64d580b2e018f5aa4f647d23cb5b2da5e9.tar.gz
prosody-579bcb64d580b2e018f5aa4f647d23cb5b2da5e9.zip
util.paths: Added the function 'complement_lua_path'
Diffstat (limited to 'util')
-rw-r--r--util/paths.lua16
1 files changed, 16 insertions, 0 deletions
diff --git a/util/paths.lua b/util/paths.lua
index 89f4cad9..a8d80a4c 100644
--- a/util/paths.lua
+++ b/util/paths.lua
@@ -41,4 +41,20 @@ function path_util.join(...)
return t_concat({...}, path_sep);
end
+function path_util.complement_lua_path(installer_plugin_path)
+ -- Checking for duplicates
+ -- The commands using luarocks need the path to the directory that has the /share and /lib folders.
+ local lua_version = _VERSION:match(" (.+)$");
+ local path_sep = package.config:sub(3,3);
+ local dir_sep = package.config:sub(1,1);
+ local sub_path = dir_sep.."lua"..dir_sep..lua_version..dir_sep;
+ if not string.match(package.path, installer_plugin_path) then
+ 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";
+ end
+ if not string.match(package.path, installer_plugin_path) then
+ package.cpath = package.cpath..path_sep..installer_plugin_path..dir_sep.."lib"..sub_path.."?.lua";
+ end
+end
+
return path_util;