submodules: update nightly branch
diff --git a/Jenkinsfile b/Jenkinsfile
index 2fb1d47..6b88e3f 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -76,9 +76,6 @@
                      ' submodules at their Git-recorded commit.  When left ' +
                      'unticked (the default), checkout the submodules at ' +
                      'their latest commit from their main remote branch.')
-        booleanParam(name: 'BUILD_ARM',
-                     defaultValue: false,
-                     description: 'Whether to build ARM packages.')
         booleanParam(name: 'DEPLOY',
                      defaultValue: false,
                      description: 'Whether to deploy packages.')
@@ -158,6 +155,7 @@
             steps {
                 sh """\
 #!/usr/bin/env -S bash -l
+git status
 git commit -am 'New release.'
 make portable-release-tarball .tarball-version
 git tag \$(cat .tarball-version) -am "Jami \$(cat .tarball-version)"
@@ -206,9 +204,6 @@
                     }
 
                     TARGETS = targetsText.split(/\s/)
-                    if (!params.BUILD_ARM) {
-                        TARGETS = TARGETS.findAll { !(it =~ /_(armhf|arm64)$/) }
-                    }
 
                     def stages = [:]
 
diff --git a/client-android b/client-android
index 0ba9cfd..147a0cf 160000
--- a/client-android
+++ b/client-android
@@ -1 +1 @@
-Subproject commit 0ba9cfd7f836af17ca6872e9e689b58b472b8427
+Subproject commit 147a0cfeb4d989b4bff54cd023ad30adf835f0d2
diff --git a/client-ios b/client-ios
index ba96ab4..cd77f53 160000
--- a/client-ios
+++ b/client-ios
@@ -1 +1 @@
-Subproject commit ba96ab4f0d1529ad5386f8542d3d20f2ba0ea98a
+Subproject commit cd77f53cea94f2047c8903f3894aa5ede25443de
diff --git a/client-macosx b/client-macosx
index c35095b..188308d 160000
--- a/client-macosx
+++ b/client-macosx
@@ -1 +1 @@
-Subproject commit c35095bb31662e5655e591f31ce1c85bb9ba29c2
+Subproject commit 188308d7dccca0c9e58275df7c6b31a2c8e5f553
diff --git a/client-qt b/client-qt
index 83f6857..db18422 160000
--- a/client-qt
+++ b/client-qt
@@ -1 +1 @@
-Subproject commit 83f68573324a453a6d26e025fd6439f175a79d1b
+Subproject commit db1842295f4aaf02b51ee8fe3645c9bc24af518e
diff --git a/daemon b/daemon
index 02c5cec..00ecd45 160000
--- a/daemon
+++ b/daemon
@@ -1 +1 @@
-Subproject commit 02c5cecd363a1ee25a914d72e243d7903e44969b
+Subproject commit 00ecd458dae856cea7cf060f0dfb21b1b04f6c25
diff --git a/docker/Dockerfile_debian_testing b/docker/Dockerfile_debian_testing
index 715bc9c..800cbad 100644
--- a/docker/Dockerfile_debian_testing
+++ b/docker/Dockerfile_debian_testing
@@ -8,7 +8,8 @@
         devscripts \
         equivs \
         python-is-python3 \
-        wget
+        wget \
+        nasm
 
 ADD scripts/prebuild-package-debian.sh /opt/prebuild-package-debian.sh
 
diff --git a/docker/Dockerfile_snap b/docker/Dockerfile_snap
index eea2f53..12cc560 100644
--- a/docker/Dockerfile_snap
+++ b/docker/Dockerfile_snap
@@ -1,6 +1,12 @@
-FROM ubuntu:jammy as builder
+ARG RISK=edge
+ARG UBUNTU=focal
 
-# Grab dependencies.
+FROM ubuntu:$UBUNTU as builder
+ARG RISK
+ARG UBUNTU
+RUN echo "Building snapcraft:$RISK in ubuntu:$UBUNTU"
+
+# Grab dependencies
 RUN apt-get update
 RUN apt-get dist-upgrade --yes
 RUN apt-get install --yes \
@@ -10,61 +16,69 @@
 
 # Grab the core snap (for backwards compatibility) from the stable channel and
 # unpack it in the proper place.
-RUN curl -L $(curl -H 'X-Ubuntu-Series: 16' -H "X-Ubuntu-Architecture: amd64" 'https://api.snapcraft.io/api/v1/snaps/details/core' | jq '.download_url' -r) --output core.snap
+RUN curl -L $(curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/core' | jq '.download_url' -r) --output core.snap
 RUN mkdir -p /snap/core
 RUN unsquashfs -d /snap/core/current core.snap
 
-# Grab the core18 snap (which snapcraft uses as a base) from the stable channel
+# Grab the core22 snap (which snapcraft uses as a base) from the stable channel
 # and unpack it in the proper place.
-RUN curl -L $(curl -H 'X-Ubuntu-Series: 16' -H "X-Ubuntu-Architecture: amd64" 'https://api.snapcraft.io/api/v1/snaps/details/core18' | jq '.download_url' -r) --output core18.snap
-RUN mkdir -p /snap/core18
-RUN unsquashfs -d /snap/core18/current core18.snap
-
-# Grab the core22 snapfrom the stable channel
-# and unpack it in the proper place.
-RUN curl -L $(curl -H 'X-Ubuntu-Series: 16' -H "X-Ubuntu-Architecture: amd64" 'https://api.snapcraft.io/api/v1/snaps/details/core22' | jq '.download_url' -r) --output core22.snap
+RUN curl -L $(curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/core22?channel='$RISK | jq '.download_url' -r) --output core22.snap
 RUN mkdir -p /snap/core22
 RUN unsquashfs -d /snap/core22/current core22.snap
 
-# Grab the snapcraft snap from the targeted channel and unpack it in the proper
+# Grab the core20 snap (which snapcraft uses as a base) from the stable channel
+# and unpack it in the proper place.
+RUN curl -L $(curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/core20' | jq '.download_url' -r) --output core20.snap
+RUN mkdir -p /snap/core20
+RUN unsquashfs -d /snap/core20/current core20.snap
+
+# Grab the core20 snap (which snapcraft uses as a base) from the stable channel
+# and unpack it in the proper place.
+RUN curl -L $(curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/lxd' | jq '.download_url' -r) --output lxd.snap
+RUN mkdir -p /snap/lxd
+RUN unsquashfs -d /snap/lxd/current lxd.snap
+
+# Grab the snapcraft snap from the $RISK channel and unpack it in the proper
 # place.
-# RUN curl -L $(curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/snapcraft?channel=stable' | jq '.download_url' -r) --output snapcraft.snap
-# Current snapcraft snap is broken upstream again:
-#   https://forum.snapcraft.io/t/snapcraft-docker-images-broken-again/27942
-# Temporary workaround: pin to an older, non-broken version for now.
-# TODO: restore to the above once issue is fixed upstream.
-RUN curl -L https://api.snapcraft.io/api/v1/snaps/download/vMTKRaLjnOJQetI78HjntT37VuoyssFE_6751.snap --output snapcraft.snap
+RUN curl -L $(curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/snapcraft?channel='$RISK | jq '.download_url' -r) --output snapcraft.snap
 RUN mkdir -p /snap/snapcraft
 RUN unsquashfs -d /snap/snapcraft/current snapcraft.snap
 
+# Fix Python3 installation: Make sure we use the interpreter from
+# the snapcraft snap:
+RUN unlink /snap/snapcraft/current/usr/bin/python3
+RUN ln -s /snap/snapcraft/current/usr/bin/python3.* /snap/snapcraft/current/usr/bin/python3
+RUN echo /snap/snapcraft/current/lib/python3.*/site-packages >> /snap/snapcraft/current/usr/lib/python3/dist-packages/site-packages.pth
+
 # Create a snapcraft runner (TODO: move version detection to the core of
 # snapcraft).
 RUN mkdir -p /snap/bin
+RUN ls
 RUN echo "#!/bin/sh" > /snap/bin/snapcraft
-RUN snap_version="$(awk '/^version:/{print $2}' /snap/snapcraft/current/meta/snap.yaml)" && echo "export SNAP_VERSION=\"$snap_version\"" >> /snap/bin/snapcraft
+RUN snap_version="$(awk '/^version:/{print $2}' /snap/snapcraft/current/meta/snap.yaml | tr -d \')" && echo "export SNAP_VERSION=\"$snap_version\"" >> /snap/bin/snapcraft
 RUN echo 'exec "$SNAP/usr/bin/python3" "$SNAP/bin/snapcraft" "$@"' >> /snap/bin/snapcraft
 RUN chmod +x /snap/bin/snapcraft
 
 # Multi-stage build, only need the snaps from the builder. Copy them one at a
 # time so they can be cached.
-FROM ubuntu:jammy
+FROM ubuntu:$UBUNTU
 COPY --from=builder /snap/core /snap/core
-COPY --from=builder /snap/core18 /snap/core18
 COPY --from=builder /snap/core22 /snap/core22
+COPY --from=builder /snap/core20 /snap/core20
+COPY --from=builder /snap/lxd /snap/lxd
 COPY --from=builder /snap/snapcraft /snap/snapcraft
 COPY --from=builder /snap/bin/snapcraft /snap/bin/snapcraft
 
 # Generate locale and install dependencies.
-RUN apt-get update && apt-get dist-upgrade --yes && apt-get install --yes snapd sudo locales && locale-gen en_US.UTF-8
+RUN apt-get update && apt-get dist-upgrade --yes && apt-get install --yes snapd sudo apt-transport-https locales && locale-gen en_US.UTF-8
 
 # Set the proper environment.
 ENV LANG="en_US.UTF-8"
 ENV LANGUAGE="en_US:en"
 ENV LC_ALL="en_US.UTF-8"
-ENV PATH="/snap/bin:$PATH"
+ENV PATH="/snap/bin:/snap/snapcraft/current/usr/bin:/snap/snapcraft/current/libexec/snapcraft/:$PATH"
 ENV SNAP="/snap/snapcraft/current"
 ENV SNAP_NAME="snapcraft"
-
 ENV SNAP_ARCH="amd64"
 
 ADD scripts/build-package-snap.sh /opt/build-package-snap.sh
diff --git a/docker/Dockerfile_ubuntu_18.04 b/docker/Dockerfile_ubuntu_18.04
index cbc9b81..ecce72f 100644
--- a/docker/Dockerfile_ubuntu_18.04
+++ b/docker/Dockerfile_ubuntu_18.04
@@ -14,6 +14,7 @@
         clang-tools \
         libarchive-dev \
         software-properties-common \
+        libarchive-dev \
         wget
 
 # nodejs (more recent version needed for building libqt-jami)
diff --git a/packaging/rules/snap/jami/snapcraft.yaml b/packaging/rules/snap/jami/snapcraft.yaml
index 888fc2a..2bf7359 100644
--- a/packaging/rules/snap/jami/snapcraft.yaml
+++ b/packaging/rules/snap/jami/snapcraft.yaml
@@ -85,13 +85,13 @@
 
 confinement: strict
 grade: stable
-base: core22
+base: core20
 
 plugs:
-  gnome-42-2204:
+  gnome-3-38-2004:
     interface: content
     target: $SNAP/gnome-platform
-    default-provider: gnome-42-2204:gnome-42-2204
+    default-provider: gnome-3-38-2004:gnome-3-38-2004
   gtk-3-themes:
     interface: content
     target: $SNAP/data-dir/themes
@@ -168,7 +168,7 @@
     components: [main]
     suites: [jami]
     key-id: A295D773307D25A33AE72F2F64CD5FA175348F84
-    url: https://dl.jami.net/nightly/ubuntu_22.04/
+    url: https://dl.jami.net/nightly/ubuntu_20.04/
 
 parts:
   desktop-launch:
@@ -329,7 +329,7 @@
     - libgstreamer-plugins-base1.0-0
     - libgstreamer1.0-0
     - libgudev-1.0-0
-    - libjsoncpp25
+    - libjsoncpp1
     - libllvm12
     - libminizip1
     - libnm0
diff --git a/plugins b/plugins
index 17c0bc6..cf0a11c 160000
--- a/plugins
+++ b/plugins
@@ -1 +1 @@
-Subproject commit 17c0bc64a374d601012943a0a79ace65734dd922
+Subproject commit cf0a11c7ac9f635061e5cdb466a3e46ace196e3e
diff --git a/scripts/build-package-snap.sh b/scripts/build-package-snap.sh
index 90fb341..fa5c869 100755
--- a/scripts/build-package-snap.sh
+++ b/scripts/build-package-snap.sh
@@ -23,13 +23,14 @@
 
 set -e
 
+ls
 tar xf "/src/$RELEASE_TARBALL_FILENAME" -C /opt
 cd /opt/jami-project/packaging/rules/snap/${SNAP_PKG_NAME}/
 
 # set the version and tarball filename
 sed -i "s/RELEASE_VERSION/${RELEASE_VERSION}/g" snapcraft.yaml
 
-snapcraft # requires snapcraft >= 4.8
+snapcraft --destructive-mode # requires snapcraft >= 4.8
 
 # move the built snap to output
 mv *.snap /opt/output/
diff --git a/scripts/deploy-packages.sh b/scripts/deploy-packages.sh
index 4d3bb51..b886fb5 100755
--- a/scripts/deploy-packages.sh
+++ b/scripts/deploy-packages.sh
@@ -226,6 +226,9 @@
         ls packages/${DISTRIBUTION}*
         cp packages/${DISTRIBUTION}*/*.snap ${DISTRIBUTION_REPOSITORY_FOLDER}/
     elif [[ $CHANNEL =~ nightly ]]; then
+        echo $(hostname)
+        echo $(whoami)
+        echo $(snapcraft whoami)
         snapcraft push packages/${DISTRIBUTION}*/*.snap --release edge
     elif [[ $CHANNEL =~ stable ]]; then
         snapcraft push packages/${DISTRIBUTION}*/*.snap --release stable