XMPP: Dino for Librem 5

Dino is a fancy XMPP Client for GTK & Phosh, so i created a new and dedicated thread to track all development of Dino for Librem 5.

New version:

dino 0.4.3 just got released with some exciting improvements. 

1. Several fixes for touch input, making audio/video calls actually usable
2. Fixes for video support so devices with #libcamera / #pipewire 
3. The app is now recognized as mobile friendly on #Phosh
4. Stricter #Flatpak sandbox - no device/all any more

The new version is available on #Flathub and lots of distro repos.

Hello: I just looked at version 0.4.3 is not in Flathub. Am I crazy? I also tried to update/upgrade and it says my version (0.4.2) is the most current version.


1 Like

Yeah version 0.4.3 is not available yet, i compiled manually but it is not work like expected because byzantium ship old gtk4 version. I hate Flatpak because brake libs from stable base.

1 Like

You could build the Flatpak by yourself instead.


I installed Dino version 0.4.2 from the PureOS Store, and it doesn’t support audio notifications out-of-the-box. Is there a special package that needs to be installed for audio notifications to work? I also tried the flatpak version (0.4.2), but it has the same problem. I don’t want to compile it myself, if that’s the only option.

For now, I am using both Purism’s Chats app and Dino. I prefer the design of Chats (and the audio notifications), so I use it for messages, while I use Dino only for calls.

So is there something simple I can do (package install) in order to enable audio notifications for Dino?

Also, does anyone know if there are any plans to incorporate XMPP calls into Purism’s Calls app? I know they are working on Matrix calls, but it would be nice if they also included XMPP calls.

I believe this post is what you are looking for on the notifications: Notifications for Apps

I integrate JMP.chat with Dino and Chatty. Works almost flawlessly. I have to remember to turn off the XMPP account in Chatty to properly us cellular though. It is annoying.

1 Like

Thanks for the info. I guess we have to wait for the Dino devs to implement notification feedback then. Though I would prefer Purism to implement encrypted XMPP calling into the Calls app. Here’s hoping.

Sorry, I should have said that JMP.chat does work in Calls as well. I use it to make Wifi calls daily.

That’s unencrypted calls though, right?

It’s switching from xmpp calls to sip calls. Jmp supports either/or (can’t have both at the same time).

That said, I would personally prefer to have xmpp calls supported than have to switch jmp to sip because of limitations of a single device.

1 Like

Interesting. It’s still not for me though, since it’s a phone provider that allows unsecure unencrypted communications, uses phone numbers, and requires a monthly payment. Thanks for the info though. I didn’t know that it uses Jabber and optionally supports encryption with other Jabber users. Neat.

It was more of a response to expand on @flanders51 statement and pointint out that while jmp can integrate into the calls app by way of sip it’s not actually addressing your desire for xmpp calls. And separately for those who do want to use jmp and xmpp audio like myself that getting xmpp audio working is valued.

1 Like

I just installed

$ sudo apt-get install dino-im

$ apt search dino-im
Sorting… Done
Full Text Search… Done
dino-im/byzantium,now 0.4.2-1pureos1 arm64 [installed]
modern XMPP client

dino-im-common/byzantium,now 0.4.2-1pureos1 all [installed,automatic]
modern XMPP client - common files

At least I could sent/receive text/photo/files/ audio* . I could make audio call between Android and L5. Further test will follow.

*I could not find a button to record audio on Dino app L5. But I can send any audio previously recorded.


recording with arecord

this bash script start recording a wav file until q key is pressed.

–file: arec.sh–

echo "🎤"
arecord -r 16000 --use-strftime ~/%H%M%S%d%m.wav &
while read -n1 char ; do
  if [ "$char" = "$key" ] ; then
      kill "$pid"
      ls *.wav

the --use-strftime is the format to obtain audio file name
The important strftime codes are: %Y is the year, %m month, %d day of the month, %H hour, %M minute and %S second.

make script executable with
chmod +x arec.sh

and put it on $PATH environment or $HOME or any folder you want

from terminal you can start to record with
$ ./path/to/arec.sh


I am digging your efforts here. However, I am am not sure I understand why you would want to do this? Can you elaborate?


1 Like


Is to send audio messages with Dino.
Dino 0.4.2-1 can send wav files, but doesn’t have a button to record voice messages.
I don’t have an audio recorder application on Librem 5 to record my voice.
With the arec.sh script I can record my audio message to send my contacts with Dino.

Adding an Icon and a .desktop file to the bash script and I have a recording microphone app.


I think CTRL/C works to terminate a recording cleanly.

1 Like

Way to go! You got me to start Dino for the first time in six months.

I was pleasantly surprised to see that my JMP/Cheogram service is now working to send/receive both text and voice. The only anomaly was that the is no ring notification for calls (text is fine).

Anyone else see this?


Yep. No ring tone here as well. Sometimes the calls fail as well. Text is almost flawless.