diff options
author | Matthew Wild <mwild1@gmail.com> | 2019-08-19 12:17:17 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2019-08-19 12:17:17 +0100 |
commit | a1b8dd5db58a60936620502dfcf069e297a353a6 (patch) | |
tree | 0b8157172fb508a4b962032d663b6d9b2e31a600 /util/paths.lua | |
parent | 91a0bce2b12a098408d7a67f77b5c42e9421e00b (diff) | |
parent | 8a6819c5643736a0fc7d4c45f496ad958796d36e (diff) | |
download | prosody-a1b8dd5db58a60936620502dfcf069e297a353a6.tar.gz prosody-a1b8dd5db58a60936620502dfcf069e297a353a6.zip |
Merge mod-installer (2019 GSoC by Jo?o Duarte)
Diffstat (limited to 'util/paths.lua')
-rw-r--r-- | util/paths.lua | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/util/paths.lua b/util/paths.lua index 89f4cad9..c225108a 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 lua_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..lua_path_sep..installer_plugin_path..dir_sep.."share"..sub_path.."?.lua"; + package.path = package.path..lua_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..lua_path_sep..installer_plugin_path..dir_sep.."lib"..sub_path.."?.so"; + end +end + return path_util; |