Profanity is a console based instant messaging client for XMPP (Jabber) protocol based chat. It is inspired by popular IRC client IRSSI.

Debian provides to packages:

The profanity-light version does not depend on X11 libraries nor Python. If you like to have support for xscreensaver, icons, notifications, or Python plugins, you should install profanity instead of profanity-light.

Troubleshooting guide


You got a message "You received a message encrypted with OMEMO but your client doesn't support OMEMO."

First, make sure the sender has trusted your key(s). You key can be shown by /omemo fingerprint command. The first key is the key of your device. The following keys are key from other clients.

Keep in mind, you need to also trust your own keys as well. If it's still not working, we need to check why.

First step: Lookup your OMEMO Device ID:

$ grep "device_id" ~/.local/share/profanity/omemo/YOUR_JID_WITH_AT/identity.txt 

$ JID="your_jid@domain.tld" FILE=`echo ~/.local/share/profanity/omemo/$JID/identity.txt | sed -e "s/@/_at_/g"` ; grep "device_id" $FILE

Check if you device id has been pushed to you PEP. Open the XMP console via /xmlconsole request your device list from your server by sending the XML stanza:

<iq type='get'  id='fetch_omemo_device_list'> <pubsub xmlns=''> <items node='eu.siacs.conversations.axolotl.devicelist'/> </pubsub> </iq>

You device id should be listed in the RECV response.

Second step: Check the incoming message.

The incoming message should have a <key rid="1234567890" ... entry, where rid is your device id.