GNUnet Messenger API: March 2024

Hello again,

this month we finally got the release of GNUnet 0.21.0 and in addition we released a new release of libgnunetchat and both messenger front-ends. I tried to make sure the flatpak and snap packages work. However there were some difficulties.

For example the flatpak runtime, the application uses, did not contain libportal for some reason. I needed to include that. The release of libgnunetchat caused a build issue because it required a dependency from the new meson build of GNUnet. The usage of Pipewire caused an immediate crash because of missing permissions. At the same time I worked on the flatpak manifest to make it update its dependencies automatically in the future via the external data checker that Flathub provides.

public relation picture of the messenger application

In the end the flatpak seems to work now. Only camera access is still not fully cooked yet. On my Librem 5 it gives a format error and fails to show an image. If no camera is connected at all, the application might freeze for a while when opening the dialog to add a contact. So I’m still looking into fixing both issues. The first issue might actually be related to GStreamer requesting an unknown resolution from the camera to display which potentially results in memory limitations. At least when trying to open up a pipeline from terminal, it also failed because of lacking memory.

Was it any easier with the snap package? Not really. The whole build failed when running into GNUnet 0.21.0 requiring a later version of cURL than currently supplied in the Ubuntu repositories from 22.04 LTS. So I’m currently waiting for the upcoming LTS release in April to bump the snap up to using core24 as base. Until then it’ll stick to the previous release.

I definitely ran into quite a lot of problems during all of this which did not occur consistently during testing on my own devices when building from source. So I’ve made notes and started fixing issues as well as adding some missing quality of life features. For example I’ve added a list of the blocked contacts to the settings panel now. You can search inside your chats for messages by text. Downloaded files will automatically trigger a refresh to potentially view the content in case of images and animations. Tags will now be listed below a message but I still need to implement the dialog to tag messages.

Anyway I will probably publish a minor release soon to bring those changes and fixes. The focus is currently on making changes which do not require any major adjustments in the GNUnet service. So I don’t need to wait for another release for publishing my changes. I assume this might account for the profile pictures as well. But before I implement that libgnunetchat needs some changes to allow giving accounts a proper nick name. At the moment account names are still the equivalent of the GNS identity name which does not allow any form of UTF-8 string. So that’s not great for usability yet.

On the other hand there’s still a lot of work in progress in GNUnet to bring NAT traversal, improve connection reliability and reducing power consumption for low power devices. But a lot progress has been made with the new transport layer already. So hopefully it won’t take long anymore to see practical use for the casual user.

Kind regards,
Jacki

Read original article

Popular posts from this blog

GNUnet Messenger API: March

GNUnet Messenger API: September

GNUnet Messenger API: December