I'm running maubot with Docker. My problem is that Docker maubot lacks the required packages demanded by frotzbot.
How can I get them inside Docker maubot? I tried adding the frotzbot requirements to the Docker maubot requirements file, after which I built a new Docker maubot version with these additional requirements. I had to modify some versions of the packages for the build not to fail, like so:
Running the plugin with this build then yields these errors:
16:37:39ERRORloader.zipTraceback (most recent call last):
File "/opt/maubot/maubot/loader/zip.py", line 203, in _load
importer.load_module(module)
File "/opt/maubot/maubot/lib/zipimport.py", line 282, in load_module
exec(code, mod.__dict__)
File "/data/plugins/com.example.frotzbot-v1.0.0.mbp/frotzbot/__init__.py", line 1, in <module>
from .jerichobot import JerichoBot
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 664, in _load_unlocked
File "<frozen importlib._bootstrap>", line 627, in _load_backward_compatible
File "<frozen zipimport>", line 259, in load_module
File "/data/plugins/com.example.frotzbot-v1.0.0.mbp/frotzbot/jerichobot.py", line 5, in <module>
import jericho
File "/usr/lib/python3.9/site-packages/jericho/__init__.py", line 1, in <module>
from .jericho import *
File "/usr/lib/python3.9/site-packages/jericho/jericho.py", line 23, in <module>
frotz_lib = cdll.LoadLibrary(os.path.join(os.path.dirname(__file__),
File "/usr/lib/python3.9/ctypes/__init__.py", line 452, in LoadLibrary
return self._dlltype(name)
File "/usr/lib/python3.9/ctypes/__init__.py", line 374, in __init__
self._handle = _dlopen(self._name, mode)
OSError: Error relocating /usr/lib/python3.9/site-packages/jericho/libfrotz.so: __vfprintf_chk: symbol not found
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/maubot/maubot/loader/zip.py", line 188, in load
return self._load(reset_cache)
File "/opt/maubot/maubot/loader/zip.py", line 207, in _load
raise MaubotZipLoadError(f"Failed to load module {module}")
maubot.loader.zip.MaubotZipLoadError: Failed to load module frotzbot
16:37:39ERRORserverError in handler
16:37:39ERRORserverTraceback (most recent call last):
File "/opt/maubot/maubot/loader/zip.py", line 203, in _load
importer.load_module(module)
File "/opt/maubot/maubot/lib/zipimport.py", line 282, in load_module
exec(code, mod.__dict__)
File "/data/plugins/com.example.frotzbot-v1.0.0.mbp/frotzbot/__init__.py", line 1, in <module>
from .jerichobot import JerichoBot
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 664, in _load_unlocked
File "<frozen importlib._bootstrap>", line 627, in _load_backward_compatible
File "<frozen zipimport>", line 259, in load_module
File "/data/plugins/com.example.frotzbot-v1.0.0.mbp/frotzbot/jerichobot.py", line 5, in <module>
import jericho
File "/usr/lib/python3.9/site-packages/jericho/__init__.py", line 1, in <module>
from .jericho import *
File "/usr/lib/python3.9/site-packages/jericho/jericho.py", line 23, in <module>
frotz_lib = cdll.LoadLibrary(os.path.join(os.path.dirname(__file__),
File "/usr/lib/python3.9/ctypes/__init__.py", line 452, in LoadLibrary
return self._dlltype(name)
File "/usr/lib/python3.9/ctypes/__init__.py", line 374, in __init__
self._handle = _dlopen(self._name, mode)
OSError: Error relocating /usr/lib/python3.9/site-packages/jericho/libfrotz.so: __vfprintf_chk: symbol not found
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/maubot/maubot/management/api/middleware.py", line 43, in error
return await handler(request)
File "/opt/maubot/maubot/management/api/instance.py", line 87, in update_instance
return await _update_instance(instance, data)
File "/opt/maubot/maubot/management/api/instance.py", line 71, in _update_instance
await instance.update_started(data.get("started", None))
File "/opt/maubot/maubot/instance.py", line 289, in update_started
await (self.start() if started else self.stop())
File "/opt/maubot/maubot/instance.py", line 173, in start
cls = await self.loader.load()
File "/opt/maubot/maubot/loader/zip.py", line 188, in load
return self._load(reset_cache)
File "/opt/maubot/maubot/loader/zip.py", line 207, in _load
raise MaubotZipLoadError(f"Failed to load module {module}")
I'm running maubot with Docker. My problem is that Docker maubot lacks the required packages demanded by frotzbot.
How can I get them inside Docker maubot? I tried adding the frotzbot requirements to the Docker maubot requirements file, after which I built a new Docker maubot version with these additional requirements. I had to modify some versions of the packages for the build not to fail, like so:
Running the plugin with this build then yields these errors: