diff --git a/daemon b/daemon
index a9d0ef42bc4966495011dd376e5ac7adc46bb144..0972070b38739c17effe986542c98878fe880e99 160000
--- a/daemon
+++ b/daemon
@@ -1 +1 @@
-Subproject commit a9d0ef42bc4966495011dd376e5ac7adc46bb144
+Subproject commit 0972070b38739c17effe986542c98878fe880e99
diff --git a/extras/packaging/gnu-linux/Makefile b/extras/packaging/gnu-linux/Makefile
index 1be7ac87d4c46f9d9d8efc93e74b8af57962157c..1e53c7623ba3dadc1a029fe7c490d90e332c2111 100644
--- a/extras/packaging/gnu-linux/Makefile
+++ b/extras/packaging/gnu-linux/Makefile
@@ -166,8 +166,10 @@ DISTRIBUTIONS := \
 	ubuntu_20.04 \
 	ubuntu_22.04 \
 	ubuntu_22.10 \
+	ubuntu_23.04 \
 	fedora_36 \
 	fedora_37 \
+	fedora_38 \
 	opensuse-leap_15.4 \
 	snap
 
diff --git a/extras/packaging/gnu-linux/docker/Dockerfile_fedora_38 b/extras/packaging/gnu-linux/docker/Dockerfile_fedora_38
new file mode 100644
index 0000000000000000000000000000000000000000..f8c34aa5480c843747fcef07f6d100500b66912b
--- /dev/null
+++ b/extras/packaging/gnu-linux/docker/Dockerfile_fedora_38
@@ -0,0 +1,105 @@
+FROM fedora:38
+
+RUN dnf clean all
+RUN dnf update -y
+
+RUN dnf install -y dnf-command\(builddep\) rpmdevtools && \
+    dnf install -y mock
+
+RUN dnf groupinstall -y "X Software Development"
+
+RUN dnf install -y \
+        git \
+        rpm-build \
+        tar \
+        make \
+        autoconf \
+        automake \
+        nasm \
+        speexdsp-devel \
+        pulseaudio-libs-devel \
+        libcanberra-devel \
+        libcurl-devel \
+        libtool \
+        mesa-libgbm-devel \
+        mesa-dri-drivers \
+        dbus-devel \
+        expat-devel \
+        pcre-devel \
+        yaml-cpp-devel \
+        dbus-c++-devel \
+        dbus-devel \
+        libXext-devel \
+        libXfixes-devel \
+        yasm \
+        python2.7 \
+        speex-devel \
+        gsm-devel \
+        chrpath \
+        check \
+        astyle \
+        uuid-c++-devel \
+        gettext-devel \
+        gcc-c++ \
+        which \
+        alsa-lib-devel \
+        systemd-devel \
+        libuuid-devel \
+        uuid-devel \
+        gnutls-devel \
+        nettle-devel \
+        opus-devel \
+        patch \
+        jsoncpp-devel \
+        libnatpmp-devel \
+        webkitgtk4-devel \
+        cryptopp-devel \
+        libva-devel \
+        libvdpau-devel \
+        msgpack-devel \
+        NetworkManager-libnm-devel \
+        openssl-devel \
+        clutter-devel \
+        clutter-gtk-devel \
+        libappindicator-gtk3-devel \
+        libnotify-devel \
+        libupnp-devel \
+        qrencode-devel \
+        libargon2-devel \
+        libsndfile-devel \
+        libdrm \
+        gperf \
+        bison \
+        clang \
+        clang-devel \
+        llvm-devel \
+        nodejs \
+        flex \
+        gstreamer1 gstreamer1-devel \
+        gstreamer1-plugins-base-devel \
+        gstreamer1-plugins-good \
+        gstreamer1-plugins-bad-free-devel \
+        nss-devel \
+        libxcb* \
+        libxkb* \
+        libX11-devel \
+        vulkan-devel \
+        libXrender-devel \
+        xcb-util-* \
+        xz \
+        xkeyboard-config \
+        libnotify \
+        wget \
+        libstdc++-static \
+        sqlite-devel \
+        perl-generators \
+        perl-English \
+        libxshmfence-devel \
+        ninja-build \
+        clang \
+        cmake \
+        fmt-devel
+
+ADD extras/packaging/gnu-linux/scripts/build-package-rpm.sh /opt/build-package-rpm.sh
+
+CMD ["/opt/build-package-rpm.sh"]
diff --git a/extras/packaging/gnu-linux/docker/Dockerfile_ubuntu_23.04 b/extras/packaging/gnu-linux/docker/Dockerfile_ubuntu_23.04
new file mode 100644
index 0000000000000000000000000000000000000000..470502f40c2856e73b06d78c0ed2e44bc21cb599
--- /dev/null
+++ b/extras/packaging/gnu-linux/docker/Dockerfile_ubuntu_23.04
@@ -0,0 +1,22 @@
+FROM ubuntu:23.04
+
+ENV DEBIAN_FRONTEND=noninteractive
+
+RUN apt-get clean
+RUN apt-get update && \
+    apt-get install -y -o Acquire::Retries=10 \
+        devscripts \
+        equivs \
+        python-is-python3 \
+        wget
+
+ADD extras/packaging/gnu-linux/scripts/prebuild-package-debian.sh /opt/prebuild-package-debian.sh
+
+COPY extras/packaging/gnu-linux/rules/debian-qt/control /tmp/builddeps/debian/control
+RUN /opt/prebuild-package-debian.sh qt-deps
+
+COPY extras/packaging/gnu-linux/rules/debian/control /tmp/builddeps/debian/control
+RUN /opt/prebuild-package-debian.sh jami-deps
+
+ADD extras/packaging/gnu-linux/scripts/build-package-debian.sh /opt/build-package-debian.sh
+CMD ["/opt/build-package-debian.sh"]
diff --git a/extras/packaging/gnu-linux/rules/debian-qt/control b/extras/packaging/gnu-linux/rules/debian-qt/control
index d337bfbd65bb2f5fed75e80687e7b50c995032dc..77f3d780e6c3316f790dbf63df9c5fec0c4e7405 100644
--- a/extras/packaging/gnu-linux/rules/debian-qt/control
+++ b/extras/packaging/gnu-linux/rules/debian-qt/control
@@ -315,7 +315,6 @@ Build-Depends: debhelper (>= 9),
 # pkg-config,
 # pkg-kde-tools,
                protobuf-compiler,
-               python2 | python,
 # qtbase5-dev (>= 5.15.2+dfsg~),
 # qtbase5-private-dev (>= 5.15.2+dfsg~),
 # qtdeclarative5-private-dev (>= 5.15.2+dfsg~),
diff --git a/extras/packaging/gnu-linux/rules/debian-qt/patches/0002-check-ulimit.patch b/extras/packaging/gnu-linux/rules/debian-qt/patches/0002-check-ulimit.patch
new file mode 100644
index 0000000000000000000000000000000000000000..cf1192134057ba2a9992f31b12fad65bb3900bf0
--- /dev/null
+++ b/extras/packaging/gnu-linux/rules/debian-qt/patches/0002-check-ulimit.patch
@@ -0,0 +1,33 @@
+From 517d0890f9e95c841bea3421f2455651ca0d8070 Mon Sep 17 00:00:00 2001
+From: Alexey Edelev <alexey.edelev@qt.io>
+Date: Wed, 23 Nov 2022 12:40:45 +0100
+Subject: [PATCH] Fix Linux build with CMake versions >= 3.25
+
+The 'LINUX' variable exists in CMake since the version 3.25. This
+variable previously was undefined while preparsing the configure.cmake
+files. Since the CMake script that defines the 'check_for_ulimit'
+function is not included while evaluating configure.cmake first time
+we need to add a stub.
+
+Change-Id: I25bdec4f4a1b6af23174507a8f0f9cbf01f0c398
+Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
+(cherry picked from commit 240e71877865ed07e4c8d5bd4553aa0772c2adf4)
+Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
+---
+
+ qtwebengine/configure.cmake | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/qtwebengine/configure.cmake b/qtwebengine/configure.cmake
+index 015bcd1..d8e7fea 100644
+--- a/qtwebengine/configure.cmake
++++ b/qtwebengine/configure.cmake
+@@ -4,6 +4,8 @@ if(QT_CONFIGURE_RUNNING)
+     endfunction()
+     function(add_check_for_support)
+     endfunction()
++    function(check_for_ulimit)
++    endfunction()
+ else()
+     find_package(Ninja 1.7.2)
+     find_package(Gn ${QT_REPO_MODULE_VERSION} EXACT)
diff --git a/extras/packaging/gnu-linux/rules/debian-qt/patches/0003-fix-gcc13.patch b/extras/packaging/gnu-linux/rules/debian-qt/patches/0003-fix-gcc13.patch
new file mode 100644
index 0000000000000000000000000000000000000000..c2a7fc4752fde19a3f549408843ae44b319debbb
--- /dev/null
+++ b/extras/packaging/gnu-linux/rules/debian-qt/patches/0003-fix-gcc13.patch
@@ -0,0 +1,591 @@
+ qtwebengine/src/3rdparty/chromium/base/debug/profiler.h                                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h                                                | 1 +
+ qtwebengine/src/3rdparty/chromium/base/logging.h                                                          | 2 ++
+ qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc                                             | 2 ++
+ qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h                 | 1 +
+ qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc                       | 1 +
+ qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h                            | 1 +
+ qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h               | 1 +
+ qtwebengine/src/3rdparty/chromium/extensions/common/constants.h                                           | 2 ++
+ qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h                            | 2 ++
+ qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h                                           | 1 +
+ qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h                                           | 1 +
+ qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h                                            | 1 +
+ qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h                                                   | 2 ++
+ qtwebengine/src/3rdparty/chromium/net/base/parse_number.h                                                 | 1 +
+ qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h                 | 1 +
+ qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h                         | 1 +
+ qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h                                          | 1 +
+ qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h               | 6 ++++--
+ qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h     | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h                          | 2 +-
+ qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h                          | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h                               | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h          | 2 ++
+ .../src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h    | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc                         | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h                         | 2 ++
+ qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h                   | 1 +
+ .../3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h    | 2 ++
+ qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp                             | 4 ++++
+ qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h                  | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h                 | 1 +
+ qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h                          | 1 +
+ qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h                                       | 1 +
+ qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h                                          | 2 ++
+ qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h                                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h                                                    | 1 +
+ qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h                                    | 3 +++
+ qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h                                | 1 +
+ qtwebengine/src/core/browsing_data_remover_delegate_qt.h                                                  | 2 ++
+ 43 files changed, 61 insertions(+), 3 deletions(-)
+
+diff --git a/qtwebengine/src/3rdparty/chromium/base/debug/profiler.h b/qtwebengine/src/3rdparty/chromium/base/debug/profiler.h
+index 1229e06234..c7ed55e70f 100644
+--- a/qtwebengine/src/3rdparty/chromium/base/debug/profiler.h
++++ b/qtwebengine/src/3rdparty/chromium/base/debug/profiler.h
+@@ -5,6 +5,7 @@
+ #ifndef BASE_DEBUG_PROFILER_H_
+ #define BASE_DEBUG_PROFILER_H_
+
++#include <cstdint>
+ #include <stddef.h>
+
+ #include <string>
+diff --git a/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h b/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h
+index 618e1e3769..bd0faf99ef 100644
+--- a/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h
++++ b/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h
+@@ -7,6 +7,7 @@
+
+ #include <stddef.h>
+
++#include <cstdint>
+ #include <iosfwd>
+ #include <string>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/base/logging.h b/qtwebengine/src/3rdparty/chromium/base/logging.h
+index c4db4c92dc..602560db1a 100644
+--- a/qtwebengine/src/3rdparty/chromium/base/logging.h
++++ b/qtwebengine/src/3rdparty/chromium/base/logging.h
+@@ -7,6 +7,8 @@
+
+ #include <stddef.h>
+
++
++#include <cstdint>
+ #include <cassert>
+ #include <cstdint>
+ #include <sstream>
+diff --git a/qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc b/qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc
+index 96f8c3bd7c..c3f087b1a9 100644
+--- a/qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc
++++ b/qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc
+@@ -6,6 +6,8 @@
+
+ #include "ui/gfx/animation/keyframe/target_property.h"
+
++#include <cstdint>
++
+ namespace cc {
+
+ static_assert(TargetProperty::LAST_TARGET_PROPERTY <
+diff --git a/qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h b/qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h
+index 3896bc6e78..b93843dc16 100644
+--- a/qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h
++++ b/qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h
+@@ -5,6 +5,7 @@
+ #ifndef CONTENT_PUBLIC_BROWSER_BROWSING_DATA_REMOVER_DELEGATE_H_
+ #define CONTENT_PUBLIC_BROWSER_BROWSING_DATA_REMOVER_DELEGATE_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+ #include "base/callback_forward.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc b/qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc
+index 213b6301c0..9332e37e6f 100644
+--- a/qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc
++++ b/qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc
+@@ -3,6 +3,7 @@
+ // found in the LICENSE file.
+
+ #include "device/base/synchronization/one_writer_seqlock.h"
++#include <cstdint>
+
+ namespace device {
+
+diff --git a/qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h b/qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h
+index 0c27ae7105..b64f82f754 100644
+--- a/qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h
++++ b/qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h
+@@ -5,6 +5,7 @@
+ #ifndef DEVICE_BLUETOOTH_PUBLIC_CPP_BLUETOOTH_UUID_H_
+ #define DEVICE_BLUETOOTH_PUBLIC_CPP_BLUETOOTH_UUID_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h b/qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h
+index afcaf9e4d1..5401e893a3 100644
+--- a/qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h
++++ b/qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h
+@@ -5,6 +5,7 @@
+ #ifndef DEVICE_FIDO_FIDO_TRANSPORT_PROTOCOL_H_
+ #define DEVICE_FIDO_FIDO_TRANSPORT_PROTOCOL_H_
+
++#include <cstdint>
+ #include <string>
+
+ #include "base/component_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h b/qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h
+index 9d2858177e..d263f67032 100644
+--- a/qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h
++++ b/qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h
+@@ -5,6 +5,7 @@
+ #ifndef EXTENSIONS_BROWSER_API_AUDIO_AUDIO_DEVICE_ID_CALCULATOR_H_
+ #define EXTENSIONS_BROWSER_API_AUDIO_AUDIO_DEVICE_ID_CALCULATOR_H_
+
++#include <cstdint>
+ #include <map>
+ #include <string>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/extensions/common/constants.h b/qtwebengine/src/3rdparty/chromium/extensions/common/constants.h
+index 782a171adf..867de7c240 100644
+--- a/qtwebengine/src/3rdparty/chromium/extensions/common/constants.h
++++ b/qtwebengine/src/3rdparty/chromium/extensions/common/constants.h
+@@ -11,6 +11,8 @@
+ #include "components/services/app_service/public/mojom/types.mojom.h"
+ #include "ui/base/layout.h"
+
++#include <cstdint>
++
+ namespace extensions {
+
+ // Scheme we serve extension content from.
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h b/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h
+index 83615b30c8..8fa9fb1f6d 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h
+@@ -5,6 +5,8 @@
+ #ifndef GPU_COMMAND_BUFFER_COMMON_WEBGPU_CMD_ENUMS_H_
+ #define GPU_COMMAND_BUFFER_COMMON_WEBGPU_CMD_ENUMS_H_
+
++#include <cstdint>
++
+ namespace gpu {
+ namespace webgpu {
+
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h b/qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h
+index e33874ba3b..824a207a22 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h
+@@ -5,6 +5,7 @@
+ #ifndef GPU_CONFIG_DEVICE_PERF_INFO_H_
+ #define GPU_CONFIG_DEVICE_PERF_INFO_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h
+index 027f1a5af3..70759b2ae4 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h
+@@ -5,6 +5,7 @@
+ #ifndef GPU_CONFIG_GPU_FEATURE_INFO_H_
+ #define GPU_CONFIG_GPU_FEATURE_INFO_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h
+index f4077c21d7..d0420d5631 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h
+@@ -5,6 +5,7 @@
+ #ifndef GPU_CONFIG_GPU_PREFERENCES_H_
+ #define GPU_CONFIG_GPU_PREFERENCES_H_
+
++#include <cstdint>
+ #include <stddef.h>
+ #include <string>
+ #include <vector>
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h
+index fa2450f3db..1125d3da53 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h
+@@ -5,6 +5,8 @@
+ #ifndef GPU_CONFIG_GPU_UTIL_H_
+ #define GPU_CONFIG_GPU_UTIL_H_
+
++#include <cstdint>
++
+ #include "build/build_config.h"
+ #include "gpu/config/gpu_feature_info.h"
+ #include "gpu/gpu_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/net/base/parse_number.h b/qtwebengine/src/3rdparty/chromium/net/base/parse_number.h
+index 0b4cfc1f8e..6f197966e2 100644
+--- a/qtwebengine/src/3rdparty/chromium/net/base/parse_number.h
++++ b/qtwebengine/src/3rdparty/chromium/net/base/parse_number.h
+@@ -5,6 +5,7 @@
+ #ifndef NET_BASE_PARSE_NUMBER_H_
+ #define NET_BASE_PARSE_NUMBER_H_
+
++#include <cstdint>
+ #include "base/compiler_specific.h"
+ #include "base/strings/string_piece.h"
+ #include "net/base/net_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h b/qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h
+index 3247c6269f..76efd3f01d 100644
+--- a/qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h
++++ b/qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h
+@@ -5,6 +5,7 @@
+ #ifndef NET_COOKIES_COOKIE_INCLUSION_STATUS_H_
+ #define NET_COOKIES_COOKIE_INCLUSION_STATUS_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h b/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h
+index 9a14bc4649..8302073d8f 100644
+--- a/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h
++++ b/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h
+@@ -6,6 +6,7 @@
+ #define QUICHE_QUIC_CORE_CRYPTO_QUIC_HKDF_H_
+
+ #include <vector>
++#include <cstdint>
+
+ #include "absl/strings/string_view.h"
+ #include "quic/platform/api/quic_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h b/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h
+index c77219eb32..d3aa92be05 100644
+--- a/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h
++++ b/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h
+@@ -8,6 +8,7 @@
+ #include <map>
+ #include <string>
+ #include <vector>
++#include <cstdint>
+
+ #include "absl/strings/string_view.h"
+ #include "quic/platform/api/quic_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h b/qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h
+index 254398e622..8f03f9be85 100644
+--- a/qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h
++++ b/qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h
+@@ -5,6 +5,7 @@
+ #ifndef PDF_DOCUMENT_ATTACHMENT_INFO_H_
+ #define PDF_DOCUMENT_ATTACHMENT_INFO_H_
+
++#include <cstdint>
+ #include "base/strings/string16.h"
+
+ namespace chrome_pdf {
+diff --git a/qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h b/qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h
+index ac0b31a75c..5d1c421d03 100644
+--- a/qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h
++++ b/qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h
+@@ -38,6 +38,10 @@ namespace pp {
+ /// As a further optimization, we can add support for this later.
+ class ThreadSafeThreadTraits {
+  public:
++
++  typedef pp::Lock Lock;
++  typedef pp::AutoLock AutoLock;
++
+   class RefCount {
+    public:
+     /// Default constructor. In debug mode, this checks that the object is being
+@@ -67,8 +71,6 @@ class ThreadSafeThreadTraits {
+     int32_t ref_;
+   };
+
+-  typedef pp::Lock Lock;
+-  typedef pp::AutoLock AutoLock;
+ };
+
+ /// The non-thread-safe version of thread traits. Using this class as the
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h b/qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h
+index a9b9e137de..562327f1c4 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h
+@@ -18,6 +18,7 @@
+
+ #include <limits.h>
+
++#include <cstdint>
+ #include <cstddef>
+ #include <cstring>
+ #include <ostream>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h b/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h
+index e9b79943dd..18428a5946 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h
+@@ -7,7 +7,7 @@
+ #define GLSLANG_SHADERLANG_H_
+
+ #include <stddef.h>
+-
++#include <cstdint>
+ #include "KHR/khrplatform.h"
+
+ #include <array>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h b/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h
+index a8f3bb28c6..bd9e105835 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h
+@@ -14,6 +14,7 @@
+ #include <array>
+ #include <string>
+ #include <vector>
++#include <cstdint>
+
+ // This type is defined here to simplify ANGLE's integration with glslang for SPIRv.
+ using ShCompileOptions = uint64_t;
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h b/qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h
+index d132a72e8c..f49ba32d49 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h
+@@ -22,6 +22,7 @@
+ #include <climits>
+ #include <cstdarg>
+ #include <cstddef>
++#include <cstdint>
+ #include <set>
+ #include <sstream>
+ #include <string>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h b/qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h
+index 14c5548766..43c9a8d6a5 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h
+@@ -5,6 +5,8 @@
+ #ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_GRAPHICS_DARK_MODE_TYPES_H_
+ #define THIRD_PARTY_BLINK_RENDERER_PLATFORM_GRAPHICS_DARK_MODE_TYPES_H_
+
++#include <cstdint>
++
+ namespace blink {
+
+ enum class DarkModeResult : uint8_t {
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h b/qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h
+index c7e4f2b378..f30ce91b36 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h
+@@ -34,6 +34,7 @@
+ #include <sys/types.h>
+
+ #include <string>
++#include <cstdint>
+
+ #include "client/linux/handler/microdump_extra_info.h"
+ #include "common/using_std_string.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc b/qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc
+index a3099e15db..2e6f0eea70 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc
++++ b/qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc
+@@ -30,6 +30,7 @@
+ #include <cstddef>
+ #include <cstdint>
+ #include <cstring>
++#include <cstdio>
+ #include <new>
+ #include <utility>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h b/qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h
+index d2731dac7a..46bc87ef92 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h
+@@ -5,6 +5,8 @@
+ #ifndef CONSTANTS_ANNOTATION_FLAGS_H_
+ #define CONSTANTS_ANNOTATION_FLAGS_H_
+
++#include <cstdint>
++
+ namespace pdfium {
+ namespace annotation_flags {
+
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h b/qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h
+index 1b4c53815b..472042fabc 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h
+@@ -18,6 +18,7 @@
+ #define INCLUDE_PERFETTO_EXT_BASE_UUID_H_
+
+ #include <array>
++#include <cstdint>
+ #include <string>
+
+ #include "perfetto/ext/base/optional.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h b/qtwebengine/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h
+index dda2f85759..158b5e8baa 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h
+@@ -21,6 +21,8 @@
+ #include "perfetto/trace_processor/status.h"
+ #include "src/trace_processor/trace_blob_view.h"
+
++#include <cstdint>
++
+ namespace perfetto {
+
+ namespace protos {
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp b/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp
+index 7260365b2c..503ed08ff6 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp
++++ b/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp
+@@ -8,6 +8,10 @@
+
+ #include "include/utils/SkParse.h"
+
++#include <string.h>
++#include <algorithm>
++#include <iterator>
++
+ static constexpr const char* gColorNames[] = {
+     "aliceblue",
+     "antiquewhite",
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h b/qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h
+index 917e369c6d..0795b1d683 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h
+@@ -3844,6 +3844,7 @@ VMA_CALL_PRE void VMA_CALL_POST vmaDestroyImage(
+ #ifdef VMA_IMPLEMENTATION
+ #undef VMA_IMPLEMENTATION
+
++#include <cstdio>
+ #include <cstdint>
+ #include <cstdlib>
+ #include <cstring>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h
+index b89f154072..8ebf6a42c3 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h
+@@ -11,6 +11,7 @@
+ #ifndef CALL_RTP_DEMUXER_H_
+ #define CALL_RTP_DEMUXER_H_
+
++#include <cstdint>
+ #include <map>
+ #include <set>
+ #include <string>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h
+index 7a936f23e7..21951a1d24 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h
+@@ -12,6 +12,7 @@
+ #ifndef RTC_BASE_THIRD_PARTY_BASE64_BASE64_H_
+ #define RTC_BASE_THIRD_PARTY_BASE64_BASE64_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h b/qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h
+index 5e4f410d12..722e73d053 100644
+--- a/qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h
++++ b/qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h
+@@ -5,6 +5,7 @@
+ #ifndef UI_BASE_IME_LINUX_LINUX_INPUT_METHOD_CONTEXT_H_
+ #define UI_BASE_IME_LINUX_LINUX_INPUT_METHOD_CONTEXT_H_
+
++#include <cstdint>
+ #include "base/component_export.h"
+ #include "base/strings/string16.h"
+ #include "ui/base/ime/text_input_type.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h b/qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h
+index 668f07489e..8357414e83 100644
+--- a/qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h
++++ b/qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h
+@@ -5,6 +5,7 @@
+ #ifndef UI_EVENTS_GESTURE_DETECTION_GESTURE_EVENT_DETAILS_H_
+ #define UI_EVENTS_GESTURE_DETECTION_GESTURE_EVENT_DETAILS_H_
+
++#include <cstdint>
+ #include <string.h>
+
+ #include "base/check_op.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h b/qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h
+index 7ff15f0fc5..136cebc09e 100644
+--- a/qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h
++++ b/qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h
+@@ -5,6 +5,8 @@
+ #ifndef UI_EVENTS_TYPES_SCROLL_TYPES_H_
+ #define UI_EVENTS_TYPES_SCROLL_TYPES_H_
+
++#include <cstdint>
++
+ namespace ui {
+
+ enum class ScrollGranularity : uint8_t {
+diff --git a/qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h b/qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h
+index fe39f98822..dbe130581c 100644
+--- a/qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h
++++ b/qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h
+@@ -5,6 +5,7 @@
+ #ifndef V8_BASE_LOGGING_H_
+ #define V8_BASE_LOGGING_H_
+
++#include <cstdint>
+ #include <cstring>
+ #include <sstream>
+ #include <string>
+diff --git a/qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h b/qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h
+index 9079d15662..770f2c8b6e 100644
+--- a/qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h
++++ b/qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h
+@@ -5,6 +5,7 @@
+ #ifndef V8_BASE_MACROS_H_
+ #define V8_BASE_MACROS_H_
+
++#include <cstdint>
+ #include <limits>
+ #include <type_traits>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h b/qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h
+index 03af2cc5e2..07774cd611 100644
+--- a/qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h
++++ b/qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h
+@@ -15,8 +15,11 @@
+ #include "src/compiler/code-assembler.h"
+ #include "src/objects/arguments.h"
+ #include "src/objects/bigint.h"
++#include "src/objects/cell.h"
+ #include "src/objects/feedback-vector.h"
+ #include "src/objects/js-function.h"
++#include "src/objects/js-generator.h"
++#include "src/objects/js-promise.h"
+ #include "src/objects/objects.h"
+ #include "src/objects/promise.h"
+ #include "src/objects/shared-function-info.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h b/qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h
+index c1d69c18f0..eb33c6816a 100644
+--- a/qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h
++++ b/qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h
+@@ -5,6 +5,7 @@
+ #ifndef V8_INSPECTOR_V8_STRING_CONVERSIONS_H_
+ #define V8_INSPECTOR_V8_STRING_CONVERSIONS_H_
+
++#include <cstdint>
+ #include <string>
+
+ // Conversion routines between UT8 and UTF16, used by string-16.{h,cc}. You may
+diff --git a/qtwebengine/src/core/browsing_data_remover_delegate_qt.h b/qtwebengine/src/core/browsing_data_remover_delegate_qt.h
+index a10409f397..b9f5e59d8a 100644
+--- a/qtwebengine/src/core/browsing_data_remover_delegate_qt.h
++++ b/qtwebengine/src/core/browsing_data_remover_delegate_qt.h
+@@ -42,6 +42,8 @@
+
+ #include "content/public/browser/browsing_data_remover_delegate.h"
+
++#include <cstdint>
++
+ namespace QtWebEngineCore {
+
+ class BrowsingDataRemoverDelegateQt : public content::BrowsingDataRemoverDelegate {
diff --git a/extras/packaging/gnu-linux/rules/debian-qt/patches/series b/extras/packaging/gnu-linux/rules/debian-qt/patches/series
index 5cd7cfb4a69b95196220c81d4a81652a4bd0368f..f7b3a1fd9b075ca97169f849b61b2da8ac302b4a 100644
--- a/extras/packaging/gnu-linux/rules/debian-qt/patches/series
+++ b/extras/packaging/gnu-linux/rules/debian-qt/patches/series
@@ -1 +1,3 @@
 0001-qtbug-101201-fatal-error-getcurrenkeyboard.patch
+0002-check-ulimit.patch
+0003-fix-gcc13.patch
\ No newline at end of file
diff --git a/extras/packaging/gnu-linux/rules/debian/jami-all.postinst b/extras/packaging/gnu-linux/rules/debian/jami-all.postinst
index 93e1ebece62a0303dcb5fe0583f2a4a0de044e3d..1e9ea9658241dbdee511125ed19fb4943d5f3dac 100755
--- a/extras/packaging/gnu-linux/rules/debian/jami-all.postinst
+++ b/extras/packaging/gnu-linux/rules/debian/jami-all.postinst
@@ -105,6 +105,8 @@ if [ -f /etc/os-release ]; then
         ENDTAG="ubuntu_22.04"
     elif [ "${UBUNTU_CODENAME}" = "kinetic" ] || [ "${ID}_${VERSION_ID}" = "ubuntu_22.10" ]; then
         ENDTAG="ubuntu_22.10"
+    elif [ "${UBUNTU_CODENAME}" = "lunar" ] || [ "${ID}_${VERSION_ID}" = "ubuntu_23.04" ]; then
+        ENDTAG="ubuntu_23.04"
     elif [ "${ID}" = "debian" ] && \
              [ "$(command -v lsb_release)" ] && \
              [ "$(lsb_release -rs)" = "testing" ]; then
diff --git a/extras/packaging/gnu-linux/rules/rpm/jami-libqt.spec b/extras/packaging/gnu-linux/rules/rpm/jami-libqt.spec
index 0486ebf26398fcbb7466ca56399746828713829e..4229a418c84930dfba2124978aee9ae681e2a673 100644
--- a/extras/packaging/gnu-linux/rules/rpm/jami-libqt.spec
+++ b/extras/packaging/gnu-linux/rules/rpm/jami-libqt.spec
@@ -27,6 +27,8 @@ Vendor:        Savoir-faire Linux Inc.
 URL:           https://jami.net/
 Source:        jami-libqt-%{version}.tar.xz
 Patch0:        0001-qtbug-101201-fatal-error-getcurrenkeyboard.patch
+Patch1:        0002-check-ulimit.patch
+Patch2:        0003-fix-gcc13.patch
 
 %global gst 0.10
 %if 0%{?fedora} || 0%{?rhel} > 7
@@ -62,11 +64,16 @@ This package contains Qt libraries for Jami.
 %prep
 %setup -n qt-everywhere-src-%{version}
 %patch0 -p1
+%patch1 -p1
+%patch2 -p1
 
 %build
 echo "Building Qt using %{job_count} parallel jobs"
 # Qt 6.2 (https://wiki.linuxfromscratch.org/blfs/ticket/14729)
 sed -i 's,default=False,default=True,g' qtwebengine/src/3rdparty/chromium/third_party/catapult/tracing/tracing_build/generate_about_tracing_contents.py
+# Gcc 13
+sed -i 's,std::uint32_t,uint32_t,g' qt3d/src/3rdparty/assimp/src/code/AssetLib/FBX/FBXBinaryTokenizer.cpp
+sed -i 's,std::uint32_t,uint32_t,g' qtquick3d/src/3rdparty/assimp/src/code/AssetLib/FBX/FBXBinaryTokenizer.cpp
 # https://bugs.gentoo.org/768261 (Qt 5.15)
 sed -i 's,#include "absl/base/internal/spinlock.h"1,#include "absl/base/internal/spinlock.h"1\n#include <limits>,g' qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc
 sed -i 's,#include <stdint.h>,#include <stdint.h>\n#include <limits>,g' qtwebengine/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.h
@@ -78,6 +85,7 @@ sed -i 's,#include <string.h>,#include <string.h>\n#include <limits>,g' qtbase/s
 cat qtbase/src/corelib/global/qendian.h
 sed -i 's,#include <string.h>,#include <string.h>\n#include <limits>,g' qtbase/src/corelib/global/qfloat16.h
 sed -i 's,#include <QtCore/qbytearray.h>,#include <QtCore/qbytearray.h>\n#include <limits>,g' qtbase/src/corelib/text/qbytearraymatcher.h
+cat qtwebengine/configure.cmake
 # recent gcc version do not like lto from qt
 CXXFLAGS="${CXXFLAGS} -fno-lto" CFLAGS="${CFLAGS} -fno-lto" ./configure \
   -opensource \
diff --git a/extras/packaging/gnu-linux/rules/rpm/patches/0002-check-ulimit.patch b/extras/packaging/gnu-linux/rules/rpm/patches/0002-check-ulimit.patch
new file mode 100644
index 0000000000000000000000000000000000000000..cf1192134057ba2a9992f31b12fad65bb3900bf0
--- /dev/null
+++ b/extras/packaging/gnu-linux/rules/rpm/patches/0002-check-ulimit.patch
@@ -0,0 +1,33 @@
+From 517d0890f9e95c841bea3421f2455651ca0d8070 Mon Sep 17 00:00:00 2001
+From: Alexey Edelev <alexey.edelev@qt.io>
+Date: Wed, 23 Nov 2022 12:40:45 +0100
+Subject: [PATCH] Fix Linux build with CMake versions >= 3.25
+
+The 'LINUX' variable exists in CMake since the version 3.25. This
+variable previously was undefined while preparsing the configure.cmake
+files. Since the CMake script that defines the 'check_for_ulimit'
+function is not included while evaluating configure.cmake first time
+we need to add a stub.
+
+Change-Id: I25bdec4f4a1b6af23174507a8f0f9cbf01f0c398
+Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
+(cherry picked from commit 240e71877865ed07e4c8d5bd4553aa0772c2adf4)
+Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
+---
+
+ qtwebengine/configure.cmake | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/qtwebengine/configure.cmake b/qtwebengine/configure.cmake
+index 015bcd1..d8e7fea 100644
+--- a/qtwebengine/configure.cmake
++++ b/qtwebengine/configure.cmake
+@@ -4,6 +4,8 @@ if(QT_CONFIGURE_RUNNING)
+     endfunction()
+     function(add_check_for_support)
+     endfunction()
++    function(check_for_ulimit)
++    endfunction()
+ else()
+     find_package(Ninja 1.7.2)
+     find_package(Gn ${QT_REPO_MODULE_VERSION} EXACT)
diff --git a/extras/packaging/gnu-linux/rules/rpm/patches/0003-fix-gcc13.patch b/extras/packaging/gnu-linux/rules/rpm/patches/0003-fix-gcc13.patch
new file mode 100644
index 0000000000000000000000000000000000000000..c2a7fc4752fde19a3f549408843ae44b319debbb
--- /dev/null
+++ b/extras/packaging/gnu-linux/rules/rpm/patches/0003-fix-gcc13.patch
@@ -0,0 +1,591 @@
+ qtwebengine/src/3rdparty/chromium/base/debug/profiler.h                                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h                                                | 1 +
+ qtwebengine/src/3rdparty/chromium/base/logging.h                                                          | 2 ++
+ qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc                                             | 2 ++
+ qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h                 | 1 +
+ qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc                       | 1 +
+ qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h                            | 1 +
+ qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h               | 1 +
+ qtwebengine/src/3rdparty/chromium/extensions/common/constants.h                                           | 2 ++
+ qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h                            | 2 ++
+ qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h                                           | 1 +
+ qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h                                           | 1 +
+ qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h                                            | 1 +
+ qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h                                                   | 2 ++
+ qtwebengine/src/3rdparty/chromium/net/base/parse_number.h                                                 | 1 +
+ qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h                 | 1 +
+ qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h                         | 1 +
+ qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h                                          | 1 +
+ qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h               | 6 ++++--
+ qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h     | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h                          | 2 +-
+ qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h                          | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h                               | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h          | 2 ++
+ .../src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h    | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc                         | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h                         | 2 ++
+ qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h                   | 1 +
+ .../3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h    | 2 ++
+ qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp                             | 4 ++++
+ qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h                  | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h                 | 1 +
+ qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h                          | 1 +
+ qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h                                       | 1 +
+ qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h                                          | 2 ++
+ qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h                                                   | 1 +
+ qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h                                                    | 1 +
+ qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h                                    | 3 +++
+ qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h                                | 1 +
+ qtwebengine/src/core/browsing_data_remover_delegate_qt.h                                                  | 2 ++
+ 43 files changed, 61 insertions(+), 3 deletions(-)
+
+diff --git a/qtwebengine/src/3rdparty/chromium/base/debug/profiler.h b/qtwebengine/src/3rdparty/chromium/base/debug/profiler.h
+index 1229e06234..c7ed55e70f 100644
+--- a/qtwebengine/src/3rdparty/chromium/base/debug/profiler.h
++++ b/qtwebengine/src/3rdparty/chromium/base/debug/profiler.h
+@@ -5,6 +5,7 @@
+ #ifndef BASE_DEBUG_PROFILER_H_
+ #define BASE_DEBUG_PROFILER_H_
+
++#include <cstdint>
+ #include <stddef.h>
+
+ #include <string>
+diff --git a/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h b/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h
+index 618e1e3769..bd0faf99ef 100644
+--- a/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h
++++ b/qtwebengine/src/3rdparty/chromium/base/debug/stack_trace.h
+@@ -7,6 +7,7 @@
+
+ #include <stddef.h>
+
++#include <cstdint>
+ #include <iosfwd>
+ #include <string>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/base/logging.h b/qtwebengine/src/3rdparty/chromium/base/logging.h
+index c4db4c92dc..602560db1a 100644
+--- a/qtwebengine/src/3rdparty/chromium/base/logging.h
++++ b/qtwebengine/src/3rdparty/chromium/base/logging.h
+@@ -7,6 +7,8 @@
+
+ #include <stddef.h>
+
++
++#include <cstdint>
+ #include <cassert>
+ #include <cstdint>
+ #include <sstream>
+diff --git a/qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc b/qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc
+index 96f8c3bd7c..c3f087b1a9 100644
+--- a/qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc
++++ b/qtwebengine/src/3rdparty/chromium/cc/trees/target_property.cc
+@@ -6,6 +6,8 @@
+
+ #include "ui/gfx/animation/keyframe/target_property.h"
+
++#include <cstdint>
++
+ namespace cc {
+
+ static_assert(TargetProperty::LAST_TARGET_PROPERTY <
+diff --git a/qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h b/qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h
+index 3896bc6e78..b93843dc16 100644
+--- a/qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h
++++ b/qtwebengine/src/3rdparty/chromium/content/public/browser/browsing_data_remover_delegate.h
+@@ -5,6 +5,7 @@
+ #ifndef CONTENT_PUBLIC_BROWSER_BROWSING_DATA_REMOVER_DELEGATE_H_
+ #define CONTENT_PUBLIC_BROWSER_BROWSING_DATA_REMOVER_DELEGATE_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+ #include "base/callback_forward.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc b/qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc
+index 213b6301c0..9332e37e6f 100644
+--- a/qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc
++++ b/qtwebengine/src/3rdparty/chromium/device/base/synchronization/one_writer_seqlock.cc
+@@ -3,6 +3,7 @@
+ // found in the LICENSE file.
+
+ #include "device/base/synchronization/one_writer_seqlock.h"
++#include <cstdint>
+
+ namespace device {
+
+diff --git a/qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h b/qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h
+index 0c27ae7105..b64f82f754 100644
+--- a/qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h
++++ b/qtwebengine/src/3rdparty/chromium/device/bluetooth/public/cpp/bluetooth_uuid.h
+@@ -5,6 +5,7 @@
+ #ifndef DEVICE_BLUETOOTH_PUBLIC_CPP_BLUETOOTH_UUID_H_
+ #define DEVICE_BLUETOOTH_PUBLIC_CPP_BLUETOOTH_UUID_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h b/qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h
+index afcaf9e4d1..5401e893a3 100644
+--- a/qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h
++++ b/qtwebengine/src/3rdparty/chromium/device/fido/fido_transport_protocol.h
+@@ -5,6 +5,7 @@
+ #ifndef DEVICE_FIDO_FIDO_TRANSPORT_PROTOCOL_H_
+ #define DEVICE_FIDO_FIDO_TRANSPORT_PROTOCOL_H_
+
++#include <cstdint>
+ #include <string>
+
+ #include "base/component_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h b/qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h
+index 9d2858177e..d263f67032 100644
+--- a/qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h
++++ b/qtwebengine/src/3rdparty/chromium/extensions/browser/api/audio/audio_device_id_calculator.h
+@@ -5,6 +5,7 @@
+ #ifndef EXTENSIONS_BROWSER_API_AUDIO_AUDIO_DEVICE_ID_CALCULATOR_H_
+ #define EXTENSIONS_BROWSER_API_AUDIO_AUDIO_DEVICE_ID_CALCULATOR_H_
+
++#include <cstdint>
+ #include <map>
+ #include <string>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/extensions/common/constants.h b/qtwebengine/src/3rdparty/chromium/extensions/common/constants.h
+index 782a171adf..867de7c240 100644
+--- a/qtwebengine/src/3rdparty/chromium/extensions/common/constants.h
++++ b/qtwebengine/src/3rdparty/chromium/extensions/common/constants.h
+@@ -11,6 +11,8 @@
+ #include "components/services/app_service/public/mojom/types.mojom.h"
+ #include "ui/base/layout.h"
+
++#include <cstdint>
++
+ namespace extensions {
+
+ // Scheme we serve extension content from.
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h b/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h
+index 83615b30c8..8fa9fb1f6d 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/webgpu_cmd_enums.h
+@@ -5,6 +5,8 @@
+ #ifndef GPU_COMMAND_BUFFER_COMMON_WEBGPU_CMD_ENUMS_H_
+ #define GPU_COMMAND_BUFFER_COMMON_WEBGPU_CMD_ENUMS_H_
+
++#include <cstdint>
++
+ namespace gpu {
+ namespace webgpu {
+
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h b/qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h
+index e33874ba3b..824a207a22 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/config/device_perf_info.h
+@@ -5,6 +5,7 @@
+ #ifndef GPU_CONFIG_DEVICE_PERF_INFO_H_
+ #define GPU_CONFIG_DEVICE_PERF_INFO_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h
+index 027f1a5af3..70759b2ae4 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_feature_info.h
+@@ -5,6 +5,7 @@
+ #ifndef GPU_CONFIG_GPU_FEATURE_INFO_H_
+ #define GPU_CONFIG_GPU_FEATURE_INFO_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h
+index f4077c21d7..d0420d5631 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_preferences.h
+@@ -5,6 +5,7 @@
+ #ifndef GPU_CONFIG_GPU_PREFERENCES_H_
+ #define GPU_CONFIG_GPU_PREFERENCES_H_
+
++#include <cstdint>
+ #include <stddef.h>
+ #include <string>
+ #include <vector>
+diff --git a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h
+index fa2450f3db..1125d3da53 100644
+--- a/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h
++++ b/qtwebengine/src/3rdparty/chromium/gpu/config/gpu_util.h
+@@ -5,6 +5,8 @@
+ #ifndef GPU_CONFIG_GPU_UTIL_H_
+ #define GPU_CONFIG_GPU_UTIL_H_
+
++#include <cstdint>
++
+ #include "build/build_config.h"
+ #include "gpu/config/gpu_feature_info.h"
+ #include "gpu/gpu_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/net/base/parse_number.h b/qtwebengine/src/3rdparty/chromium/net/base/parse_number.h
+index 0b4cfc1f8e..6f197966e2 100644
+--- a/qtwebengine/src/3rdparty/chromium/net/base/parse_number.h
++++ b/qtwebengine/src/3rdparty/chromium/net/base/parse_number.h
+@@ -5,6 +5,7 @@
+ #ifndef NET_BASE_PARSE_NUMBER_H_
+ #define NET_BASE_PARSE_NUMBER_H_
+
++#include <cstdint>
+ #include "base/compiler_specific.h"
+ #include "base/strings/string_piece.h"
+ #include "net/base/net_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h b/qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h
+index 3247c6269f..76efd3f01d 100644
+--- a/qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h
++++ b/qtwebengine/src/3rdparty/chromium/net/cookies/cookie_inclusion_status.h
+@@ -5,6 +5,7 @@
+ #ifndef NET_COOKIES_COOKIE_INCLUSION_STATUS_H_
+ #define NET_COOKIES_COOKIE_INCLUSION_STATUS_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h b/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h
+index 9a14bc4649..8302073d8f 100644
+--- a/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h
++++ b/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/crypto/quic_hkdf.h
+@@ -6,6 +6,7 @@
+ #define QUICHE_QUIC_CORE_CRYPTO_QUIC_HKDF_H_
+
+ #include <vector>
++#include <cstdint>
+
+ #include "absl/strings/string_view.h"
+ #include "quic/platform/api/quic_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h b/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h
+index c77219eb32..d3aa92be05 100644
+--- a/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h
++++ b/qtwebengine/src/3rdparty/chromium/net/third_party/quiche/src/quic/core/quic_tag.h
+@@ -8,6 +8,7 @@
+ #include <map>
+ #include <string>
+ #include <vector>
++#include <cstdint>
+
+ #include "absl/strings/string_view.h"
+ #include "quic/platform/api/quic_export.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h b/qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h
+index 254398e622..8f03f9be85 100644
+--- a/qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h
++++ b/qtwebengine/src/3rdparty/chromium/pdf/document_attachment_info.h
+@@ -5,6 +5,7 @@
+ #ifndef PDF_DOCUMENT_ATTACHMENT_INFO_H_
+ #define PDF_DOCUMENT_ATTACHMENT_INFO_H_
+
++#include <cstdint>
+ #include "base/strings/string16.h"
+
+ namespace chrome_pdf {
+diff --git a/qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h b/qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h
+index ac0b31a75c..5d1c421d03 100644
+--- a/qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h
++++ b/qtwebengine/src/3rdparty/chromium/ppapi/utility/completion_callback_factory_thread_traits.h
+@@ -38,6 +38,10 @@ namespace pp {
+ /// As a further optimization, we can add support for this later.
+ class ThreadSafeThreadTraits {
+  public:
++
++  typedef pp::Lock Lock;
++  typedef pp::AutoLock AutoLock;
++
+   class RefCount {
+    public:
+     /// Default constructor. In debug mode, this checks that the object is being
+@@ -67,8 +71,6 @@ class ThreadSafeThreadTraits {
+     int32_t ref_;
+   };
+
+-  typedef pp::Lock Lock;
+-  typedef pp::AutoLock AutoLock;
+ };
+
+ /// The non-thread-safe version of thread traits. Using this class as the
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h b/qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h
+index a9b9e137de..562327f1c4 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h
+@@ -18,6 +18,7 @@
+
+ #include <limits.h>
+
++#include <cstdint>
+ #include <cstddef>
+ #include <cstring>
+ #include <ostream>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h b/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h
+index e9b79943dd..18428a5946 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderLang.h
+@@ -7,7 +7,7 @@
+ #define GLSLANG_SHADERLANG_H_
+
+ #include <stddef.h>
+-
++#include <cstdint>
+ #include "KHR/khrplatform.h"
+
+ #include <array>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h b/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h
+index a8f3bb28c6..bd9e105835 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/angle/include/GLSLANG/ShaderVars.h
+@@ -14,6 +14,7 @@
+ #include <array>
+ #include <string>
+ #include <vector>
++#include <cstdint>
+
+ // This type is defined here to simplify ANGLE's integration with glslang for SPIRv.
+ using ShCompileOptions = uint64_t;
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h b/qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h
+index d132a72e8c..f49ba32d49 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/angle/src/common/angleutils.h
+@@ -22,6 +22,7 @@
+ #include <climits>
+ #include <cstdarg>
+ #include <cstddef>
++#include <cstdint>
+ #include <set>
+ #include <sstream>
+ #include <string>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h b/qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h
+index 14c5548766..43c9a8d6a5 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/platform/graphics/dark_mode_types.h
+@@ -5,6 +5,8 @@
+ #ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_GRAPHICS_DARK_MODE_TYPES_H_
+ #define THIRD_PARTY_BLINK_RENDERER_PLATFORM_GRAPHICS_DARK_MODE_TYPES_H_
+
++#include <cstdint>
++
+ namespace blink {
+
+ enum class DarkModeResult : uint8_t {
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h b/qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h
+index c7e4f2b378..f30ce91b36 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/minidump_descriptor.h
+@@ -34,6 +34,7 @@
+ #include <sys/types.h>
+
+ #include <string>
++#include <cstdint>
+
+ #include "client/linux/handler/microdump_extra_info.h"
+ #include "common/using_std_string.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc b/qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc
+index a3099e15db..2e6f0eea70 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc
++++ b/qtwebengine/src/3rdparty/chromium/third_party/libgav1/src/src/utils/threadpool.cc
+@@ -30,6 +30,7 @@
+ #include <cstddef>
+ #include <cstdint>
+ #include <cstring>
++#include <cstdio>
+ #include <new>
+ #include <utility>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h b/qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h
+index d2731dac7a..46bc87ef92 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/pdfium/constants/annotation_flags.h
+@@ -5,6 +5,8 @@
+ #ifndef CONSTANTS_ANNOTATION_FLAGS_H_
+ #define CONSTANTS_ANNOTATION_FLAGS_H_
+
++#include <cstdint>
++
+ namespace pdfium {
+ namespace annotation_flags {
+
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h b/qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h
+index 1b4c53815b..472042fabc 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/uuid.h
+@@ -18,6 +18,7 @@
+ #define INCLUDE_PERFETTO_EXT_BASE_UUID_H_
+
+ #include <array>
++#include <cstdint>
+ #include <string>
+
+ #include "perfetto/ext/base/optional.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h b/qtwebengine/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h
+index dda2f85759..158b5e8baa 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/importers/proto/proto_importer_module.h
+@@ -21,6 +21,8 @@
+ #include "perfetto/trace_processor/status.h"
+ #include "src/trace_processor/trace_blob_view.h"
+
++#include <cstdint>
++
+ namespace perfetto {
+
+ namespace protos {
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp b/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp
+index 7260365b2c..503ed08ff6 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp
++++ b/qtwebengine/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp
+@@ -8,6 +8,10 @@
+
+ #include "include/utils/SkParse.h"
+
++#include <string.h>
++#include <algorithm>
++#include <iterator>
++
+ static constexpr const char* gColorNames[] = {
+     "aliceblue",
+     "antiquewhite",
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h b/qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h
+index 917e369c6d..0795b1d683 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/vulkan_memory_allocator/src/vk_mem_alloc.h
+@@ -3844,6 +3844,7 @@ VMA_CALL_PRE void VMA_CALL_POST vmaDestroyImage(
+ #ifdef VMA_IMPLEMENTATION
+ #undef VMA_IMPLEMENTATION
+
++#include <cstdio>
+ #include <cstdint>
+ #include <cstdlib>
+ #include <cstring>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h
+index b89f154072..8ebf6a42c3 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/call/rtp_demuxer.h
+@@ -11,6 +11,7 @@
+ #ifndef CALL_RTP_DEMUXER_H_
+ #define CALL_RTP_DEMUXER_H_
+
++#include <cstdint>
+ #include <map>
+ #include <set>
+ #include <string>
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h
+index 7a936f23e7..21951a1d24 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h
++++ b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/third_party/base64/base64.h
+@@ -12,6 +12,7 @@
+ #ifndef RTC_BASE_THIRD_PARTY_BASE64_BASE64_H_
+ #define RTC_BASE_THIRD_PARTY_BASE64_BASE64_H_
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h b/qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h
+index 5e4f410d12..722e73d053 100644
+--- a/qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h
++++ b/qtwebengine/src/3rdparty/chromium/ui/base/ime/linux/linux_input_method_context.h
+@@ -5,6 +5,7 @@
+ #ifndef UI_BASE_IME_LINUX_LINUX_INPUT_METHOD_CONTEXT_H_
+ #define UI_BASE_IME_LINUX_LINUX_INPUT_METHOD_CONTEXT_H_
+
++#include <cstdint>
+ #include "base/component_export.h"
+ #include "base/strings/string16.h"
+ #include "ui/base/ime/text_input_type.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h b/qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h
+index 668f07489e..8357414e83 100644
+--- a/qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h
++++ b/qtwebengine/src/3rdparty/chromium/ui/events/gesture_event_details.h
+@@ -5,6 +5,7 @@
+ #ifndef UI_EVENTS_GESTURE_DETECTION_GESTURE_EVENT_DETAILS_H_
+ #define UI_EVENTS_GESTURE_DETECTION_GESTURE_EVENT_DETAILS_H_
+
++#include <cstdint>
+ #include <string.h>
+
+ #include "base/check_op.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h b/qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h
+index 7ff15f0fc5..136cebc09e 100644
+--- a/qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h
++++ b/qtwebengine/src/3rdparty/chromium/ui/events/types/scroll_types.h
+@@ -5,6 +5,8 @@
+ #ifndef UI_EVENTS_TYPES_SCROLL_TYPES_H_
+ #define UI_EVENTS_TYPES_SCROLL_TYPES_H_
+
++#include <cstdint>
++
+ namespace ui {
+
+ enum class ScrollGranularity : uint8_t {
+diff --git a/qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h b/qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h
+index fe39f98822..dbe130581c 100644
+--- a/qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h
++++ b/qtwebengine/src/3rdparty/chromium/v8/src/base/logging.h
+@@ -5,6 +5,7 @@
+ #ifndef V8_BASE_LOGGING_H_
+ #define V8_BASE_LOGGING_H_
+
++#include <cstdint>
+ #include <cstring>
+ #include <sstream>
+ #include <string>
+diff --git a/qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h b/qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h
+index 9079d15662..770f2c8b6e 100644
+--- a/qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h
++++ b/qtwebengine/src/3rdparty/chromium/v8/src/base/macros.h
+@@ -5,6 +5,7 @@
+ #ifndef V8_BASE_MACROS_H_
+ #define V8_BASE_MACROS_H_
+
++#include <cstdint>
+ #include <limits>
+ #include <type_traits>
+
+diff --git a/qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h b/qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h
+index 03af2cc5e2..07774cd611 100644
+--- a/qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h
++++ b/qtwebengine/src/3rdparty/chromium/v8/src/codegen/code-stub-assembler.h
+@@ -15,8 +15,11 @@
+ #include "src/compiler/code-assembler.h"
+ #include "src/objects/arguments.h"
+ #include "src/objects/bigint.h"
++#include "src/objects/cell.h"
+ #include "src/objects/feedback-vector.h"
+ #include "src/objects/js-function.h"
++#include "src/objects/js-generator.h"
++#include "src/objects/js-promise.h"
+ #include "src/objects/objects.h"
+ #include "src/objects/promise.h"
+ #include "src/objects/shared-function-info.h"
+diff --git a/qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h b/qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h
+index c1d69c18f0..eb33c6816a 100644
+--- a/qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h
++++ b/qtwebengine/src/3rdparty/chromium/v8/src/inspector/v8-string-conversions.h
+@@ -5,6 +5,7 @@
+ #ifndef V8_INSPECTOR_V8_STRING_CONVERSIONS_H_
+ #define V8_INSPECTOR_V8_STRING_CONVERSIONS_H_
+
++#include <cstdint>
+ #include <string>
+
+ // Conversion routines between UT8 and UTF16, used by string-16.{h,cc}. You may
+diff --git a/qtwebengine/src/core/browsing_data_remover_delegate_qt.h b/qtwebengine/src/core/browsing_data_remover_delegate_qt.h
+index a10409f397..b9f5e59d8a 100644
+--- a/qtwebengine/src/core/browsing_data_remover_delegate_qt.h
++++ b/qtwebengine/src/core/browsing_data_remover_delegate_qt.h
+@@ -42,6 +42,8 @@
+
+ #include "content/public/browser/browsing_data_remover_delegate.h"
+
++#include <cstdint>
++
+ namespace QtWebEngineCore {
+
+ class BrowsingDataRemoverDelegateQt : public content::BrowsingDataRemoverDelegate {
diff --git a/extras/packaging/gnu-linux/scripts/build-package-debian.sh b/extras/packaging/gnu-linux/scripts/build-package-debian.sh
index 3a42f6b94f2cd6a6a658853e60d77046ad7a5ae8..36084b53e448a8947a6be5d691cb833f8794d47d 100755
--- a/extras/packaging/gnu-linux/scripts/build-package-debian.sh
+++ b/extras/packaging/gnu-linux/scripts/build-package-debian.sh
@@ -84,7 +84,7 @@ ${QT_MAJOR}.${QT_MINOR}/${qt_version}/single
         cd "libqt-jami-${qt_version}"
 
         # Extract the debian folder
-        tar xf "/src/$RELEASE_TARBALL_FILENAME" client-qt/extras/packaging/gnu-linux/rules/debian-qt \
+        tar xf "/src/$RELEASE_TARBALL_FILENAME" --wildcards 'jami-*/extras/packaging/gnu-linux/rules/debian-qt' \
             --strip-components=5 && mv debian-qt debian
 
         # Create the changelog file.
diff --git a/extras/packaging/gnu-linux/scripts/build-package-rpm.sh b/extras/packaging/gnu-linux/scripts/build-package-rpm.sh
index 5aae11830e9a9eeade27a62bf217092507410a45..df5f7d04cf0091db66b7723c49954db19f362b27 100755
--- a/extras/packaging/gnu-linux/scripts/build-package-rpm.sh
+++ b/extras/packaging/gnu-linux/scripts/build-package-rpm.sh
@@ -36,7 +36,7 @@ rpmdev-setuptree
 # Copy the source tarball.
 cp --reflink=auto "/src/$RELEASE_TARBALL_FILENAME" /root/rpmbuild/SOURCES
 
-cp patches/0001-qtbug-101201-fatal-error-getcurrenkeyboard.patch /root/rpmbuild/SOURCES/
+cp patches/*.patch /root/rpmbuild/SOURCES/
 
 QT_JAMI_PREFIX="/usr/lib64/qt-jami"
 PATH="${QT_JAMI_PREFIX}/bin:${PATH}"
@@ -115,6 +115,8 @@ if [ ! -f "${RPM_PATH}" ]; then
             cp /root/rpmbuild/RPMS/x86_64/jami-libqt-$QT_MAJOR_MINOR_PATCH-*.fc36.x86_64.rpm "${RPM_PATH}"
         elif [[ "${DISTRIBUTION}" == "fedora_37" ]]; then
             cp /root/rpmbuild/RPMS/x86_64/jami-libqt-$QT_MAJOR_MINOR_PATCH-*.fc37.x86_64.rpm "${RPM_PATH}"
+        elif [[ "${DISTRIBUTION}" == "fedora_38" ]]; then
+            cp /root/rpmbuild/RPMS/x86_64/jami-libqt-$QT_MAJOR_MINOR_PATCH-*.fc38.x86_64.rpm "${RPM_PATH}"
         else
             cp /root/rpmbuild/RPMS/x86_64/jami-libqt-*.rpm "${RPM_PATH}"
         fi