Can not start GUI without PROTOCOL_BUFFERS option #145
Description
Hello all, was having a fun time trying to launch the GUI, found a way but may be impacting performance.
On launch the GUI presented with the following error:
greg@util1:~$ opensnitch-ui
Traceback (most recent call last):
File "/usr/bin/opensnitch-ui", line 23, in <module>
from opensnitch.service import UIService
File "/usr/lib/python3/dist-packages/opensnitch/service.py", line 13, in <module>
from opensnitch import ui_pb2
File "/usr/lib/python3/dist-packages/opensnitch/ui_pb2.py", line 32, in <module>
_descriptor.EnumValueDescriptor(
File "/home/greg/.local/lib/python3.10/site-packages/google/protobuf/descriptor.py", line 755, in __new__
_message.Message._CheckCalledFromGeneratedFile()
TypeError: Descriptors cannot not be created directly.
If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.
If you cannot immediately regenerate your protos, some other possible workarounds are:
1. Downgrade the protobuf package to 3.20.x or lower.
2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower).
protobuf was already at 3.12.4 and grpcio was at latest version.
To Reproduce
Installed using DEB packages on Ubuntu 22.04 fresh out of the box on new test workstation with only one round of apt updates.
Steps to reproduce the behavior:
Downloaded and installed on fresh Ubuntu 22.04 install.
Post error logs:
Expected behavior (optional)
GUI should start.
Screenshots
No screenshot of a GUI not starting.
OS (please complete the following information):
Ubuntu 22.04.1 LTS (jammy)
Additional context
Using the PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python export allows the GUI to start and performance is relatively snappy.