diff options
author | Jo?o Duarte <jvsDuarte08@gmail.com> | 2019-08-01 09:12:28 -0700 |
---|---|---|
committer | Jo?o Duarte <jvsDuarte08@gmail.com> | 2019-08-01 09:12:28 -0700 |
commit | 33ae171c3d547dfbd2e03d2383c39902fc911aed (patch) | |
tree | 33de4fdeca2cfae5628dd2f4375b383282faf226 | |
parent | fdbe6f4afe9d2f6942451dc2d03df132a0988d75 (diff) | |
download | prosody-33ae171c3d547dfbd2e03d2383c39902fc911aed.tar.gz prosody-33ae171c3d547dfbd2e03d2383c39902fc911aed.zip |
util.paths: Added the function 'complement_lua_path'
-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..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; |