Next steps (2025): migrating to cilium/ebpf, port to Qt6 #1222
gustavo-iniguez-goya
started this conversation in
Development
Replies: 2 comments 7 replies
-
Great news for OpenSnitch futur ! Will the move to cilium/ebpf make it easier to dump the connection to a PCAP or tshark terminal ? ([Feature Request] Add the possibility to dump the connection to a PCAP · Issue #557 · evilsocket/opensnitch) |
Beta Was this translation helpful? Give feedback.
1 reply
-
Hello, ive been trying to package it for openSUSE and found lots of problems with aging protobuf dependencies. |
Beta Was this translation helpful? Give feedback.
6 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
We have two important tasks ahead of us to keep opensnitch up to date.
eBPF
Up until now we've been using https://github.com/iovisor/gobpf/ for intercepting events from the kernel, and it has worked very well.
But unfortunately it's deprecated since 2021 (iovisor/gobpf#304), which means that some of the known issues and limitations won't be fixed:
So after evaluating some options, I've migrated the code from gobpf to github.com/cilium/ebpf.
The results so far are:
(If we also get rid of the libnetfilter_queue library in favor of go-nfqueue, we could be more portable (android, embedded devices, etc.).)
More testing is needed, but it looks promising.
Qt6
We've been using PyQt5 for the GUI since at least 1.0.x version. But as Qt5 entered EoS some years ago, a lot of distros have started to deprecate it.
The concerning news regarding OpenSnitch is that Ubuntu plans to remove Qt5 from Ubuntu 25/26 https://discourse.ubuntu.com/t/removing-qt-5-from-ubuntu-before-the-release-of-26-04-lts/49296 , https://www.phoronix.com/news/Ubuntu-Hopes-Removing-Qt-5.
Probably other distros will remove it earlier. NixOS for example asked to port the GUI to Qt6 some time go.
This means, that it won't be possible to install the OpenSnitch GUI on old distros, like LinuxMint 17 to 21, Ubuntu 16 to 22 ... unless you install PyQt5 manually via pip. Or well, we make the GUI compatible with PyQt5 and PyQt6.
There's no estimation for this task yet.
https://www.pythonguis.com/faq/pyqt5-vs-pyqt6/
Beta Was this translation helpful? Give feedback.
All reactions