Skip to content
Snippets Groups Projects
Commit ef6a9516 authored by Luis Guzmán's avatar Luis Guzmán
Browse files

ring: add patches for 20230206.0~ds2

parent 51e8c479
No related branches found
No related tags found
1 merge request!1032ring: add patches for 20230206.0~ds2
Pipeline #913 passed
From 94d4869554ebf9bb23cf0d54cdf7693c2ce741d6 Mon Sep 17 00:00:00 2001
From: Amin Bandali <bandali@gnu.org>
Date: Sat, 25 Feb 2023 12:23:01 -0500
Subject: [PATCH] Build without Qt WebEngine on all architectures
---
debian/control | 8 +-------
debian/copyright | 11 +++++++++++
debian/rules | 11 +----------
debian/source/lintian-overrides | 3 ---
4 files changed, 13 insertions(+), 20 deletions(-)
#diff --git a/debian/control b/debian/control
#index dda52abc..9d8b2f0f 100644
#--- a/debian/control
#+++ b/debian/control
@@ -32,8 +32,6 @@
qml6-module-qtquick-shapes,
qml6-module-qtquick-templates,
qml6-module-qtquick-window,
- qml6-module-qtwebengine [amd64 arm64 armhf i386],
- qml6-module-qtwebchannel [amd64 arm64 armhf i386],
qt6-base-dev,
qt6-declarative-dev,
qt6-l10n-tools,
@@ -41,8 +39,6 @@
qt6-positioning-dev,
qt6-tools-dev,
qt6-tools-dev-tools,
- qt6-webengine-dev [amd64 arm64 armhf i386],
- qt6-webengine-dev-tools [amd64 arm64 armhf i386],
# daemon
libdbus-1-dev,
libdbus-c++-dev,
@@ -115,9 +111,7 @@
qml6-module-qtquick-layouts,
qml6-module-qtquick-shapes,
qml6-module-qtquick-templates,
- qml6-module-qtquick-window,
- qml6-module-qtwebengine [amd64 arm64 armhf i386],
- qml6-module-qtwebchannel [amd64 arm64 armhf i386]
+ qml6-module-qtquick-window
Provides: jami-qt
Description: Secure and distributed voice, video, and chat platform - desktop client
Jami is an end-to-end encrypted secure and distributed voice, video,
diff --git a/debian/copyright b/debian/copyright
index 59cca73f..1ac996ad 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -30,6 +30,17 @@ Files-Excluded: daemon/contrib/tarballs/argon2*
daemon/contrib/tarballs/x264*
daemon/contrib/tarballs/yaml-cpp*
daemon/contrib/tarballs/zlib*
+ src/app/webengine/*
+ src/app/previewengine.cpp
+ src/libclient/web-chatview/*
+ src/libclient/webresources.qrc
+Comment: Reasons for above exclusions:
+ The daemon/contrib/tarballs exclusions are for dependencies bundled
+ in release tarballs by upstream that are already packaged in Debian,
+ with the exception of pjproject which we keep (more details below).
+ The web-related exclusions are for omitting web-related files, some
+ of which minified JavaScript, since we build without Qt WebEngine,
+ and thus do not need those files.
Files: *
diff --git a/debian/rules b/debian/rules
index 08ae06aa..41170fc2 100755
--- a/debian/rules
+++ b/debian/rules
@@ -19,13 +19,6 @@ ifeq ($(NO_CPUS),0)
NO_CPUS=1
endif
-# Build with Qt WebEngine on supported arches
-ifneq (,$(filter $(DEB_HOST_ARCH), amd64 arm64 armhf i386))
-webengine := true
-else
-webengine := false
-endif
-
%:
dh $@ --without autoreconf
@@ -88,17 +81,15 @@ endif
--disable-shared
# Qt client configure
-ifeq (,$(filter $(DEB_HOST_ARCH), amd64 arm64 armhf i386))
# Stopgap workaround to disable building with Qt WebEngine
sed -i 's/set(WITH_WEBENGINE true)/#&/' CMakeLists.txt
-endif
mkdir build
cd build && \
cmake \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DWITH_DAEMON_SUBMODULE=true \
- -DWITH_WEBENGINE=$(webengine) \
+ -DWITH_WEBENGINE=false \
..
dh_auto_configure
diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides
index 30d220df..c699956a 100644
--- a/debian/source/lintian-overrides
+++ b/debian/source/lintian-overrides
@@ -1,4 +1 @@
-# The full commented source is there.
-source-is-missing [src/libclient/web-chatview/linkify.js]
-source-is-missing [src/libclient/web-chatview/jed.js]
source-is-missing [3rdparty/SortFilterProxyModel/docs/*.html]
--
GitLab
From 6f4d2dc3e3172290231b39e87b547fc2bbb92c11 Mon Sep 17 00:00:00 2001
From: Amin Bandali <bandali@gnu.org>
Date: Sat, 25 Feb 2023 12:40:53 -0500
Subject: [PATCH] Use the right Debian Source (ds) number in orig tarball name
---
debian/rules | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/debian/rules b/debian/rules
index 41170fc2..f414d029 100755
--- a/debian/rules
+++ b/debian/rules
@@ -135,6 +135,8 @@ override_dh_auto_install:
tmp_dir := $(shell mktemp -d)
version := $(shell dpkg-parsechangelog -ldebian/changelog | perl -ne \
'print $$1 if m{^Version:\s+(?:\d+:)?(\d.*)(?:\~ds.+)(?:\-\d+.*)};')
+ds := $(shell dpkg-parsechangelog -ldebian/changelog | perl -ne \
+ 'print $$1 if m{^Version:\s+(?:\d+:)?(?:\d.*)(\~ds.+)(?:\-\d+.*)};')
pj := $(tmp_dir)/jami-*/daemon/contrib/tarballs-unpacked/pjproject-*/pjproject-*
# Work around dak not liking files with timestamps too far in the past
@@ -194,7 +196,7 @@ get-orig-source:
# Create the new tarball
cd $(tmp_dir) && \
tar -czf \
- $(CURDIR)/../ring_$(version)~ds1.orig.tar.gz \
+ $(CURDIR)/../ring_$(version)$(ds).orig.tar.gz \
jami-*
# Remove the temporary directory
--
GitLab
From 20ae9de49089f52d7a8988a7aa18524f4b6637b6 Mon Sep 17 00:00:00 2001
From: Amin Bandali <bandali@gnu.org>
Date: Sat, 25 Feb 2023 14:52:30 -0500
Subject: [PATCH] Add patch to change two CMake variables into proper options
---
debian/patches/1010-cmake-options.patch | 80 +++++++++++++++++++++++++
debian/patches/series | 1 +
2 files changed, 81 insertions(+)
create mode 100644 debian/patches/1010-cmake-options.patch
diff --git a/debian/patches/1010-cmake-options.patch b/debian/patches/1010-cmake-options.patch
new file mode 100644
index 00000000..4640e58c
--- /dev/null
+++ b/debian/patches/1010-cmake-options.patch
@@ -0,0 +1,80 @@
+From a6367d50826811caf7cf315f33e7d6cde9677911 Mon Sep 17 00:00:00 2001
+From: Amin Bandali <amin.bandali@savoirfairelinux.com>
+Date: Sat, 25 Feb 2023 14:42:02 -0500
+Subject: [PATCH] cmake: Change two variables into proper options.
+Forwarded: no
+Last-Update: 2023-02-25
+
+Make WITH_DAEMON_SUBMODULE and WITH_WEBENGINE into proper options.
+Also, pass src/libclient/webresource.qrc to qt_add_executable only
+if WITH_WEBENGINE.
+---
+ CMakeLists.txt | 22 +++++++++-------------
+ 1 file changed, 9 insertions(+), 13 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d4e24da0..fc023d96 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -38,16 +38,16 @@ set(CMAKE_AUTORCC ON)
+ set(CMAKE_AUTOUIC ON)
+ set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
++option(WITH_DAEMON_SUBMODULE "Build with the daemon submodule" OFF)
++option(WITH_WEBENGINE "Build with Qt WebEngine" ON)
++
+ # Main project directories:
+
+ # jami-daemon
+-if(NOT DEFINED WITH_DAEMON_SUBMODULE)
+- set(WITH_DAEMON_SUBMODULE false)
+- # daemon
+- set(DAEMON_DIR ${PROJECT_SOURCE_DIR}/../daemon)
+-else()
+- # daemon
++if(WITH_DAEMON_SUBMODULE)
+ set(DAEMON_DIR ${PROJECT_SOURCE_DIR}/daemon)
++else()
++ set(DAEMON_DIR ${PROJECT_SOURCE_DIR}/../daemon)
+ endif()
+ # src
+ set(LIBCLIENT_SRC_DIR ${PROJECT_SOURCE_DIR}/src/libclient)
+@@ -96,17 +96,12 @@ set(QT_MODULES
+ Widgets
+ Positioning)
+
+-if(NOT DEFINED WITH_WEBENGINE)
+- set(WITH_WEBENGINE true)
+-endif()
+-
+ if(WITH_WEBENGINE)
+ list(APPEND QT_MODULES
+ WebEngineCore
+ WebEngineQuick
+ WebChannel
+- WebEngineWidgets
+- )
++ WebEngineWidgets)
+ endif()
+
+ set(CMAKE_CXX_FLAGS
+@@ -286,6 +281,7 @@ set(COMMON_HEADERS
+ if(WITH_WEBENGINE)
+ list(APPEND COMMON_SOURCES
+ ${APP_SRC_DIR}/previewengine.cpp)
++ set(QML_WEBRESOURCES ${LIBCLIENT_SRC_DIR}/webresource.qrc)
+ add_definitions(-DWITH_WEBENGINE)
+ else()
+ list(APPEND COMMON_SOURCES
+@@ -492,7 +488,7 @@ qt_add_executable(
+ ${COMMON_SOURCES}
+ ${QML_RESOURCES}
+ ${QML_RESOURCES_QML}
+- ${LIBCLIENT_SRC_DIR}/webresource.qrc
++ ${QML_WEBRESOURCES}
+ ${SFPM_OBJECTS})
+
+ foreach(MODULE ${QT_MODULES})
+--
+2.39.2
+
diff --git a/debian/patches/series b/debian/patches/series
index ea657633..42ab30cd 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,4 +1,5 @@
1000-appstream-categories.patch
+1010-cmake-options.patch
2000-jsoncpp-rename.patch
2010-dont-build-gnutls.patch
2020-dont-build-msgpack.patch
--
GitLab
From a19b53082f27c8af402d5284694beb7b6bc8bdfc Mon Sep 17 00:00:00 2001
From: Amin Bandali <bandali@gnu.org>
Date: Sun, 26 Feb 2023 01:00:03 -0500
Subject: [PATCH] Use dh_auto_* tools for the client
Also the stopgap sed workaround for building without Qt WebEngine is
no longer necessary. The issue was calling out to dh_auto_configure
but without the right flags, which would then overwrite/interfere with
the flags specified in the earlier manual call to cmake.
---
debian/rules | 36 ++++++++++++------------------------
1 file changed, 12 insertions(+), 24 deletions(-)
diff --git a/debian/rules b/debian/rules
index f414d029..03522721 100755
--- a/debian/rules
+++ b/debian/rules
@@ -81,18 +81,9 @@ endif
--disable-shared
# Qt client configure
-# Stopgap workaround to disable building with Qt WebEngine
- sed -i 's/set(WITH_WEBENGINE true)/#&/' CMakeLists.txt
- mkdir build
- cd build && \
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release \
- -DWITH_DAEMON_SUBMODULE=true \
- -DWITH_WEBENGINE=false \
- ..
-
- dh_auto_configure
+ dh_auto_configure -- \
+ -DWITH_DAEMON_SUBMODULE=true \
+ -DWITH_WEBENGINE=false
override_dh_auto_build:
# Daemon build
@@ -100,7 +91,7 @@ override_dh_auto_build:
pod2man daemon/man/jamid.pod > daemon/jamid.1
# Qt client build
- make -C build -j$(NO_CPUS) V=1
+ dh_auto_build
override_dh_auto_clean:
# Generated contrib tarballs
@@ -113,9 +104,7 @@ override_dh_auto_clean:
rm -rfv daemon/jamid.1
# Qt client clean
- [ -f build/Makefile ] && \
- make -C build clean || true
- rm -rfv build
+ dh_auto_clean
override_dh_auto_install:
# Daemon install
@@ -129,8 +118,13 @@ override_dh_auto_install:
rm -rfv $(CURDIR)/debian/jami/usr/lib/cmake
# Qt client install
- cd build && \
- make DESTDIR=$(CURDIR)/debian/jami install
+ dh_auto_install --destdir=$(CURDIR)/debian/jami
+
+# Work around dak not liking files with timestamps too far in the past
+execute_before_dh_strip_nondeterminism:
+ find $(CURDIR)/debian/jami/ ! -newermt "jan 01, 2000" \
+ -exec touch --date="@$(SOURCE_DATE_EPOCH)" {} +
+
tmp_dir := $(shell mktemp -d)
version := $(shell dpkg-parsechangelog -ldebian/changelog | perl -ne \
@@ -139,12 +133,6 @@ ds := $(shell dpkg-parsechangelog -ldebian/changelog | perl -ne \
'print $$1 if m{^Version:\s+(?:\d+:)?(?:\d.*)(\~ds.+)(?:\-\d+.*)};')
pj := $(tmp_dir)/jami-*/daemon/contrib/tarballs-unpacked/pjproject-*/pjproject-*
-# Work around dak not liking files with timestamps too far in the past
-execute_before_dh_strip_nondeterminism:
- find $(CURDIR)/debian/jami/ ! -newermt "jan 01, 2000" \
- -exec touch --date="@$(SOURCE_DATE_EPOCH)" {} +
-
-
# Repack the tarball with contrib tarballs unpacked
get-orig-source:
# Download jami tarball
--
GitLab
From 174ec6666308bcf1e8083ba37bde653941dd8ebd Mon Sep 17 00:00:00 2001
From: Amin Bandali <bandali@gnu.org>
Date: Sat, 25 Feb 2023 14:57:23 -0500
Subject: [PATCH] * debian/jami.lintian-overrides: Drop vestigial file.
This was previously added likely because the jami package used to ship
a libringclient.a static library for use by the client, but after an
upstream refactoring merging the Jami libclient sources into
jami-client-qt.git, that is no longer needed.
---
debian/jami.lintian-overrides | 3 ---
1 file changed, 3 deletions(-)
delete mode 100644 debian/jami.lintian-overrides
diff --git a/debian/jami.lintian-overrides b/debian/jami.lintian-overrides
deleted file mode 100644
index 8ab14fe9..00000000
--- a/debian/jami.lintian-overrides
+++ /dev/null
@@ -1,3 +0,0 @@
-# We are shipping a .so, but this isn't a library package
-package-name-doesnt-match-sonames
-no-symbols-control-file
--
GitLab
......@@ -19,13 +19,10 @@
EXTERNAL='deb-src http://ftp.debian.org/debian unstable main'
REPOKEY=04EE7237B7D453EC
VERSION=3
VERSION=4
. ./config
# Disbale ppc64el arch
sed -i "/Architecture:/s|any|amd64 armhf arm64|g" debian/control
# Add trisquel aramo's dependencies
sed -i "/# Qt client/i # trisquel's aramo dependencies" debian/control
for i in "libgl1-mesa-dev" \
......@@ -66,6 +63,6 @@ echo "Applying $patch"
patch -Np1 < $patch
done
changelog "Backport ring/jammi to aramo from debian testing"
changelog "Backport ring/jammi to aramo from debian: 20230206.0~ds2"
compile
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment