Installation

Containers

A container is built on every push to the git repository and uploaded to the codeberg package registry.

docker run codeberg.org/slidge/slidge-whatsapp:latest-amd64  # works with podman too

Use the :latest-amd64 tag for the latest release, :vX.X.X-amd64 for release X.X.X, and :main-amd64 for the bleeding edge. -arm64 images are also available.

For data persistence, mount a writeable directory into /var/lib/slidge. Inside the container, slidge-whatsapp runs as the slidge user with UID/GID 10000/10000.

slidge-whatsapp must be able to reach your XMPP server, so set up networking accordingly.

Python packages

PyPI package version

slidge-whatsapp is available on the python package index (PyPI).

If you are not familiar with python packaging, we recommend using pipx to set up slidge-whatsapp and its dependencies, isolated from the rest of your system.

# for the latest stable release published to PyPI, if any
pipx install slidge-whatsapp

slidge-whatsapp --help

Bleeding edge versions are also available on codeberg’s python index.

# for the bleeding edge
pipx install slidge-whatsapp \
    --pip-args='--extra-index-url https://codeberg.org/api/packages/slidge/pypi/simple/ --pre'

Unofficial debian package

If you are using debian you might be interested in installing the slidge (unofficial) debian package which bundles slidge-whatsapp along with other slidge-based XMPP gateways.

Follow the instructions in the repository README. In short:

  • Configure your XMPP ;

  • edit /etc/slidge/conf.d/common.conf;

  • edit /etc/slidge/whatsapp.conf;

  • run sudo systemctl start slidge@whatsapp;

  • watch the logs with sudo journalctl -u slidge@whatsapp -f.

Optional dependencies

WhatsApp requires that image, audio, and video attachments are sent in specific formats; these formats are generaly incompatible with prevailing standards across XMPP clients.

Thus, sending attachments with full client compatibility requires that we convert these on-the-fly; this requires that FFmpeg is installed. If a valid FFmpeg installation is not found, attachments will still be sent in their original formats, which may cause these to appear as “document” attachments in official WhatsApp clients.

FFmpeg is widely used and packaged – please refer to your distribution’s documentation on how to install the FFmpeg package.