# HG changeset patch # User João Duarte # Date 1564592842 25200 # Node ID 5655cd9fc8e986807ee876fd3453ccd9af49e8ce # Parent 5eba710e33f991571973e47ecd5f344078f810cc prosodyctl: Rewrote the remove command, to make it cleaner and easier to work with diff -r 5eba710e33f9 -r 5655cd9fc8e9 prosodyctl --- a/prosodyctl Wed Jul 31 10:02:42 2019 -0700 +++ b/prosodyctl Wed Jul 31 10:07:22 2019 -0700 @@ -109,17 +109,14 @@ show_usage([[remove]], [[Removes a module installed in the wroking directory's plugins folder]]); return 1; end - local installer_plugin_path = prosodyctl.get_path_custom_plugins(prosody.paths.plugins) - local flag = "--tree=" - -- I'm considering this optional flag comes first - if arg[1] and arg[1]:sub(1, #flag) == flag then - local dir = arg[1]:match("=(.+)$") - show_message("Removing module %s at %s", arg[2], dir) - os.execute("luarocks remove --tree='"..dir.."' "..arg[2]) + local operation = "remove"; + local tree, mod, dir = check_flags(arg); + if tree then + call_luarocks(operation, mod, dir); return 0; else - show_message("Removing %s from %s", arg[1], installer_plugin_path) - os.execute("luarocks --tree='"..installer_plugin_path.."' remove "..arg[1]) + dir = get_path_custom_plugins(prosody.paths.plugins); + call_luarocks(operation, mod, dir); return 0; end end