Desktop Qt based XMPP messenger
Go to file
shunf4 dbcc74ce09 set QSettings account array size when saving 2021-12-19 22:27:29 +08:00
cmake add forgotten cmake/ 2021-10-06 00:55:39 +08:00
core set QSettings account array size when saving 2021-12-19 22:27:29 +08:00
external build: finish up CMakeLists refactoring 2021-05-11 22:21:25 +03:00
packaging Merge remote-tracking branch 'origin/master' into messageFeed 2021-09-22 23:09:48 +03:00
plugins build: plugins/, passwordStorageEngines/wrappers/ as shared libs 2021-05-12 02:01:02 +03:00
resources add icns to macos bundle; use macdeployqt post build 2021-10-06 17:34:33 +08:00
shared [Fix] Merge branch 'feat/adapt_win_osx' into upstream_messageFeed 2021-10-05 23:45:37 +08:00
translations translation verification 2021-09-22 23:43:03 +03:00
ui Merge pull request 'fix: use fallback icons on buttons, when no supported theme is installed' (#53) from shunf4/squawk:fix/btn_icons into messageFeed 2021-10-16 15:36:57 +00:00
.gitmodules debugging vanished messages 2019-06-28 18:15:30 +03:00 highlight in directory now is optional runtime plugin to KIO, several more file managers to fallback, refactor, 2 new icons 2021-05-06 17:44:43 +03:00
CMakeLists.txt add flag -fno-sized-deallocation, eliminating _ZdlPvm 2021-10-06 18:47:59 +08:00 started to devide contact and MUC, license, readme, attach icon 2019-08-14 17:54:46 +03:00 update docs for win32 build 2021-10-06 00:53:50 +08:00
appveyor.yml fix ci macos matrix item 2021-10-06 18:50:00 +08:00

Squawk - a compact XMPP desktop messenger

AUR license AUR version Liberapay patrons

Squawk screenshot


  • QT 5.12 (lower versions might work but it wasn't tested)
  • lmdb
  • CMake 3.0 or higher
  • qxmpp 1.1.0 or higher
  • KDE Frameworks: kwallet (optional)
  • KDE Frameworks: KIO (optional)
  • Boost


The easiest way to get the Squawk is to install it from AUR (if you use Archlinux like distribution)

Here is the link for the AUR package

You can also install it from console if you use some AUR wrapper. Here what it's going to look like with pacaur

$ pacaur -S squawk


You can also clone the repo and build it from source

Squawk requires Qt with SSL enabled. It uses CMake as build system.

Please check the prerequisites and install them before installation.

For Windows (Mingw-w64) build

You need Qt for mingw64 (MinGW 64-bit) platform when installing Qt.

The best way to acquire library lmdb and boost is through Msys2.

First install Msys2, and then install mingw-w64-x86_64-lmdb and mingw-w64-x86_64-boost by pacman.

Then you need to provide the cmake cache entry when calling cmake for configuration:

cmake .. -D LMDB_ROOT_DIR:PATH=<Msys2 Mingw64 Root Directory> -D BOOST_ROOT:PATH=<Msys2 Mingw64 Root Directory>

<Msys2 Mingw64 Root Directory>: e.g. C:/msys64/mingw64.

There are two ways to build, it depends whether you have qxmpp installed in your system

Building with system qxmpp

Here is what you do

$ git clone
$ cd squawk
$ mkdir build
$ cd build
$ cmake .. [-D LMDB_ROOT_DIR:PATH=...] [-D BOOST_ROOT:PATH=...]
$ cmake --build .

Building with bundled qxmpp

Here is what you do

$ git clone --recurse-submodules
$ cd squawk
$ mkdir build
$ cd build
$ cmake --build .

You can always refer to appveyor.yml to see how AppVeyor build squawk.

List of keys

Here is the list of keys you can pass to configuration phase of cmake ...

  • CMAKE_BUILD_TYPE - Debug just builds showing all warnings, Release builds with no warnings and applies optimizations (default is Debug)
  • SYSTEM_QXMPP - True tries to link against qxmpp installed in the system, False builds bundled qxmpp library (default is True)
  • WITH_KWALLET - True builds the KWallet capability module if KWallet is installed and if not goes to False. False disables KWallet support (default is True)
  • WITH_KIO - True builds the KIO capability module if KIO is installed and if not goes to False. False disables KIO support (default is True)


This project is licensed under the GPLv3 License - see the file for details