# Gajim

Gajim is a full featured and easy to use Jabber/XMPP client.

## Installation

Install the gajim package.

## Auto logout on suspend

If you suspend your computer gajim stays connected for about 15 minutes. To prevent message loss, it is needed to set your status offline before suspending or hibernating. The status message won't be changed.

This can be achieved by creating a new systemd unit `gajim-suspend@.service` that uses Gajim's D-Bus interface:

    /etc/systemd/system/gajim-suspend@.service

    [Unit]
    Description=Suspend Gajim
    Before=sleep.target
    StopWhenUnneeded=yes

    [Service]
    Type=oneshot
    User=%I
    RemainAfterExit=yes
    Environment=DISPLAY=:0
    ExecStart=-/usr/bin/bash -c ". /home/%I/.dbus/session-bus/$(</var/lib/dbus/machine-id)-0 && /usr/bin/gajim-remote change_status offline"
    ExecStop=/usr/bin/bash -c ". /home/%I/.dbus/session-bus/$(</var/lib/dbus/machine-id)-0 && /usr/bin/gajim-remote change_status online"

    [Install]
    WantedBy=sleep.target

The D-Bus remote control feature must be enabled for the systemd unit to work. It can be tested using

    $ gajim-remote check_gajim_running

In case it returns "False" while Gajim is running, enable remote_control in the 'Advanced Configuration Editor' (Preferences -> Advanced -> 'Advanced Configuration Editor'), then restart Gajim.

Then enable the service.

## Off-the-Record Messaging

OTR (off-the-record) messaging is strong end-to-end encryption protocol for instant messaging (read more). OTR hasn't any XMPP XEP, because OTR is of cross-protocol nature. Gajim does not support OTR out of the box.

Install the gajim-plugin-otrAUR package.

### Configuration

At first time, you also need to activate OTR plugin:

1. Go to menu Edit => Modules;
2. Activate the "Off-the-record encryption" plugin;
3. Click on plugin settings button;
4. Generate your OTR key using "Generate key";
5. Take a look on other settings;
6. Close dialogs to save the changes.

## OMEMO Support

OMEMO Multi-End Message and Object Encryption is an XMPP Extension Protocol (XEP) for secure multi-client end-to-end encryption. It is an open standard based on Axolotl and PEP which can be freely used and implemented by anyone and recently got an experimental plugin for Gajim.

In order to use OMEMO in Gajim, just install the gajim-plugin-omemoAUR package which will also install all the required dependencies.

### Configuration

After installing the OMEMO plugin, you have to enable it in Gajim Plugin Manager in order to use it:

1. Go to menu Edit => Plugins;
2. Activate the "OMEMO Multi-End Message and Object Encryption" plugin;
3. Close dialogs to save the changes.
4. Please refer to the official documentation for running instructions

Category:

- Internet applications