From 6d0caec2058b545487fe0eacd59aa08b5acc605c Mon Sep 17 00:00:00 2001
From: Amin Bandali <amin.bandali@savoirfairelinux.com>
Date: Wed, 17 Mar 2021 10:40:22 -0400
Subject: [PATCH] debian: build and package client-qt

Also remove unused DEBIAN_PACKAGING_OVERRIDE.

Change-Id: Ida109a811bebd1fb46fd1a8b90fb5463518382c0
---
 docker/Dockerfile_debian_10                   | 86 ++++++-----------
 docker/Dockerfile_debian_10_arm64             | 86 ++++++-----------
 docker/Dockerfile_debian_10_armhf             | 86 ++++++-----------
 docker/Dockerfile_debian_10_i386              | 86 ++++++-----------
 docker/Dockerfile_ubuntu_18.04                | 95 ++++++-------------
 docker/Dockerfile_ubuntu_18.04_i386           | 95 ++++++-------------
 docker/Dockerfile_ubuntu_20.04                | 88 ++++++-----------
 docker/Dockerfile_ubuntu_20.10                | 88 ++++++-----------
 .../rules/debian-one-click-install/control    | 49 +++++++---
 .../rules/debian-one-click-install/copyright  |  1 -
 .../rules/debian-one-click-install/rules      | 41 +++++++-
 packaging/rules/debian/control                | 83 ++++++++++++----
 packaging/rules/debian/copyright              |  1 -
 packaging/rules/debian/rules                  | 61 +++++++++++-
 scripts/build-package-debian.sh               | 14 ---
 scripts/make-packaging-target.py              | 47 ++-------
 16 files changed, 436 insertions(+), 571 deletions(-)

diff --git a/docker/Dockerfile_debian_10 b/docker/Dockerfile_debian_10
index 6bd069d3..10dc6cc6 100644
--- a/docker/Dockerfile_debian_10
+++ b/docker/Dockerfile_debian_10
@@ -1,67 +1,37 @@
 FROM debian:buster
 
-ENV DEBIAN_FRONTEND noninteractive
+ENV DEBIAN_FRONTEND=noninteractive
 
 RUN apt-get clean
 RUN apt-get update && \
-    apt-get install -y vim devscripts
+    apt-get install -y -o Acquire::Retries=10 \
+        ca-certificates \
+        devscripts \
+        dirmngr \
+        gnupg \
+        wget
 
-# Speed up mk-build-deps
-RUN apt-get clean
-RUN apt-get update && \
-    apt-get install -y -o Acquire::Retires=10 \
-        git \
-        autoconf \
-        automake \
-        autopoint \
-        cmake \
-        nasm \
-        libtool \
-        libdbus-1-dev \
-        libdbus-c++-dev \
-        libargon2-0-dev \
-        libcanberra-gtk3-dev \
-        libclutter-gtk-1.0-dev \
-        libclutter-1.0-dev \
-        libglib2.0-dev \
-        libgtk-3-dev \
-        libnotify-dev \
-        qtbase5-dev \
-        qttools5-dev \
-        qttools5-dev-tools \
-        yasm \
-        autotools-dev \
-        gettext \
-        libpulse-dev \
-        libasound2-dev \
-        libexpat1-dev \
-        libpcre3-dev \
-        libyaml-cpp-dev \
-        libboost-dev \
-        libxext-dev \
-        libxfixes-dev \
-        libspeex-dev \
-        libspeexdsp-dev \
-        uuid-dev \
-        libavcodec-dev \
-        libavutil-dev \
-        libavformat-dev \
-        libswscale-dev \
-        libavdevice-dev \
-        libopus-dev \
-        libudev-dev \
-        libgsm1-dev \
-        libjsoncpp-dev \
-        libmsgpack-dev \
-        libnatpmp-dev \
-        libappindicator3-dev \
-        libqrencode-dev \
-        libnm-dev \
-        libwebkit2gtk-4.0-dev \
-        libcrypto++-dev \
-        libva-dev \
-        libvdpau-dev \
-        libssl-dev
+RUN wget -O - https://dl.jami.net/public-key.gpg | \
+    tee /usr/share/keyrings/jami-archive-keyring.gpg > /dev/null
+RUN sh -c "echo 'deb [signed-by=/usr/share/keyrings/jami-archive-keyring.gpg] https://dl.jami.net/nightly/debian_10_qt/ jami main' > /etc/apt/sources.list.d/libqt-jami.list"
+
+# add deb-src entries (needed for next step)
+RUN sed -n '/^deb\s/s//deb-src /p' /etc/apt/sources.list > /etc/apt/sources.list.d/deb-src.list
+RUN apt-get clean && apt-get update
+
+COPY packaging/rules/debian/* ${OVERRIDE_PACKAGING_DIR} /tmp/builddeps/debian/
+RUN cd /tmp/builddeps/debian; \
+    if [ -n "${OVERRIDE_PACKAGING_DIR}" ] && [ -d "$(basename ${OVERRIDE_PACKAGING_DIR})" ]; then \
+        mv "$(basename ${OVERRIDE_PACKAGING_DIR})"/* .; \
+        rm -r "$(basename ${OVERRIDE_PACKAGING_DIR})"; \
+    fi; \
+    cd ..; \
+    apt-get update; \
+    mk-build-deps \
+        --remove --install \
+        --tool "apt-get -y --no-install-recommends -o Acquire::Retries=10" \
+        "debian/control"; \
+    cd / && rm -rf /tmp/builddeps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
 
diff --git a/docker/Dockerfile_debian_10_arm64 b/docker/Dockerfile_debian_10_arm64
index 0a1024ef..e14ed3bc 100644
--- a/docker/Dockerfile_debian_10_arm64
+++ b/docker/Dockerfile_debian_10_arm64
@@ -1,67 +1,37 @@
 FROM arm64v8/debian:buster
 
-ENV DEBIAN_FRONTEND noninteractive
+ENV DEBIAN_FRONTEND=noninteractive
 
 RUN apt-get clean
 RUN apt-get update && \
-    apt-get install -y vim devscripts
+    apt-get install -y -o Acquire::Retries=10 \
+        ca-certificates \
+        devscripts \
+        dirmngr \
+        gnupg \
+        wget
 
-# Speed up mk-build-deps
-RUN apt-get clean
-RUN apt-get update && \
-    apt-get install -y -o Acquire::Retires=10 \
-        git \
-        autoconf \
-        automake \
-        autopoint \
-        cmake \
-        nasm \
-        libtool \
-        libdbus-1-dev \
-        libdbus-c++-dev \
-        libargon2-0-dev \
-        libcanberra-gtk3-dev \
-        libclutter-gtk-1.0-dev \
-        libclutter-1.0-dev \
-        libglib2.0-dev \
-        libgtk-3-dev \
-        libnotify-dev \
-        qtbase5-dev \
-        qttools5-dev \
-        qttools5-dev-tools \
-        yasm \
-        autotools-dev \
-        gettext \
-        libpulse-dev \
-        libasound2-dev \
-        libexpat1-dev \
-        libpcre3-dev \
-        libyaml-cpp-dev \
-        libboost-dev \
-        libxext-dev \
-        libxfixes-dev \
-        libspeex-dev \
-        libspeexdsp-dev \
-        uuid-dev \
-        libavcodec-dev \
-        libavutil-dev \
-        libavformat-dev \
-        libswscale-dev \
-        libavdevice-dev \
-        libopus-dev \
-        libudev-dev \
-        libgsm1-dev \
-        libjsoncpp-dev \
-        libmsgpack-dev \
-        libnatpmp-dev \
-        libappindicator3-dev \
-        libqrencode-dev \
-        libnm-dev \
-        libwebkit2gtk-4.0-dev \
-        libcrypto++-dev \
-        libva-dev \
-        libvdpau-dev \
-        libssl-dev
+RUN wget -O - https://dl.jami.net/public-key.gpg | \
+    tee /usr/share/keyrings/jami-archive-keyring.gpg > /dev/null
+RUN sh -c "echo 'deb [signed-by=/usr/share/keyrings/jami-archive-keyring.gpg] https://dl.jami.net/nightly/debian_10_qt/ jami main' > /etc/apt/sources.list.d/libqt-jami.list"
+
+# add deb-src entries (needed for next step)
+RUN sed -n '/^deb\s/s//deb-src /p' /etc/apt/sources.list > /etc/apt/sources.list.d/deb-src.list
+RUN apt-get clean && apt-get update
+
+COPY packaging/rules/debian/* ${OVERRIDE_PACKAGING_DIR} /tmp/builddeps/debian/
+RUN cd /tmp/builddeps/debian; \
+    if [ -n "${OVERRIDE_PACKAGING_DIR}" ] && [ -d "$(basename ${OVERRIDE_PACKAGING_DIR})" ]; then \
+        mv "$(basename ${OVERRIDE_PACKAGING_DIR})"/* .; \
+        rm -r "$(basename ${OVERRIDE_PACKAGING_DIR})"; \
+    fi; \
+    cd ..; \
+    apt-get update; \
+    mk-build-deps \
+        --remove --install \
+        --tool "apt-get -y --no-install-recommends -o Acquire::Retries=10" \
+        "debian/control"; \
+    cd / && rm -rf /tmp/builddeps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
 
diff --git a/docker/Dockerfile_debian_10_armhf b/docker/Dockerfile_debian_10_armhf
index a6e8f8c6..b248da2c 100644
--- a/docker/Dockerfile_debian_10_armhf
+++ b/docker/Dockerfile_debian_10_armhf
@@ -1,67 +1,37 @@
 FROM arm32v7/debian:buster
 
-ENV DEBIAN_FRONTEND noninteractive
+ENV DEBIAN_FRONTEND=noninteractive
 
 RUN apt-get clean
 RUN apt-get update && \
-    apt-get install -y vim devscripts
+    apt-get install -y -o Acquire::Retries=10 \
+        ca-certificates \
+        devscripts \
+        dirmngr \
+        gnupg \
+        wget
 
-# Speed up mk-build-deps
-RUN apt-get clean
-RUN apt-get update && \
-    apt-get install -y -o Acquire::Retires=10 \
-        git \
-        autoconf \
-        automake \
-        autopoint \
-        cmake \
-        nasm \
-        libtool \
-        libdbus-1-dev \
-        libdbus-c++-dev \
-        libargon2-0-dev \
-        libcanberra-gtk3-dev \
-        libclutter-gtk-1.0-dev \
-        libclutter-1.0-dev \
-        libglib2.0-dev \
-        libgtk-3-dev \
-        libnotify-dev \
-        qtbase5-dev \
-        qttools5-dev \
-        qttools5-dev-tools \
-        yasm \
-        autotools-dev \
-        gettext \
-        libpulse-dev \
-        libasound2-dev \
-        libexpat1-dev \
-        libpcre3-dev \
-        libyaml-cpp-dev \
-        libboost-dev \
-        libxext-dev \
-        libxfixes-dev \
-        libspeex-dev \
-        libspeexdsp-dev \
-        uuid-dev \
-        libavcodec-dev \
-        libavutil-dev \
-        libavformat-dev \
-        libswscale-dev \
-        libavdevice-dev \
-        libopus-dev \
-        libudev-dev \
-        libgsm1-dev \
-        libjsoncpp-dev \
-        libmsgpack-dev \
-        libnatpmp-dev \
-        libappindicator3-dev \
-        libqrencode-dev \
-        libnm-dev \
-        libwebkit2gtk-4.0-dev \
-        libcrypto++-dev \
-        libva-dev \
-        libvdpau-dev \
-        libssl-dev
+RUN wget -O - https://dl.jami.net/public-key.gpg | \
+    tee /usr/share/keyrings/jami-archive-keyring.gpg > /dev/null
+RUN sh -c "echo 'deb [signed-by=/usr/share/keyrings/jami-archive-keyring.gpg] https://dl.jami.net/nightly/debian_10_qt/ jami main' > /etc/apt/sources.list.d/libqt-jami.list"
+
+# add deb-src entries (needed for next step)
+RUN sed -n '/^deb\s/s//deb-src /p' /etc/apt/sources.list > /etc/apt/sources.list.d/deb-src.list
+RUN apt-get clean && apt-get update
+
+COPY packaging/rules/debian/* ${OVERRIDE_PACKAGING_DIR} /tmp/builddeps/debian/
+RUN cd /tmp/builddeps/debian; \
+    if [ -n "${OVERRIDE_PACKAGING_DIR}" ] && [ -d "$(basename ${OVERRIDE_PACKAGING_DIR})" ]; then \
+        mv "$(basename ${OVERRIDE_PACKAGING_DIR})"/* .; \
+        rm -r "$(basename ${OVERRIDE_PACKAGING_DIR})"; \
+    fi; \
+    cd ..; \
+    apt-get update; \
+    mk-build-deps \
+        --remove --install \
+        --tool "apt-get -y --no-install-recommends -o Acquire::Retries=10" \
+        "debian/control"; \
+    cd / && rm -rf /tmp/builddeps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
 
diff --git a/docker/Dockerfile_debian_10_i386 b/docker/Dockerfile_debian_10_i386
index 15e1f627..f40d4673 100644
--- a/docker/Dockerfile_debian_10_i386
+++ b/docker/Dockerfile_debian_10_i386
@@ -1,67 +1,37 @@
 FROM i386/debian:buster
 
-ENV DEBIAN_FRONTEND noninteractive
+ENV DEBIAN_FRONTEND=noninteractive
 
 RUN apt-get clean
 RUN apt-get update && \
-    apt-get install -y vim devscripts
+    apt-get install -y -o Acquire::Retries=10 \
+        ca-certificates \
+        devscripts \
+        dirmngr \
+        gnupg \
+        wget
 
-# Speed up mk-build-deps
-RUN apt-get clean
-RUN apt-get update && \
-    apt-get install -y -o Acquire::Retires=10 \
-        git \
-        autoconf \
-        automake \
-        autopoint \
-        cmake \
-        nasm \
-        libtool \
-        libdbus-1-dev \
-        libdbus-c++-dev \
-        libargon2-0-dev \
-        libcanberra-gtk3-dev \
-        libclutter-gtk-1.0-dev \
-        libclutter-1.0-dev \
-        libglib2.0-dev \
-        libgtk-3-dev \
-        libnotify-dev \
-        qtbase5-dev \
-        qttools5-dev \
-        qttools5-dev-tools \
-        yasm \
-        autotools-dev \
-        gettext \
-        libpulse-dev \
-        libasound2-dev \
-        libexpat1-dev \
-        libpcre3-dev \
-        libyaml-cpp-dev \
-        libboost-dev \
-        libxext-dev \
-        libxfixes-dev \
-        libspeex-dev \
-        libspeexdsp-dev \
-        uuid-dev \
-        libavcodec-dev \
-        libavutil-dev \
-        libavformat-dev \
-        libswscale-dev \
-        libavdevice-dev \
-        libopus-dev \
-        libudev-dev \
-        libgsm1-dev \
-        libjsoncpp-dev \
-        libmsgpack-dev \
-        libnatpmp-dev \
-        libappindicator3-dev \
-        libqrencode-dev \
-        libnm-dev \
-        libwebkit2gtk-4.0-dev \
-        libcrypto++-dev \
-        libva-dev \
-        libvdpau-dev \
-        libssl-dev
+RUN wget -O - https://dl.jami.net/public-key.gpg | \
+    tee /usr/share/keyrings/jami-archive-keyring.gpg > /dev/null
+RUN sh -c "echo 'deb [signed-by=/usr/share/keyrings/jami-archive-keyring.gpg] https://dl.jami.net/nightly/debian_10_qt/ jami main' > /etc/apt/sources.list.d/libqt-jami.list"
+
+# add deb-src entries (needed for next step)
+RUN sed -n '/^deb\s/s//deb-src /p' /etc/apt/sources.list > /etc/apt/sources.list.d/deb-src.list
+RUN apt-get clean && apt-get update
+
+COPY packaging/rules/debian/* ${OVERRIDE_PACKAGING_DIR} /tmp/builddeps/debian/
+RUN cd /tmp/builddeps/debian; \
+    if [ -n "${OVERRIDE_PACKAGING_DIR}" ] && [ -d "$(basename ${OVERRIDE_PACKAGING_DIR})" ]; then \
+        mv "$(basename ${OVERRIDE_PACKAGING_DIR})"/* .; \
+        rm -r "$(basename ${OVERRIDE_PACKAGING_DIR})"; \
+    fi; \
+    cd ..; \
+    apt-get update; \
+    mk-build-deps \
+        --remove --install \
+        --tool "apt-get -y --no-install-recommends -o Acquire::Retries=10" \
+        "debian/control"; \
+    cd / && rm -rf /tmp/builddeps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
 
diff --git a/docker/Dockerfile_ubuntu_18.04 b/docker/Dockerfile_ubuntu_18.04
index 750bdaf0..da48ed1e 100644
--- a/docker/Dockerfile_ubuntu_18.04
+++ b/docker/Dockerfile_ubuntu_18.04
@@ -1,75 +1,40 @@
 FROM ubuntu:18.04
 
-ENV DEBIAN_FRONTEND noninteractive
+ENV DEBIAN_FRONTEND=noninteractive
 
-RUN apt-get clean
-RUN apt-get update && \
-    apt-get install -y devscripts equivs
-
-# Speed up mk-build-deps
 RUN apt-get clean
 RUN apt-get update && \
     apt-get install -y -o Acquire::Retries=10 \
-        g++-8 \
+        ca-certificates \
+        devscripts \
+        dirmngr \
+        equivs \
         gcc-8 \
-        cpp-8 \
-        file \
-        make \
-        libc6-dev \
-        libstdc++-8-dev \
-        git \
-        autoconf \
-        automake \
-        autopoint \
-        cmake \
-        libdbus-1-dev \
-        libdbus-c++-dev \
-        libgnutls28-dev \
-        libargon2-0-dev \
-        libcanberra-gtk3-dev \
-        libclutter-gtk-1.0-dev \
-        libclutter-1.0-dev \
-        libglib2.0-dev \
-        libgtk-3-dev \
-        libnotify-dev \
-        qtbase5-dev \
-        qttools5-dev \
-        qttools5-dev-tools \
-        yasm \
-        nasm \
-        autotools-dev \
-        gettext \
-        libpulse-dev \
-        libasound2-dev \
-        libexpat1-dev \
-        libpcre3-dev \
-        libyaml-cpp-dev \
-        libboost-dev \
-        libxext-dev \
-        libxfixes-dev \
-        libspeex-dev \
-        libspeexdsp-dev \
-        uuid-dev \
-        libavcodec-dev \
-        libavutil-dev \
-        libavformat-dev \
-        libswscale-dev \
-        libavdevice-dev \
-        libopus-dev \
-        libudev-dev \
-        libgsm1-dev \
-        libjsoncpp-dev \
-        libmsgpack-dev \
-        libnatpmp-dev \
-        libayatana-appindicator3-dev \
-        libqrencode-dev \
-        libnm-dev \
-        libwebkit2gtk-4.0-dev \
-        libcrypto++-dev \
-        libva-dev \
-        libvdpau-dev \
-	libssl-dev \
-        libsndfile1-dev
+        g++-8 \
+        gnupg \
+        wget
+
+RUN wget -O - https://dl.jami.net/public-key.gpg | \
+    tee /usr/share/keyrings/jami-archive-keyring.gpg > /dev/null
+RUN sh -c "echo 'deb [signed-by=/usr/share/keyrings/jami-archive-keyring.gpg] https://dl.jami.net/nightly/ubuntu_18.04_qt/ jami main' > /etc/apt/sources.list.d/libqt-jami.list"
+
+# add deb-src entries (needed for next step)
+RUN sed -n '/^deb\s/s//deb-src /p' /etc/apt/sources.list > /etc/apt/sources.list.d/deb-src.list
+RUN apt-get clean && apt-get update
+
+COPY packaging/rules/debian/* ${OVERRIDE_PACKAGING_DIR} /tmp/builddeps/debian/
+RUN cd /tmp/builddeps/debian; \
+    if [ -n "${OVERRIDE_PACKAGING_DIR}" ] && [ -d "$(basename ${OVERRIDE_PACKAGING_DIR})" ]; then \
+        mv "$(basename ${OVERRIDE_PACKAGING_DIR})"/* .; \
+        rm -r "$(basename ${OVERRIDE_PACKAGING_DIR})"; \
+    fi; \
+    cd ..; \
+    apt-get update; \
+    mk-build-deps \
+        --remove --install \
+        --tool "apt-get -y --no-install-recommends -o Acquire::Retries=10" \
+        "debian/control"; \
+    cd / && rm -rf /tmp/builddeps
 
 RUN update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 50
 RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 50
diff --git a/docker/Dockerfile_ubuntu_18.04_i386 b/docker/Dockerfile_ubuntu_18.04_i386
index 55ad8325..35d636ff 100644
--- a/docker/Dockerfile_ubuntu_18.04_i386
+++ b/docker/Dockerfile_ubuntu_18.04_i386
@@ -1,75 +1,40 @@
 FROM i386/ubuntu:18.04
 
-ENV DEBIAN_FRONTEND noninteractive
+ENV DEBIAN_FRONTEND=noninteractive
 
-RUN apt-get clean
-RUN apt-get update && \
-    apt-get install -y devscripts equivs
-
-# Speed up mk-build-deps
 RUN apt-get clean
 RUN apt-get update && \
     apt-get install -y -o Acquire::Retries=10 \
-        g++-8 \
+        ca-certificates \
+        devscripts \
+        dirmngr \
+        equivs \
         gcc-8 \
-        cpp-8 \
-        file \
-        make \
-        libc6-dev \
-        libstdc++-8-dev \
-        git \
-        autoconf \
-        automake \
-        autopoint \
-        cmake \
-        libdbus-1-dev \
-        libdbus-c++-dev \
-        libgnutls28-dev \
-        libargon2-0-dev \
-        libcanberra-gtk3-dev \
-        libclutter-gtk-1.0-dev \
-        libclutter-1.0-dev \
-        libglib2.0-dev \
-        libgtk-3-dev \
-        libnotify-dev \
-        qtbase5-dev \
-        qttools5-dev \
-        qttools5-dev-tools \
-        yasm \
-        nasm \
-        autotools-dev \
-        gettext \
-        libpulse-dev \
-        libasound2-dev \
-        libexpat1-dev \
-        libpcre3-dev \
-        libyaml-cpp-dev \
-        libboost-dev \
-        libxext-dev \
-        libxfixes-dev \
-        libspeex-dev \
-        libspeexdsp-dev \
-        uuid-dev \
-        libavcodec-dev \
-        libavutil-dev \
-        libavformat-dev \
-        libswscale-dev \
-        libavdevice-dev \
-        libopus-dev \
-        libudev-dev \
-        libgsm1-dev \
-        libjsoncpp-dev \
-        libmsgpack-dev \
-        libnatpmp-dev \
-        libayatana-appindicator3-dev \
-        libqrencode-dev \
-        libnm-dev \
-        libwebkit2gtk-4.0-dev \
-        libcrypto++-dev \
-        libva-dev \
-        libvdpau-dev \
-	libssl-dev \
-        libsndfile1-dev
+        g++-8 \
+        gnupg \
+        wget
+
+RUN wget -O - https://dl.jami.net/public-key.gpg | \
+    tee /usr/share/keyrings/jami-archive-keyring.gpg > /dev/null
+RUN sh -c "echo 'deb [signed-by=/usr/share/keyrings/jami-archive-keyring.gpg] https://dl.jami.net/nightly/ubuntu_18.04_qt/ jami main' > /etc/apt/sources.list.d/libqt-jami.list"
+
+# add deb-src entries (needed for next step)
+RUN sed -n '/^deb\s/s//deb-src /p' /etc/apt/sources.list > /etc/apt/sources.list.d/deb-src.list
+RUN apt-get clean && apt-get update
+
+COPY packaging/rules/debian/* ${OVERRIDE_PACKAGING_DIR} /tmp/builddeps/debian/
+RUN cd /tmp/builddeps/debian; \
+    if [ -n "${OVERRIDE_PACKAGING_DIR}" ] && [ -d "$(basename ${OVERRIDE_PACKAGING_DIR})" ]; then \
+        mv "$(basename ${OVERRIDE_PACKAGING_DIR})"/* .; \
+        rm -r "$(basename ${OVERRIDE_PACKAGING_DIR})"; \
+    fi; \
+    cd ..; \
+    apt-get update; \
+    mk-build-deps \
+        --remove --install \
+        --tool "apt-get -y --no-install-recommends -o Acquire::Retries=10" \
+        "debian/control"; \
+    cd / && rm -rf /tmp/builddeps
 
 RUN update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 50
 RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 50
diff --git a/docker/Dockerfile_ubuntu_20.04 b/docker/Dockerfile_ubuntu_20.04
index 30fa8c38..d4bb9ae8 100644
--- a/docker/Dockerfile_ubuntu_20.04
+++ b/docker/Dockerfile_ubuntu_20.04
@@ -1,68 +1,38 @@
 FROM ubuntu:20.04
 
-ENV DEBIAN_FRONTEND noninteractive
+ENV DEBIAN_FRONTEND=noninteractive
 
-RUN apt-get clean
-RUN apt-get update && \
-    apt-get install -y devscripts equivs
-
-# Speed up mk-build-deps
 RUN apt-get clean
 RUN apt-get update && \
     apt-get install -y -o Acquire::Retries=10 \
-        git \
-        autoconf \
-        automake \
-        autopoint \
-        cmake \
-        libtool \
-        libdbus-1-dev \
-        libdbus-c++-dev \
-        libgnutls28-dev \
-        libargon2-0-dev \
-        libcanberra-gtk3-dev \
-        libclutter-gtk-1.0-dev \
-        libclutter-1.0-dev \
-        libglib2.0-dev \
-        libgtk-3-dev \
-        libnotify-dev \
-        qtbase5-dev \
-        qttools5-dev \
-        qttools5-dev-tools \
-        yasm \
-        nasm \
-        autotools-dev \
-        gettext \
-        libpulse-dev \
-        libasound2-dev \
-        libexpat1-dev \
-        libpcre3-dev \
-        libyaml-cpp-dev \
-        libboost-dev \
-        libxext-dev \
-        libxfixes-dev \
-        libspeex-dev \
-        libspeexdsp-dev \
-        uuid-dev \
-        libavcodec-dev \
-        libavutil-dev \
-        libavformat-dev \
-        libswscale-dev \
-        libavdevice-dev \
-        libopus-dev \
-        libudev-dev \
-        libgsm1-dev \
-        libjsoncpp-dev \
-        libmsgpack-dev \
-        libnatpmp-dev \
-        libayatana-appindicator3-dev \
-        libqrencode-dev \
-        libnm-dev \
-        libwebkit2gtk-4.0-dev \
-        libcrypto++-dev \
-        libva-dev \
-        libvdpau-dev \
-        libssl-dev
+        ca-certificates \
+        devscripts \
+        dirmngr \
+        equivs \
+        gnupg \
+        wget
+
+RUN wget -O - https://dl.jami.net/public-key.gpg | \
+    tee /usr/share/keyrings/jami-archive-keyring.gpg > /dev/null
+RUN sh -c "echo 'deb [signed-by=/usr/share/keyrings/jami-archive-keyring.gpg] https://dl.jami.net/nightly/ubuntu_20.04_qt/ jami main' > /etc/apt/sources.list.d/libqt-jami.list"
+
+# add deb-src entries (needed for next step)
+RUN sed -n '/^deb\s/s//deb-src /p' /etc/apt/sources.list > /etc/apt/sources.list.d/deb-src.list
+RUN apt-get clean && apt-get update
+
+COPY packaging/rules/debian/* ${OVERRIDE_PACKAGING_DIR} /tmp/builddeps/debian/
+RUN cd /tmp/builddeps/debian; \
+    if [ -n "${OVERRIDE_PACKAGING_DIR}" ] && [ -d "$(basename ${OVERRIDE_PACKAGING_DIR})" ]; then \
+        mv "$(basename ${OVERRIDE_PACKAGING_DIR})"/* .; \
+        rm -r "$(basename ${OVERRIDE_PACKAGING_DIR})"; \
+    fi; \
+    cd ..; \
+    apt-get update; \
+    mk-build-deps \
+        --remove --install \
+        --tool "apt-get -y --no-install-recommends -o Acquire::Retries=10" \
+        "debian/control"; \
+    cd / && rm -rf /tmp/builddeps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
 
diff --git a/docker/Dockerfile_ubuntu_20.10 b/docker/Dockerfile_ubuntu_20.10
index 9d97d3e1..6201b424 100644
--- a/docker/Dockerfile_ubuntu_20.10
+++ b/docker/Dockerfile_ubuntu_20.10
@@ -1,68 +1,38 @@
 FROM ubuntu:20.10
 
-ENV DEBIAN_FRONTEND noninteractive
+ENV DEBIAN_FRONTEND=noninteractive
 
 RUN apt-get clean
 RUN apt-get update && \
-    apt-get install -y devscripts equivs
+    apt-get install -y -o Acquire::Retries=10 \
+        ca-certificates \
+        devscripts \
+        dirmngr \
+        equivs \
+        gnupg \
+        wget
 
-# Speed up mk-build-deps
-RUN apt-get clean
-RUN apt-get update && \
-    apt-get install -y -o Acquire::Retries=3 \
-        git \
-        autoconf \
-        automake \
-        autopoint \
-        cmake \
-        libtool \
-        libdbus-1-dev \
-        libdbus-c++-dev \
-        libgnutls28-dev \
-        libargon2-0-dev \
-        libcanberra-gtk3-dev \
-        libclutter-gtk-1.0-dev \
-        libclutter-1.0-dev \
-        libglib2.0-dev \
-        libgtk-3-dev \
-        libnotify-dev \
-        qtbase5-dev \
-        qttools5-dev \
-        qttools5-dev-tools \
-        yasm \
-        nasm \
-        autotools-dev \
-        gettext \
-        libpulse-dev \
-        libasound2-dev \
-        libexpat1-dev \
-        libpcre3-dev \
-        libyaml-cpp-dev \
-        libboost-dev \
-        libxext-dev \
-        libxfixes-dev \
-        libspeex-dev \
-        libspeexdsp-dev \
-        uuid-dev \
-        libavcodec-dev \
-        libavutil-dev \
-        libavformat-dev \
-        libswscale-dev \
-        libavdevice-dev \
-        libopus-dev \
-        libudev-dev \
-        libgsm1-dev \
-        libjsoncpp-dev \
-        libmsgpack-dev \
-        libnatpmp-dev \
-        libayatana-appindicator3-dev \
-        libqrencode-dev \
-        libnm-dev \
-        libwebkit2gtk-4.0-dev \
-        libcrypto++-dev \
-        libva-dev \
-        libvdpau-dev \
-        libssl-dev
+RUN wget -O - https://dl.jami.net/public-key.gpg | \
+    tee /usr/share/keyrings/jami-archive-keyring.gpg > /dev/null
+RUN sh -c "echo 'deb [signed-by=/usr/share/keyrings/jami-archive-keyring.gpg] https://dl.jami.net/nightly/ubuntu_20.10_qt/ jami main' > /etc/apt/sources.list.d/libqt-jami.list"
+
+# add deb-src entries (needed for next step)
+RUN sed -n '/^deb\s/s//deb-src /p' /etc/apt/sources.list > /etc/apt/sources.list.d/deb-src.list
+RUN apt-get clean && apt-get update
+
+COPY packaging/rules/debian/* ${OVERRIDE_PACKAGING_DIR} /tmp/builddeps/debian/
+RUN cd /tmp/builddeps/debian; \
+    if [ -n "${OVERRIDE_PACKAGING_DIR}" ] && [ -d "$(basename ${OVERRIDE_PACKAGING_DIR})" ]; then \
+        mv "$(basename ${OVERRIDE_PACKAGING_DIR})"/* .; \
+        rm -r "$(basename ${OVERRIDE_PACKAGING_DIR})"; \
+    fi; \
+    cd ..; \
+    apt-get update; \
+    mk-build-deps \
+        --remove --install \
+        --tool "apt-get -y --no-install-recommends -o Acquire::Retries=10" \
+        "debian/control"; \
+    cd / && rm -rf /tmp/builddeps
 
 ADD scripts/build-package-debian.sh /opt/build-package-debian.sh
 
diff --git a/packaging/rules/debian-one-click-install/control b/packaging/rules/debian-one-click-install/control
index 3f376e5e..982c778d 100644
--- a/packaging/rules/debian-one-click-install/control
+++ b/packaging/rules/debian-one-click-install/control
@@ -1,29 +1,50 @@
 Source: jami
 Section: comm
 Priority: optional
-Maintainer: Alexandre Viau <aviau@debian.org>
+Maintainer: The Jami project <jami@gnu.org>
 Build-Depends: debhelper (>= 9),
                autoconf,
                automake,
                cmake,
                libtool,
                autotools-dev,
+# qt client
+               libqt-jami,
+#               libqt5svg5-dev,
+#               qml-module-qt-labs-platform,
+#               qml-module-qtquick-controls,
+#               qml-module-qtquick-controls2,
+#               qml-module-qtquick-dialogs,
+#               qml-module-qtquick-layouts,
+#               qml-module-qtquick-privatewidgets,
+#               qml-module-qtquick-shapes,
+#               qml-module-qtquick-templates2,
+#               qml-module-qtquick-window2,
+#               qml-module-qtquick2,
+#               qml-module-qtwebchannel,
+#               qml-module-qtwebengine | qml-module-qtwebkit,
+#               qtdeclarative5-dev,
+#               qtmultimedia5-dev,
+#               qtquickcontrols2-5-dev,
+#               qtwebengine5-dev | libqtwebkit-dev,
+# both qt client and gnome client
+               libnm-dev,
+               libnotify-dev,
 # gnome client
                libebook1.2-dev,
+               libcanberra-gtk3-dev,
                libclutter-gtk-1.0-dev,
                libclutter-1.0-dev,
                libglib2.0-dev,
                libgtk-3-dev,
-               libnotify-dev,
-               qtbase5-dev,
-               qttools5-dev,
-               qttools5-dev-tools,
+#               qtbase5-dev,
+#               qttools5-dev,
+#               qttools5-dev-tools,
                gettext,
                libqrencode-dev,
                libayatana-appindicator3-dev | libappindicator3-dev,
-               libnm-dev,
                libwebkit2gtk-4.0-dev | libwebkit2gtk-3.0-dev,
-# jami-daemon
+# daemon
                libdbus-1-dev,
                libdbus-c++-dev,
                libupnp-dev,
@@ -52,7 +73,9 @@ Build-Depends: debhelper (>= 9),
                libva-dev,
                libcrypto++-dev,
                libvdpau-dev,
+               libssl-dev,
 # other
+               nasm,
                yasm,
 Standards-Version: 4.1.5
 Homepage: https://jami.net
@@ -61,24 +84,22 @@ Vcs-Browser: https://git.jami.net/savoirfairelinux/ring-project
 
 Package: jami-all
 Architecture: any
-Depends: libqt5sql5-sqlite,
-         gnupg,
+Depends: gnupg,
+#         libqt5sql5-sqlite,
          ${shlibs:Depends},
          ${misc:Depends}
 Replaces: jami,
           jami-daemon,
-          jami-gnome,
           ring,
           ring-all,
-          ring-daemon,
-          ring-gnome
+          ring-daemon
 Conflicts: jami,
            jami-daemon,
            jami-gnome,
            ring,
            ring-all,
-           ring-daemon,
-           ring-gnome
+           ring-gnome,
+           ring-daemon
 Description: Secure and distributed voice, video and chat platform - all in one package
  Jami (jami.net) is a secure and distributed voice, video and chat communication
  platform that requires no centralized server and leaves the power of privacy
diff --git a/packaging/rules/debian-one-click-install/copyright b/packaging/rules/debian-one-click-install/copyright
index 73da38fc..2a82b17b 100644
--- a/packaging/rules/debian-one-click-install/copyright
+++ b/packaging/rules/debian-one-click-install/copyright
@@ -4,7 +4,6 @@ Upstream-Contact: Alexandre Viau <alexandre.viau@savoirfairelinux.net>
 Source: https://dl.jami.net/release/tarballs/
 Files-Excluded: client-electron/*
                 client-uwp/*
-                client-qt/*
                 client-android/*
                 client-macosx/*
                 client-ios/*
diff --git a/packaging/rules/debian-one-click-install/rules b/packaging/rules/debian-one-click-install/rules
index 44d7d430..895604b1 100755
--- a/packaging/rules/debian-one-click-install/rules
+++ b/packaging/rules/debian-one-click-install/rules
@@ -32,6 +32,14 @@ BUNDLED_PKGS="--enable-ffmpeg" # For ubuntu 21.04 it seems there is massive issu
 endif
 endif
 
+# Qt-related variables
+QT_JAMI_PREFIX := ${QT_JAMI_PREFIX}
+export PATH := $(QT_JAMI_PREFIX)/bin:${PATH}
+export LD_LIBRARY_PATH := $(QT_JAMI_PREFIX)/lib:${LD_LIBRARY_PATH}
+export PKG_CONFIG_PATH := $(QT_JAMI_PREFIX)/lib/pkgconfig:${PKG_CONFIG_PATH}
+export CMAKE_PREFIX_PATH := $(QT_JAMI_PREFIX)/lib/cmake:${CMAKE_PREFIX_PATH}
+
+
 %:
 	dh $@
 
@@ -101,6 +109,11 @@ override_dh_auto_configure:
 			$(CMAKE_OPTIONS) \
 			..
 
+	#########################
+	## qt client configure ##
+	#########################
+	# needs to be done after lrc is built; see below
+
 	dh_auto_configure
 
 override_dh_auto_build:
@@ -120,6 +133,19 @@ override_dh_auto_build:
 	########################
 	make -C client-gnome/build LDFLAGS="-lpthread" -j$(NO_CPUS) V=1
 
+	###################################
+	## qt client configure and build ##
+	###################################
+	cd client-qt && \
+		mkdir build && \
+		cd build && \
+		cmake \
+			-DCMAKE_INSTALL_PREFIX=/usr \
+			-DLRC=$(CURDIR)/lrc \
+			$(CMAKE_OPTIONS) \
+			..
+	make -C client-qt/build -j$(NO_CPUS) V=1
+
 override_dh_auto_clean:
 	################################
 	## Generated contrib tarballs ##
@@ -147,6 +173,13 @@ override_dh_auto_clean:
 	if [ -f client-gnome/build/Makefile ]; then make -C client-gnome/build clean; fi
 	rm -rfv client-gnome/build
 
+	#####################
+	## qt client clean ##
+	#####################
+	# CMake build system has no distclean target, so use clean.
+	if [ -f client-qt/build/Makefile ]; then make -C client-qt/build clean; fi
+	rm -rfv client-qt/build
+
 override_dh_clean:
 	# GNUTLS contains:
 	# ring-project/daemon/contrib/tarballs-unpacked/gnutls-3.5.10.tar.xz/gnutls-3.5.10/src/certtool-args.c.bak
@@ -176,7 +209,13 @@ override_dh_auto_install:
 
         ## GNOME client
 	cd client-gnome/build && make DESTDIR=$(CURDIR)/debian/$(JAMI_ALL_IN_ONE_PKG_NAME) install
-	ln -sf /usr/bin/jami $(CURDIR)/debian/jami-all/usr/bin/ring.cx
+	rm -rfv $(CURDIR)/debian/$(JAMI_ALL_IN_ONE_PKG_NAME)/usr/bin/jami
+
+	## Qt client
+	cd client-qt/build && \
+		make DESTDIR=$(CURDIR)/debian/$(JAMI_ALL_IN_ONE_PKG_NAME) install
+
+	ln -sf /usr/bin/jami $(CURDIR)/debian/$(JAMI_ALL_IN_ONE_PKG_NAME)/usr/bin/ring.cx
 
 tmpdir:= $(shell mktemp -d)
 workdir:= $(shell pwd)
diff --git a/packaging/rules/debian/control b/packaging/rules/debian/control
index a90ba1ca..eb80e1fb 100644
--- a/packaging/rules/debian/control
+++ b/packaging/rules/debian/control
@@ -1,29 +1,50 @@
 Source: jami
 Section: comm
 Priority: optional
-Maintainer: Alexandre Viau <aviau@debian.org>
+Maintainer: The Jami project <jami@gnu.org>
 Build-Depends: debhelper (>= 9),
                autoconf,
                automake,
                cmake,
                libtool,
                autotools-dev,
+# qt client
+               libqt-jami,
+#               libqt5svg5-dev,
+#               qml-module-qt-labs-platform,
+#               qml-module-qtquick-controls,
+#               qml-module-qtquick-controls2,
+#               qml-module-qtquick-dialogs,
+#               qml-module-qtquick-layouts,
+#               qml-module-qtquick-privatewidgets,
+#               qml-module-qtquick-shapes,
+#               qml-module-qtquick-templates2,
+#               qml-module-qtquick-window2,
+#               qml-module-qtquick2,
+#               qml-module-qtwebchannel,
+#               qml-module-qtwebengine | qml-module-qtwebkit,
+#               qtdeclarative5-dev,
+#               qtmultimedia5-dev,
+#               qtquickcontrols2-5-dev,
+#               qtwebengine5-dev | libqtwebkit-dev,
+# both qt client and gnome client
+               libnm-dev,
+               libnotify-dev,
 # gnome client
                libebook1.2-dev,
+               libcanberra-gtk3-dev,
                libclutter-gtk-1.0-dev,
                libclutter-1.0-dev,
                libglib2.0-dev,
                libgtk-3-dev,
-               libnotify-dev,
-               qtbase5-dev,
-               qttools5-dev,
-               qttools5-dev-tools,
+#               qtbase5-dev,
+#               qttools5-dev,
+#               qttools5-dev-tools,
                gettext,
                libqrencode-dev,
                libayatana-appindicator3-dev | libappindicator3-dev,
-               libnm-dev,
                libwebkit2gtk-4.0-dev | libwebkit2gtk-3.0-dev,
-# jami-daemon
+# daemon
                libdbus-1-dev,
                libdbus-c++-dev,
                libupnp-dev,
@@ -52,7 +73,9 @@ Build-Depends: debhelper (>= 9),
                libva-dev,
                libcrypto++-dev,
                libvdpau-dev,
+               libssl-dev,
 # other
+               nasm,
                yasm,
 Standards-Version: 4.1.5
 Homepage: https://jami.net
@@ -61,18 +84,18 @@ Vcs-Browser: https://git.jami.net/savoirfairelinux/ring-project
 
 Package: jami-all
 Architecture: any
-Depends: libqt5sql5-sqlite,
-         gnupg,
+Depends: gnupg,
+#         libqt5sql5-sqlite,
          ${shlibs:Depends},
          ${misc:Depends}
 Replaces: jami,
+          jami-libclient,
           jami-daemon,
-          jami-gnome,
           ring,
           ring-all,
-          ring-gnome,
           ring-daemon
 Conflicts: jami,
+           jami-libclient,
            jami-daemon,
            jami-gnome,
            ring,
@@ -96,18 +119,15 @@ Package: jami
 Architecture: any
 Depends: ${shlibs:Depends},
          ${misc:Depends},
-         libqt5sql5-sqlite,
-         jami-daemon (=${binary:Version})
-Replaces: jami-genome,
-          ring-gnome
-Conflicts: jami-gnome,
-           ring-gnome
+#         libqt5sql5-sqlite,
+         jami-libclient (=${binary:Version})
+Provides: jami-qt
 Description: Secure and distributed voice, video and chat platform - desktop client
  Jami (jami.net) is a secure and distributed voice, video and chat communication
  platform that requires no centralized server and leaves the power of privacy
  in the hands of the user.
  .
- This package contains the desktop client: jami-gnome.
+ This package contains the jami-qt desktop client.
 
 Package: ring
 Depends: jami, ${misc:Depends}
@@ -115,6 +135,33 @@ Architecture: all
 Description: transitional package for jami
  This is a transitional package. It can safely be removed.
 
+Package: jami-gnome
+Architecture: any
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+#         libqt5sql5-sqlite,
+         jami-libclient (=${binary:Version})
+Replaces: ring-gnome
+Conflicts: ring-gnome
+Description: Secure and distributed voice, video and chat platform - desktop client
+ Jami (jami.net) is a secure and distributed voice, video and chat communication
+ platform that requires no centralized server and leaves the power of privacy
+ in the hands of the user.
+ .
+ This package contains the older jami-gnome desktop client.
+
+Package: jami-libclient
+Architecture: any
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         jami-daemon (=${binary:Version})
+Description: Secure and distributed voice, video and chat platform - daemon
+ Jami (jami.net) is a secure and distributed voice, video and chat communication
+ platform that requires no centralized server and leaves the power of privacy
+ in the hands of the user.
+ .
+ This package contains the Jami client library: lrc.
+
 Package: jami-daemon
 Architecture: any
 Depends: ${shlibs:Depends},
diff --git a/packaging/rules/debian/copyright b/packaging/rules/debian/copyright
index 73da38fc..2a82b17b 100644
--- a/packaging/rules/debian/copyright
+++ b/packaging/rules/debian/copyright
@@ -4,7 +4,6 @@ Upstream-Contact: Alexandre Viau <alexandre.viau@savoirfairelinux.net>
 Source: https://dl.jami.net/release/tarballs/
 Files-Excluded: client-electron/*
                 client-uwp/*
-                client-qt/*
                 client-android/*
                 client-macosx/*
                 client-ios/*
diff --git a/packaging/rules/debian/rules b/packaging/rules/debian/rules
index 847c39cd..27a990d4 100755
--- a/packaging/rules/debian/rules
+++ b/packaging/rules/debian/rules
@@ -15,6 +15,8 @@ endif
 # Binary package names
 JAMI_ALL_IN_ONE_PKG_NAME="jami-all"
 JAMI_CLIENT_PKG_NAME="jami"
+JAMI_CLIENT_GNOME_PKG_NAME="jami-gnome"
+JAMI_LIB_CLIENT_PKG_NAME="jami-libclient"
 JAMI_DAEMON_PKG_NAME="jami-daemon"
 
 # Bundled packages from contrib
@@ -34,6 +36,14 @@ BUNDLED_PKGS="--enable-ffmpeg" # For ubuntu 21.04 it seems there is massive issu
 endif
 endif
 
+# Qt-related variables
+QT_JAMI_PREFIX := ${QT_JAMI_PREFIX}
+export PATH := $(QT_JAMI_PREFIX)/bin:${PATH}
+export LD_LIBRARY_PATH := $(QT_JAMI_PREFIX)/lib:${LD_LIBRARY_PATH}
+export PKG_CONFIG_PATH := $(QT_JAMI_PREFIX)/lib/pkgconfig:${PKG_CONFIG_PATH}
+export CMAKE_PREFIX_PATH := $(QT_JAMI_PREFIX)/lib/cmake:${CMAKE_PREFIX_PATH}
+
+
 %:
 	dh $@
 
@@ -103,6 +113,11 @@ override_dh_auto_configure:
 			$(CMAKE_OPTIONS) \
 			..
 
+	#########################
+	## qt client configure ##
+	#########################
+	# needs to be done after lrc is built; see below
+
 	dh_auto_configure
 
 override_dh_auto_build:
@@ -122,6 +137,19 @@ override_dh_auto_build:
 	########################
 	make -C client-gnome/build LDFLAGS="-lpthread" -j$(NO_CPUS) V=1
 
+	###################################
+	## qt client configure and build ##
+	###################################
+	cd client-qt && \
+		mkdir build && \
+		cd build && \
+		cmake \
+			-DCMAKE_INSTALL_PREFIX=/usr \
+			-DLRC=$(CURDIR)/lrc \
+			$(CMAKE_OPTIONS) \
+			..
+	make -C client-qt/build -j$(NO_CPUS) V=1
+
 override_dh_auto_clean:
 	################################
 	## Generated contrib tarballs ##
@@ -149,6 +177,13 @@ override_dh_auto_clean:
 	if [ -f client-gnome/build/Makefile ]; then make -C client-gnome/build clean; fi
 	rm -rfv client-gnome/build
 
+	#####################
+	## qt client clean ##
+	#####################
+	# CMake build system has no distclean target, so use clean.
+	if [ -f client-qt/build/Makefile ]; then make -C client-qt/build clean; fi
+	rm -rfv client-qt/build
+
 override_dh_clean:
 	# GNUTLS contains:
 	# ring-project/daemon/contrib/tarballs-unpacked/gnutls-3.5.10.tar.xz/gnutls-3.5.10/src/certtool-args.c.bak
@@ -170,17 +205,24 @@ override_dh_auto_install:
 	#########################
 
         ## LibRingClient
-	cd lrc/build && make DESTDIR=$(CURDIR)/debian/$(JAMI_CLIENT_PKG_NAME) install
-	rm -rfv $(CURDIR)/debian/$(JAMI_CLIENT_PKG_NAME)/usr/include
+	cd lrc/build && make DESTDIR=$(CURDIR)/debian/$(JAMI_LIB_CLIENT_PKG_NAME) install
+	rm -rfv $(CURDIR)/debian/$(JAMI_LIB_CLIENT_PKG_NAME)/usr/include
 
 	# This is a symlink, should be in -dev package
-	rm -v $(CURDIR)/debian/$(JAMI_CLIENT_PKG_NAME)/usr/lib/libringclient.so
+	rm -v $(CURDIR)/debian/$(JAMI_LIB_CLIENT_PKG_NAME)/usr/lib/libringclient.so
 
 	# cmake files
 	rm -rfv $(CURDIR)/debian/$(JAMI_CLIENT_PKG_NAME)/usr/lib/cmake
 
         ## GNOME client
-	cd client-gnome/build && make DESTDIR=$(CURDIR)/debian/$(JAMI_CLIENT_PKG_NAME) install
+	cd client-gnome/build && \
+		make DESTDIR=$(CURDIR)/debian/$(JAMI_CLIENT_GNOME_PKG_NAME) install
+	rm -rfv $(CURDIR)/debian/$(JAMI_CLIENT_GNOME_PKG_NAME)/usr/bin/jami
+
+	## Qt client
+	cd client-qt/build && \
+		make DESTDIR=$(CURDIR)/debian/$(JAMI_CLIENT_PKG_NAME) install
+
 	ln -sf /usr/bin/jami $(CURDIR)/debian/jami/usr/bin/ring.cx
 
 	######################
@@ -205,7 +247,16 @@ override_dh_auto_install:
 
         ## GNOME client
 	cd client-gnome/build && make DESTDIR=$(CURDIR)/debian/$(JAMI_ALL_IN_ONE_PKG_NAME) install
-	ln -sf /usr/bin/jami $(CURDIR)/debian/jami-all/usr/bin/ring.cx
+	rm -rfv $(CURDIR)/debian/$(JAMI_ALL_IN_ONE_PKG_NAME)/usr/bin/jami
+
+	## Qt client
+	cd client-qt/build && \
+		make DESTDIR=$(CURDIR)/debian/$(JAMI_ALL_IN_ONE_PKG_NAME) install
+
+	ln -sf /usr/bin/jami $(CURDIR)/debian/$(JAMI_ALL_IN_ONE_PKG_NAME)/usr/bin/ring.cx
+
+override_dh_shlibdeps:
+	dh_shlibdeps -- -x$(JAMI_ALL_IN_ONE_PKG_NAME)
 
 tmpdir:= $(shell mktemp -d)
 workdir:= $(shell pwd)
diff --git a/scripts/build-package-debian.sh b/scripts/build-package-debian.sh
index 85795a47..0a93f4b3 100755
--- a/scripts/build-package-debian.sh
+++ b/scripts/build-package-debian.sh
@@ -35,30 +35,16 @@ fi
 
 # import the debian folder and override files if needed
 cp -r ${PKG_DIR} debian
-if [ -z "${DEBIAN_PACKAGING_OVERRIDE}" ]; then
-    echo "DEBIAN_PACKAGING_OVERRIDE not set."
-else
-    cp -r ${DEBIAN_PACKAGING_OVERRIDE}/* debian/
-fi
 
 DPKG_BUILD_OPTIONS=""
-MKBUILD_OPTIONS=""
 # Set the host architecture as armhf and add some specific architecture
 # options to the package builder.
 if grep -q "raspbian_10_armhf" <<< "${DISTRIBUTION}"; then
     echo "Adding armhf as the host architecture."
     export HOST_ARCH=arm-linux-gnueabihf
-    dpkg --add-architecture armhf
     DPKG_BUILD_OPTIONS="${DPKG_BUILD_OPTIONS} -a armhf"
-    MKBUILD_OPTIONS="${MKBUILD_OPTIONS} --host-arch armhf"
 fi
 
-# install build deps
-apt-get clean
-apt-get update
-apt-get upgrade -o Acquire::Retries=10 -y
-mk-build-deps ${MKBUILD_OPTIONS} --remove --install debian/control -t "apt-get -y --no-install-recommends"
-
 # create changelog file
 DEBEMAIL="The Jami project <jami@gnu.org>" dch --create --package jami --newversion ${DEBIAN_VERSION} "Automatic nightly release"
 DEBEMAIL="The Jami project <jami@gnu.org>" dch --release --distribution "unstable" debian/changelog
diff --git a/scripts/make-packaging-target.py b/scripts/make-packaging-target.py
index 95743807..0e3b9c17 100755
--- a/scripts/make-packaging-target.py
+++ b/scripts/make-packaging-target.py
@@ -51,7 +51,6 @@ PACKAGE_%(distribution)s_DOCKER_RUN_COMMAND = docker run \\
     -e RELEASE_VERSION=$(RELEASE_VERSION) \\
     -e RELEASE_TARBALL_FILENAME=$(RELEASE_TARBALL_FILENAME) \\
     -e DEBIAN_VERSION=%(version)s \\
-    -e DEBIAN_PACKAGING_OVERRIDE=%(debian_packaging_override)s \\
     -e CURRENT_UID=$(CURRENT_UID) \\
     -e CURRENT_GID=$(CURRENT_GID) \\
     -e DISTRIBUTION=%(distribution)s \\
@@ -110,7 +109,6 @@ def generate_target(distribution, output_file, options='', docker_image='',
     return target_template % {
         "distribution": distribution,
         "docker_image": docker_image,
-        "debian_packaging_override": debian_packaging_override,
         "output_file": output_file,
         "options": options,
         "version": version,
@@ -120,7 +118,6 @@ def generate_target(distribution, output_file, options='', docker_image='',
 
 def run_generate(parsed_args):
     print(generate_target(parsed_args.distribution,
-                          parsed_args.debian_packaging_override,
                           parsed_args.output_file,
                           parsed_args.options,
                           parsed_args.docker_image,
@@ -132,31 +129,26 @@ def run_generate_all(parsed_args):
         # Debian
         {
             "distribution": "debian_10",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
-            "options": "--privileged --security-opt apparmor=docker-default",
+            "options": "-e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX) --privileged --security-opt apparmor=docker-default",
         },
         {
             "distribution": "debian_10_i386",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
             "options": "--privileged --security-opt apparmor=docker-default",
         },
         {
             "distribution": "debian_10_armhf",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
             "options": "--privileged --security-opt apparmor=docker-default",
         },
         {
             "distribution": "debian_10_arm64",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
             "options": "--privileged --security-opt apparmor=docker-default"
         },
         {
             "distribution": "debian_10_qt",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_QT_DSC_FILENAME)",
             "options": DPKG_BASED_SYSTEMS_DOCKER_RUN_OPTIONS_QT,
             "version": "$(DEBIAN_QT_VERSION)",
@@ -164,15 +156,13 @@ def run_generate_all(parsed_args):
         {
             "distribution": "debian_10_oci",
             "docker_image": "debian_10",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_OCI_DSC_FILENAME)",
-            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) --privileged --security-opt apparmor=docker-default",
+            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) -e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX) --privileged --security-opt apparmor=docker-default",
             "version": "$(DEBIAN_OCI_VERSION)",
         },
         {
             "distribution": "debian_10_i386_oci",
             "docker_image": "debian_10_i386",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_OCI_DSC_FILENAME)",
             "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) --privileged --security-opt apparmor=docker-default",
             "version": "$(DEBIAN_OCI_VERSION)",
@@ -180,7 +170,6 @@ def run_generate_all(parsed_args):
         {
             "distribution": "debian_10_armhf_oci",
             "docker_image": "debian_10_armhf",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
             "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) --privileged --security-opt apparmor=docker-default",
             "version": "$(DEBIAN_OCI_VERSION)"
@@ -188,7 +177,6 @@ def run_generate_all(parsed_args):
         {
             "distribution": "debian_10_arm64_oci",
             "docker_image": "debian_10_arm64",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
             "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) --privileged --security-opt apparmor=docker-default",
             "version": "$(DEBIAN_OCI_VERSION)"
@@ -196,14 +184,12 @@ def run_generate_all(parsed_args):
         # Raspbian
         {
             "distribution": "raspbian_10_armhf",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
             "options": "--privileged --security-opt apparmor=docker-default",
         },
         {
             "distribution": "raspbian_10_armhf_oci",
             "docker_image": "raspbian_10_armhf",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
             "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) --privileged --security-opt apparmor=docker-default",
             "version": "$(DEBIAN_OCI_VERSION)",
@@ -211,13 +197,13 @@ def run_generate_all(parsed_args):
         # Ubuntu
         {
             "distribution": "ubuntu_18.04",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
+            "options": "-e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX)",
         },
         {
             "distribution": "ubuntu_18.04_i386",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
+            "options": "-e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX)",
         },
         {
             "distribution": "ubuntu_18.04_qt",
@@ -234,24 +220,21 @@ def run_generate_all(parsed_args):
         {
             "distribution": "ubuntu_18.04_oci",
             "docker_image": "ubuntu_18.04",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_OCI_DSC_FILENAME)",
-            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR)",
+            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) -e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX)",
             "version": "$(DEBIAN_OCI_VERSION)",
         },
         {
             "distribution": "ubuntu_18.04_i386_oci",
             "docker_image": "ubuntu_18.04_i386",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_OCI_DSC_FILENAME)",
-            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR)",
+            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) -e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX)",
             "version": "$(DEBIAN_OCI_VERSION)",
         },
         {
             "distribution": "ubuntu_20.04",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
-            "options": "--privileged --security-opt apparmor=docker-default",
+            "options": "-e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX) --privileged --security-opt apparmor=docker-default",
         },
         {
             "distribution": "ubuntu_20.04_qt",
@@ -262,16 +245,14 @@ def run_generate_all(parsed_args):
         {
             "distribution": "ubuntu_20.04_oci",
             "docker_image": "ubuntu_20.04",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_OCI_DSC_FILENAME)",
-            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) --privileged --security-opt apparmor=docker-default",
+            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) -e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX) --privileged --security-opt apparmor=docker-default",
             "version": "$(DEBIAN_OCI_VERSION)",
         },
         {
             "distribution": "ubuntu_20.10",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_DSC_FILENAME)",
-            "options": "--privileged --security-opt apparmor=docker-default",
+            "options": "-e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX) --privileged --security-opt apparmor=docker-default",
         },
         {
             "distribution": "ubuntu_20.10_qt",
@@ -282,9 +263,8 @@ def run_generate_all(parsed_args):
         {
             "distribution": "ubuntu_20.10_oci",
             "docker_image": "ubuntu_20.10",
-            "debian_packaging_override": "",
             "output_file": "$(DEBIAN_OCI_DSC_FILENAME)",
-            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) --privileged --security-opt apparmor=docker-default",
+            "options": "-e OVERRIDE_PACKAGING_DIR=$(DEBIAN_OCI_PKG_DIR) -e QT_JAMI_PREFIX=$(QT_JAMI_PREFIX) --privileged --security-opt apparmor=docker-default",
             "version": "$(DEBIAN_OCI_VERSION)",
         },
         {
@@ -305,13 +285,11 @@ def run_generate_all(parsed_args):
         # Fedora
         {
             "distribution": "fedora_32",
-            "debian_packaging_override": "",
             "output_file": ".packages-built",
             "options": RPM_BASED_SYSTEMS_DOCKER_RUN_OPTIONS
         },
         {
             "distribution": "fedora_33",
-            "debian_packaging_override": "",
             "output_file": ".packages-built",
             "options": RPM_BASED_SYSTEMS_DOCKER_RUN_OPTIONS
         },
@@ -323,7 +301,6 @@ def run_generate_all(parsed_args):
         },
         {
             "distribution": "rhel_8",
-            "debian_packaging_override": "",
             "output_file": ".packages-built",
             "options": RPM_BASED_SYSTEMS_DOCKER_RUN_OPTIONS,
             "docker_build_args": "--build-arg PASS=${PASS}"
@@ -331,20 +308,17 @@ def run_generate_all(parsed_args):
         # OpenSUSE
         {
             "distribution": "opensuse-leap_15.2",
-            "debian_packaging_override": "",
             "output_file": ".packages-built",
             "options": RPM_BASED_SYSTEMS_DOCKER_RUN_OPTIONS
         },
         {
             "distribution": "opensuse-tumbleweed",
-            "debian_packaging_override": "",
             "output_file": ".packages-built",
             "options": RPM_BASED_SYSTEMS_DOCKER_RUN_OPTIONS
         },
         # Snap
         {
             "distribution": "snap",
-            "debian_packaging_override": "",
             "output_file": ".packages-built",
         },
 
@@ -371,7 +345,6 @@ def parse_args():
 
     # Parameters
     ap.add_argument('--distribution')
-    ap.add_argument('--debian_packaging_override', default='')
     ap.add_argument('--output_file')
     ap.add_argument('--options', default='')
     ap.add_argument('--docker_image', default='')
-- 
GitLab