|
|
This page describes how to manually build Kaidan on debian-based systems (i.e.
|
|
|
Ubuntu, KDE Neon, Linux Mint, etc.).
|
|
|
This page describes how to manually build Kaidan on Debian-based systems (i.e. Ubuntu, KDE Neon, Linux Mint, etc.).
|
|
|
|
|
|
## 1. Install dependencies
|
|
|
## Install *dependencies*
|
|
|
|
|
|
This requires at least Ubuntu *18.04* or debian *buster* (which is currently still
|
|
|
testing). Older distributions are not supported since they don't provide Qt 5.8
|
|
|
or newer, an exception is KDE Neon 16.04.
|
|
|
This requires at least *Ubuntu 18.04* or *Debian buster* (which is currently still testing).
|
|
|
Older distributions are not supported since they do not provide Qt 5.8 or newer, an exception is KDE Neon 16.04.
|
|
|
|
|
|
```bash
|
|
|
sudo apt install git-core cmake build-essential zlib1g-dev \
|
|
|
sudo apt install git-core cmake build-essential pkg-config zlib1g-dev \
|
|
|
libnotify-bin libqt5quick5 libqt5quickcontrols2-5 libqt5quickwidgets5 \
|
|
|
libqt5qml5 libqt5gui5 libqt5core5a qtdeclarative5-dev qttools5-dev qt5-default \
|
|
|
qtquickcontrols2-5-dev kirigami2-dev extra-cmake-modules libqt5svg5-dev \
|
|
|
qml-module-qt-labs-platform pkg-config
|
|
|
qtmultimedia5-dev qtquickcontrols2-5-dev kirigami2-dev extra-cmake-modules \
|
|
|
libqt5svg5-dev qml-module-qt-labs-platform qml-module-qtquick-layouts \
|
|
|
qml-module-qt-labs-folderlistmodel qml-module-qtquick-dialogs qml-module-qt-labs-settings \
|
|
|
qml-module-qtmultimedia breeze-icon-theme fonts-noto-color-emoji \
|
|
|
libkf5notifications-dev
|
|
|
```
|
|
|
|
|
|
## 2. Build and install the latest qxmpp master branch (optional, only works on debian 10+)
|
|
|
## Set up *desktop style* for desktop systems without a Qt integration (optional)
|
|
|
|
|
|
If your system has no Qt integration, you can set the correct desktop style.
|
|
|
For KDE Plasma you do not need that since it has such an integration.
|
|
|
|
|
|
```bash
|
|
|
sudo apt install qml-module-org-kde-qqc2desktopstyle
|
|
|
echo "export QT_QUICK_CONTROLS_STYLE=org.kde.desktop" >> ~/.profile
|
|
|
source ~/.profile
|
|
|
```
|
|
|
git clone https://salsa.debian.org/jbb-guest/qxmpp qxmpp && cd qxmpp
|
|
|
|
|
|
## Set up the XMPP library *QXmpp*
|
|
|
|
|
|
There are two options for setting up QXmpp:
|
|
|
You may build and install it with a package manager or without one.
|
|
|
|
|
|
### Option A: Build and install with a package manager (only on Debian 10+)
|
|
|
|
|
|
```bash
|
|
|
git clone https://salsa.debian.org/jbb-guest/qxmpp
|
|
|
cd qxmpp
|
|
|
uscan -v
|
|
|
cd $(find ../ -name qxmpp-$(dpkg-parsechangelog -SVersion | sed 's/[-].*$//')+git*.* -type d)
|
|
|
sudo apt build-dep .
|
|
|
dpkg-buildpackage
|
|
|
sudo dpkg -i ../libqxmpp{2,-dev}*.deb
|
|
|
```
|
|
|
|
|
|
### Option B: Build and install without a package manager
|
|
|
|
|
|
```bash
|
|
|
git clone https://github.com/qxmpp-project/qxmpp
|
|
|
cd qxmpp
|
|
|
mkdir build
|
|
|
cd build
|
|
|
cmake ..
|
|
|
make -j$(nproc)
|
|
|
sudo make install
|
|
|
```
|
|
|
sudo dpkg -i ../libqxmpp{2,-dev}*.deb
|
|
|
|
|
|
## Set up the barcode library *ZXing-C++* for QR codes
|
|
|
|
|
|
```bash
|
|
|
git clone https://github.com/nu-book/zxing-cpp
|
|
|
cd zxing-cpp
|
|
|
mkdir build
|
|
|
cd build
|
|
|
cmake ..
|
|
|
make -j$(nproc)
|
|
|
sudo make install
|
|
|
```
|
|
|
|
|
|
## 3. Get the source code
|
|
|
## Set up *Kaidan*
|
|
|
|
|
|
### Get the source code
|
|
|
|
|
|
```bash
|
|
|
git clone https://invent.kde.org/KDE/kaidan
|
|
|
git clone https://invent.kde.org/kde/kaidan.git
|
|
|
```
|
|
|
|
|
|
## 4. Build Kaidan
|
|
|
### Build
|
|
|
|
|
|
```bash
|
|
|
mkdir kaidan/build && cd kaidan/build
|
|
|
cd kaidan
|
|
|
mkdir build
|
|
|
cd build
|
|
|
cmake .. -DI18N=1
|
|
|
make -j$(nproc)
|
|
|
```
|
|
|
|
|
|
If you notice any errors related to the Qt QuickCompiler, try disabling it by adding `-DQUICK_COMPILER=OFF` to the cmake command line`.
|
|
|
|
|
|
## 5. Use and install
|
|
|
|
|
|
You can start Kaidan now:
|
|
|
### Run
|
|
|
|
|
|
```bash
|
|
|
./bin/kaidan
|
|
|
bin/kaidan
|
|
|
```
|
|
|
If you like it, you can install it by running:
|
|
|
|
|
|
### Install (optional)
|
|
|
|
|
|
```bash
|
|
|
sudo make install
|
... | ... | |