Requirements
Runtime Requirements
- Python (>=3.10)
- PyGObject (>=3.42.0)
- pycairo
- cairo (>=1.16.0)
- nbxmpp (>=4.2.2)
- cryptography (>=3.4.8)
- css-parser
- keyring
- precis_i18n
- packaging
- Pillow
- setuptools (>=65.0.0)
- Gtk3 (>=3.24.30)
- GLib (>=2.60.0)
- GtkSourceView
- Pango (>=1.50.0)
- sqlite (>=3.33.0)
- omemo-dr (>=1.0.0)
- qrcode (>=7.3.1)
Optional Runtime Requirements
- D-Bus running to have gajim-remote working
- sentry-sdk for Sentry error reporting to dev.gajim.org (users decide whether to send reports or not)
- gspell and hunspell-LANG where lang is your locale eg. en, fr etc
- libsecret for GNOME Keyring or KDE support as password storage
- GUPnP-IGD for better NAT traversing
- NetworkManager for network lose detection
- GeoClue for sharing your location
- GSound for sound on Linux
- AppIndicator for App Indicator on Wayland
For Video and Audio Calls
Build Requirements
- setuptools (>=65.0.0)
- gettext
To build Gajim a PEP517 build frontend like pip (https://pip.pypa.io/en/stable/) or build (https://pypa-build.readthedocs.io/en/stable/) must be used.
The build frontend takes care of installing all python build requirements. Beware gettext
is not a python library and cannot be installed by the build frontend.
Building
Building the metadata files (Unix only)
./pep517build/build_metadata.py -o dist/metadata
Building the wheel
This is only necessary if you need the wheel, otherwise you can skip to the Installing section.
build
Using python -m build -w
pip
Using pip wheel --no-deps --use-pep517 -w dist .
Installing
pip
Installing with pip install .
Installing the wheel
pip install dist/name_of_wheel.whl
Installing the metadata files (Unix only)
./pep517build/install_metadata.py dist/metadata --prefix=/usr
Tests
python -m unittest discover -s test
-
python -m unittest ./test/dialogs/gui_file.py
(for testing GUI files)
Packages and install instructions
Packages
Flatpak
see README
Snapshots
Mac
see Wiki
Developing
To create a virtualenv you can execute
./scripts/dev_env.sh
Be sure all install requirements are available.
Afterwards activate the virtual environment with
source .venv/bin/activate
./launch.py
Windows
see README
Miscellaneous
Debugging
Execute gajim with --verbose
Links
That is all, enjoy!
(C) 2003-2023 The Gajim Team https://gajim.org
We use original art and parts of sounds and other art from Psi, Gossip, Gnomebaker, Gaim and some icons from various gnome-icons (mostly Dropline Etiquette) we found at art.gnome.org. If you think we're violating a license please inform us. Thank you.