Development News June 2020

Gajim development news

Development News June 2020

Gajim development news

June already brought Gajim 1.2, python-nbxmpp 1.0, and many plugin updates. But there is more: Blind Trust Before Verification for OMEMO, drag and drop improvements, and a new translation service for Gajim.

Translations

Let’s start this post a little bit different by announcing an infrastructure update. In the past, translations for Gajim and gajim.org have been managed through Pootle, a web based translation software. Development on Pootle has been stalled for some time now, which made us look out for a replacement. Switching to Weblate brought us better quality checks, easier translation via string suggestions, and greatly improved support for working on mobile devices (to name a few). Since we changed many strings with Gajim 1.2, some parts of Gajim have not been translated yet. If you like to contribute some translations (no development skills required), you can start by having a look at translate.gajim.org. Any help is appreciated.

Changes in Gajim

Generally, a graphical user interface should be self-explanatory. Gajim’s ‘Start / Join Chat’ window is meant to become the starting point for many actions, thus offering many features. To help you discover these features, we decided to add a little info bar. If you decide to close this hint, it won’t bother you again (unless you reset all hints in Gajim’s preferences).

Info bar showing usage hint

Info bar showing usage hint

Did you know that you can invite people to a group chat via drag and drop? A new overlay makes file transfers and chat invitations via drag and drop a little bit prettier.

Drag and drop overlay for files and contacts

Drag and drop overlay for files and contacts

What else happened

  • fixed sort order for group chat participants when sorting by status
  • Server Info window now displays the server status address if one is supplied by the service operator
  • global group chat search now reuses the search term if you already entered one
  • idle status (away because of inactivity) and status display improvements
  • shortcut improvements for MacOS (removed Alt key mappings)
  • various bug fixes

Plugin updates

This month, Gajim’s OMEMO plugin received a new feature called Blind Trust Before Verification (BTBV). With BTBV enabled, Gajim will blindly trust any device a contact might be using, and new devices will be trusted as well. As long as you don’t verify a fingerprint, Gajim will mark any new fingerprint as ‘blindly trusted’. As soon as you verify a contact, you have to verify every new fingerprint (e.g. if the contact adds a new device). So, for those of you who are verifying each device’s fingerprint, this new feature won’t change anything. For people deciding to use BTBV, this means less fingerprint-checking and easier use. It’s a trade-off, but it’s your decision. If you like to learn more about BTBV, Daniel Gultsch wrote a piece about trust management.

More OMEMO: A bug has been fixed where messages would get dropped silently if there was a decryption error. The plugin also won’t include inactive devices while checking if there are devices with an undecided trust level. Furthermore, the shield icon is now used for both incoming and outgoing messages.

Plugin updates: Every time Gajim starts, the plugin installer will check if there are updates available. If there is an update for your plugins, the plugin installer would pop up a message asking you to update. Clicking ‘Update’ will now update directly, without showing the plugins window first.

Changes in python-nbxmpp

This month version 1.0 of python-nbxmpp has been released. The library has been rewritten in most parts and now features an example client for testing.

As always, feel free to join gajim@conference.gajim.org to discuss with us.

Gajim