From 8d82d340a4fa5394a97bab107e0797d5095970d2 Mon Sep 17 00:00:00 2001 From: blue Date: Sun, 4 Feb 2024 13:36:51 -0300 Subject: [PATCH] 0.2.3 preparation, typo fix, readme changes --- CHANGELOG.md | 2 +- README.md | 73 +++++++++++++++++++++--------------- main/application.cpp | 2 +- packaging/Archlinux/PKGBUILD | 8 ++-- 4 files changed, 48 insertions(+), 37 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0c11404..4ca1542 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,7 +17,7 @@ ### New features - now you can enable tray icon from settings! - there is a job queue now, this allowes to spread a bit the spam on the server at connection time -- squawk now querries clients of it's peers, you can see what programs other people use +- squawk now queries clients of it's peers, you can see what programs other people use ## Squawk 0.2.2 (May 05, 2022) ### Bug fixes diff --git a/README.md b/README.md index 121b640..9c835b6 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ - QT 5.12 *(lower versions might work but it wasn't tested)* - CMake 3.4 or higher - qxmpp 1.1.0 or higher -- LMDBAL (my own [library](https://git.macaw.me/blue/lmdbal) around lmdb) +- LMDBAL (my own [library](https://git.macaw.me/blue/lmdbal) for lmdb) - KDE Frameworks: kwallet (optional) - KDE Frameworks: KIO (optional) - KDE Frameworks: KConfig (optional) @@ -33,14 +33,49 @@ $ pacaur -S squawk ### Building -You can also clone the repo and build it from source +You can also 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. +--- + +There are several ways to build Squawk. The one you need depends on whether you have `qxmpp` and `lmdbal` installed in your system. + +#### Building with system dependencies + +This is the easiest way but it requires you to have `qxmpp` and `lmdbal` installed as system packages. Here is what you do: + +``` +$ git clone https://git.macaw.me/blue/squawk +$ cd squawk +$ mkdir build +$ cd build +$ cmake .. +$ cmake --build . +``` + +#### Building with bundled qxmpp + +If you don't have any of `qxmpp` or `lmdbal` (or both) installed the process is abit mor complicated. +On the configuration stage you need to enable one or both entries in the square brackets, depending on what package your system lacks. + +Here is what you do + +``` +$ git clone --recurse-submodules https://git.macaw.me/blue/squawk +$ cd squawk +$ mkdir build +$ cd build +$ cmake .. [-D SYSTEM_QXMPP=False] [-D SYSTEM_LMDBAL=False] +$ cmake --build . +``` + #### For Windows (Mingw-w64) build +**Building for windows is not mainteined, but was possible in the past, you can try, but it probably won't work** + You need Qt for mingw64 (MinGW 64-bit) platform when installing Qt. The best way to acquire library `lmdb` and `boost` is through Msys2. @@ -49,54 +84,30 @@ First install Msys2, and then install `mingw-w64-x86_64-lmdb` and `mingw-w64-x86 Then you need to provide the cmake cache entry when calling cmake for configuration: -``` -cmake .. -D LMDB_ROOT_DIR:PATH= -D BOOST_ROOT:PATH= -``` - ``: 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 https://git.macaw.me/blue/squawk -$ 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 https://git.macaw.me/blue/squawk $ cd squawk $ mkdir build $ cd build -$ cmake .. -D SYSTEM_QXMPP=False [-D LMDB_ROOT_DIR:PATH=...] [-D BOOST_ROOT:PATH=...] +$ cmake .. -D SYSTEM_QXMPP=False -D SYSTEM_LMDBAL=False -D LMDB_ROOT_DIR:PATH= -D BOOST_ROOT:PATH= $ cmake --build . ``` -You can always refer to `appveyor.yml` to see how AppVeyor build squawk. +You can always refer to `appveyor.yml` to see how AppVeyor build squawk for windows. ### List of keys -Here is the list of keys you can pass to configuration phase of `cmake ..`. +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`) - `SYSTEM_LMDBAL` - `True` tries to link against `LMDABL` installed in the system, `False` builds bundled `LMDBAL` 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`) - `WITH_KCONFIG` - `True` builds the `KConfig` and `KConfigWidgets` capability module if such packages are installed and if not goes to `False`. `False` disables `KConfig` and `KConfigWidgets` support (default is `True`) -- `WITH_OMEMO` - `True` builds the OMEMO encryption, requires `qxmpp` of version >= 1.5.0 built with OMEMO support. `False` disables OMEMO support (default is `True`) +- `WITH_OMEMO` - `True` builds the OMEMO encryption, requires `qxmpp` of version >= 1.5.0 built with OMEMO support. `False` disables OMEMO support (default is `False`) ## License diff --git a/main/application.cpp b/main/application.cpp index d184e6b..15e9208 100644 --- a/main/application.cpp +++ b/main/application.cpp @@ -245,7 +245,7 @@ void Application::onChangeTray(bool enabled, bool hide) { trayIcon = nullptr; } } - } else if (trayIcon == nullptr) { + } else if (trayIcon != nullptr) { trayIcon->deleteLater(); trayIcon = nullptr; } diff --git a/packaging/Archlinux/PKGBUILD b/packaging/Archlinux/PKGBUILD index 53347dc..29ed800 100644 --- a/packaging/Archlinux/PKGBUILD +++ b/packaging/Archlinux/PKGBUILD @@ -8,10 +8,10 @@ url="https://git.macaw.me/blue/squawk" license=('GPL3') depends=('hicolor-icon-theme' 'desktop-file-utils' 'lmdbal' 'qxmpp-qt5') makedepends=('cmake>=3.3' 'imagemagick' 'qt5-tools' 'boost') -optdepends=('kwallet: secure password storage (requires rebuild)' - 'kconfig: system themes support (requires rebuild)' - 'kconfigwidgets: system themes support (requires rebuild)' - 'kio: better show in folder action (requires rebuild)') +optdepends=('kwallet5: secure password storage (requires rebuild)' + 'kconfig5: system themes support (requires rebuild)' + 'kconfigwidgets5: system themes support (requires rebuild)' + 'kio5: better show in folder action (requires rebuild)') source=("$pkgname-$pkgver.tar.gz::https://git.macaw.me/blue/$pkgname/archive/$pkgver.tar.gz") sha256sums=('SKIP')