Jitsy - prosody error 'cjson.safe' not found

Hi all,

I’m trying to setup a jitsi server following these instructions:

https://wiki.archlinux.org/title/Jitsi-meet
https://tutorials.celogeek.com/books/jitsi-meet-on-arch-linux

Trying to setup a component at a time, the first one is prosody.

Prosody do not start giving the error

/usr/lib/prosody/util/startup.lua:211: module 'cjson.safe' not found

Is lua52-cjson conflicting with cjson.safe ?

What can I do?

TL;DR

what I have done:

Package installed:

prerequisites

pamac install nginx coturn prosody lua52 lua52-sec lua52-zlib lua52-event lua52-cjson

jitsi packages - stable -bin version

pamac install jitsi-meet-bin jitsi-meet-prosody-bin jitsi-meet-turnserver-bin jicofo-bin jitsi-videobridge-bin

Then configured prosody as per the documentation

At the startup every prosody module fails saying module 'cjson.safe' not found

Here the first part of journal

gen 12 21:33:34 jitsi systemd[1]: Started XMPP (Jabber) Server.
gen 12 21:33:34 jitsi prosody[15124]: **************************
gen 12 21:33:34 jitsi prosody[15124]: Prosody was unable to find lua-unbound
gen 12 21:33:34 jitsi prosody[15124]: This package can be obtained in the following ways:
gen 12 21:33:34 jitsi prosody[15124]:   Debian/Ubuntu | sudo apt install lua-unbound
gen 12 21:33:34 jitsi prosody[15124]:        luarocks | luarocks install luaunbound
gen 12 21:33:34 jitsi prosody[15124]:          Source | https://www.zash.se/luaunbound.html
gen 12 21:33:34 jitsi prosody[15124]: Old DNS resolver library will be used
gen 12 21:33:34 jitsi prosody[15124]: More help can be found on our website, at https://prosody.im/doc/depends
gen 12 21:33:34 jitsi prosody[15124]: **************************
gen 12 21:33:34 jitsi prosody[15124]: startup: Hello and welcome to Prosody version 13.0.2
gen 12 21:33:34 jitsi prosody[15124]: startup: Prosody is using the epoll backend for connection handling
gen 12 21:33:34 jitsi prosody[15124]: portmanager: Activated service 's2s' on [*]:5269, [::]:5269
gen 12 21:33:34 jitsi prosody[15124]: portmanager: Activated service 's2s_direct_tls' on no ports
gen 12 21:33:34 jitsi prosody[15124]: conference.93.41.144.192.nip.io:tls: Certificates loaded
gen 12 21:33:34 jitsi prosody[15124]: modulemanager: Error initializing module 'muc_meeting_id' on 'conference.93.41.144.192.nip.io': /usr/lib/prosody/util/startup.lua:211: module 'cjson.safe' not found:
                                              No LuaRocks module found for cjson.safe
                                              no field package.preload['cjson.safe']
                                              no file '/usr/lib/prosody/cjson/safe.lua'
                                              no file '/usr/local/share/lua/5.4/cjson/safe.lua'
                                              no file '/usr/local/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/share/lua/5.4/cjson/safe.lua'
                                              no file '/usr/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/local/lib/lua/5.4/cjson/safe.lua'
                                              no file '/usr/local/lib/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/lib/lua/5.4/cjson/safe.lua'
                                              no file '/usr/lib/lua/5.4/cjson/safe/init.lua'
                                              no file ''
                                              no file '/var/lib/prosody/.luarocks/share/lua/5.4/cjson/safe.lua'
                                              no file '/var/lib/prosody/.luarocks/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/var/lib/prosody/custom_plugins/share/lua/5.4/cjson/safe.lua'
                                              no file '/var/lib/prosody/custom_plugins/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/lib/prosody/cjson/safe.so'
                                              no file '/usr/local/lib/lua/5.4/cjson/safe.so'
                                              no file '/usr/lib/lua/5.4/cjson/safe.so'
                                              no file '/usr/local/lib/lua/5.4/loadall.so'
                                              no file '/usr/lib/lua/5.4/loadall.so'
                                              no file ''
                                              no file '/var/lib/prosody/.luarocks/lib/lua/5.4/cjson/safe.so'
                                              no file '/usr/lib/prosody/cjson.so'
                                              no file '/usr/local/lib/lua/5.4/cjson.so'
                                              no file '/usr/lib/lua/5.4/cjson.so'
                                              no file '/usr/local/lib/lua/5.4/loadall.so'
                                              no file '/usr/lib/lua/5.4/loadall.so'
                                              no file ''
                                              no file '/var/lib/prosody/.luarocks/lib/lua/5.4/cjson.so'
                                              stack traceback:
                                              [C]: in upvalue '_real_require'
                                              /usr/lib/prosody/util/startup.lua:211: in function 'require'
                                              /usr/lib/jitsi-meet-prosody/mod_muc_meeting_id.lua:2: in main chunk
                                              [C]: in function 'xpcall'
                                              /usr/lib/prosody/core/modulemanager.lua:291: in upvalue 'do_load_module'
                                              /usr/lib/prosody/core/modulemanager.lua:378: in function 'prosody.core.modulemanager.load'
                                              /usr/lib/prosody/core/modulemanager.lua:152: in function 'prosody.core.modulemanager.load_modules_for_host'
                                              /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
                                              (...tail calls...)
                                              /usr/lib/prosody/core/hostmanager.lua:108: in function 'prosody.core.hostmanager.activate'
                                              /usr/lib/prosody/core/hostmanager.lua:58: in field '?'
                                              /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
                                              (...tail calls...)
                                              /usr/lib/prosody/util/startup.lua:468: in field '?'
                                              /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
                                              /usr/lib/prosody/util/fsm.lua:25: in upvalue 'notify_transitioned'
                                              /usr/lib/prosody/util/fsm.lua:58: in method 'begin_startup'
                                              /usr/lib/prosody/util/startup.lua:494: in function 'prosody.util.startup.prepare_to_start'
                                              /usr/lib/prosody/util/startup.lua:953: in function 'prosody.util.startup.prosody'
                                              /usr/lib/prosody/util/async.lua:161: in function 'prosody.util.async.default_runner_func'
                                              /usr/lib/prosody/util/async.lua:149: in function </usr/lib/prosody/util/async.lua:147>
gen 12 21:33:34 jitsi prosody[15124]: conference.93.41.144.192.nip.io:muc_domain_mapper: Loading mod_muc_domain_mapper for host conference.93.41.144.192.nip.io!
gen 12 21:33:34 jitsi prosody[15124]: conference.93.41.144.192.nip.io:muc_domain_mapper: Loading mod_muc_domain_mapper for host polls.93.41.144.192.nip.io!
gen 12 21:33:34 jitsi prosody[15124]: modulemanager: Error initializing module 'polls_component' on 'polls.93.41.144.192.nip.io': /usr/lib/prosody/util/startup.lua:211: module 'cjson.safe' not found:
                                              No LuaRocks module found for cjson.safe
                                              no field package.preload['cjson.safe']
                                              no file '/usr/lib/prosody/cjson/safe.lua'
                                              no file '/usr/local/share/lua/5.4/cjson/safe.lua'
                                              no file '/usr/local/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/share/lua/5.4/cjson/safe.lua'
                                              no file '/usr/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/local/lib/lua/5.4/cjson/safe.lua'
                                              no file '/usr/local/lib/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/lib/lua/5.4/cjson/safe.lua'
                                              no file '/usr/lib/lua/5.4/cjson/safe/init.lua'
                                              no file ''
                                              no file '/var/lib/prosody/.luarocks/share/lua/5.4/cjson/safe.lua'
                                              no file '/var/lib/prosody/.luarocks/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/var/lib/prosody/custom_plugins/share/lua/5.4/cjson/safe.lua'
                                              no file '/var/lib/prosody/custom_plugins/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/lib/prosody/cjson/safe.so'
                                              no file '/usr/local/lib/lua/5.4/cjson/safe.so'
                                              no file '/usr/lib/lua/5.4/cjson/safe.so'
                                              no file '/usr/local/lib/lua/5.4/loadall.so'
                                              no file '/usr/lib/lua/5.4/loadall.so'
                                              no file ''
                                              no file '/var/lib/prosody/.luarocks/lib/lua/5.4/cjson/safe.so'
                                              no file '/usr/lib/prosody/cjson.so'
                                              no file '/usr/local/lib/lua/5.4/cjson.so'
                                              no file '/usr/lib/lua/5.4/cjson.so'
                                              no file '/usr/local/lib/lua/5.4/loadall.so'
                                              no file '/usr/lib/lua/5.4/loadall.so'
                                              no file ''
                                              no file '/var/lib/prosody/.luarocks/lib/lua/5.4/cjson.so'
                                              stack traceback:
                                              [C]: in upvalue '_real_require'
                                              /usr/lib/prosody/util/startup.lua:211: in function 'require'
                                              /usr/lib/jitsi-meet-prosody/mod_polls_component.lua:6: in main chunk
                                              [C]: in function 'xpcall'
                                              /usr/lib/prosody/core/modulemanager.lua:291: in upvalue 'do_load_module'
                                              /usr/lib/prosody/core/modulemanager.lua:378: in function 'prosody.core.modulemanager.load'
                                              /usr/lib/prosody/core/modulemanager.lua:149: in function 'prosody.core.modulemanager.load_modules_for_host'
                                              /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
                                              (...tail calls...)
                                              /usr/lib/prosody/core/hostmanager.lua:108: in function 'prosody.core.hostmanager.activate'
                                              /usr/lib/prosody/core/hostmanager.lua:58: in field '?'
                                              /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
                                              (...tail calls...)
                                              /usr/lib/prosody/util/startup.lua:468: in field '?'
                                              /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
                                              (...tail calls...)
                                              /usr/lib/prosody/util/fsm.lua:25: in upvalue 'notify_transitioned'
                                              /usr/lib/prosody/util/fsm.lua:58: in method 'begin_startup'
                                              /usr/lib/prosody/util/startup.lua:494: in function 'prosody.util.startup.prepare_to_start'
                                              /usr/lib/prosody/util/startup.lua:953: in function 'prosody.util.startup.prosody'
                                              /usr/lib/prosody/util/async.lua:161: in function 'prosody.util.async.default_runner_func'
                                              /usr/lib/prosody/util/async.lua:149: in function </usr/lib/prosody/util/async.lua:147>
gen 12 21:33:34 jitsi prosody[15124]: polls.93.41.144.192.nip.io:tls: Certificates loaded
gen 12 21:33:34 jitsi prosody[15124]: conference.93.41.144.192.nip.io:muc_domain_mapper: Loading mod_muc_domain_mapper for host localhost!
gen 12 21:33:34 jitsi prosody[15124]: portmanager: Activated service 'c2s' on [*]:5222, [::]:5222
gen 12 21:33:34 jitsi prosody[15124]: portmanager: Activated service 'c2s_direct_tls' on no ports
gen 12 21:33:34 jitsi prosody[15124]: portmanager: Activated service 'legacy_ssl' on no ports
gen 12 21:33:34 jitsi prosody[15124]: localhost:tls: Certificates loaded
gen 12 21:33:34 jitsi prosody[15124]: localhost:cloud_notify: Module loaded
gen 12 21:33:34 jitsi prosody[15124]: conference.93.41.144.192.nip.io:muc_domain_mapper: Loading mod_muc_domain_mapper for host avmoderation.93.41.144.192.nip.io!
gen 12 21:33:34 jitsi prosody[15124]: modulemanager: Error initializing module 'av_moderation_component' on 'avmoderation.93.41.144.192.nip.io': /usr/lib/prosody/util/startup.lua:211: module 'cjson.safe' not found:
                                              No LuaRocks module found for cjson.safe
                                              no field package.preload['cjson.safe']
                                              no file '/usr/lib/prosody/cjson/safe.lua'
                                              no file '/usr/local/share/lua/5.4/cjson/safe.lua'
                                              no file '/usr/local/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/share/lua/5.4/cjson/safe.lua'
                                              no file '/usr/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/local/lib/lua/5.4/cjson/safe.lua'
                                              no file '/usr/local/lib/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/lib/lua/5.4/cjson/safe.lua'
                                              no file '/usr/lib/lua/5.4/cjson/safe/init.lua'
                                              no file ''
                                              no file '/var/lib/prosody/.luarocks/share/lua/5.4/cjson/safe.lua'
                                              no file '/var/lib/prosody/.luarocks/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/var/lib/prosody/custom_plugins/share/lua/5.4/cjson/safe.lua'
                                              no file '/var/lib/prosody/custom_plugins/share/lua/5.4/cjson/safe/init.lua'
                                              no file '/usr/lib/prosody/cjson/safe.so'
                                              no file '/usr/local/lib/lua/5.4/cjson/safe.so'
                                              no file '/usr/lib/lua/5.4/cjson/safe.so'
                                              no file '/usr/local/lib/lua/5.4/loadall.so'
                                              no file '/usr/lib/lua/5.4/loadall.so'
                                              no file ''
                                              no file '/var/lib/prosody/.luarocks/lib/lua/5.4/cjson/safe.so'
                                              no file '/usr/lib/prosody/cjson.so'
                                              no file '/usr/local/lib/lua/5.4/cjson.so'
                                              no file '/usr/lib/lua/5.4/cjson.so'
                                              no file '/usr/local/lib/lua/5.4/loadall.so'
                                              no file '/usr/lib/lua/5.4/loadall.so'
                                              no file ''
                                              no file '/var/lib/prosody/.luarocks/lib/lua/5.4/cjson.so'
                                              stack traceback:
                                              [C]: in upvalue '_real_require'
                                              /usr/lib/prosody/util/startup.lua:211: in function 'require'
                                              /usr/lib/jitsi-meet-prosody/mod_av_moderation_component.lua:10: in main chunk
                                              [C]: in function 'xpcall'
                                              /usr/lib/prosody/core/modulemanager.lua:291: in upvalue 'do_load_module'
                                              /usr/lib/prosody/core/modulemanager.lua:378: in function 'prosody.core.modulemanager.load'
                                              /usr/lib/prosody/core/modulemanager.lua:149: in function 'prosody.core.modulemanager.load_modules_for_host'
                                              /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
                                              (...tail calls...)
                                              /usr/lib/prosody/core/hostmanager.lua:108: in function 'prosody.core.hostmanager.activate'
                                              /usr/lib/prosody/core/hostmanager.lua:58: in field '?'
                                              /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
                                              (...tail calls...)
                                              /usr/lib/prosody/util/startup.lua:468: in field '?'
                                              /usr/lib/prosody/util/events.lua:81: in function </usr/lib/prosody/util/events.lua:77>
                                              (...tail calls...)
                                              /usr/lib/prosody/util/fsm.lua:25: in upvalue 'notify_transitioned'
                                              /usr/lib/prosody/util/fsm.lua:58: in method 'begin_startup'
                                              /usr/lib/prosody/util/startup.lua:494: in function 'prosody.util.startup.prepare_to_start'
                                              /usr/lib/prosody/util/startup.lua:953: in function 'prosody.util.startup.prosody'
                                              /usr/lib/prosody/util/async.lua:161: in function 'prosody.util.async.default_runner_func'
                                              /usr/lib/prosody/util/async.lua:149: in function </usr/lib/prosody/util/async.lua:147>
lines 126-187