[arch-commits] Commit in telegram-desktop/repos (11 files)

Antonio Rojas arojas at archlinux.org
Thu Dec 12 12:54:28 UTC 2019


    Date: Thursday, December 12, 2019 @ 12:54:27
  Author: arojas
Revision: 537376

archrelease: copy trunk to community-staging-x86_64

Added:
  telegram-desktop/repos/community-staging-x86_64/
  telegram-desktop/repos/community-staging-x86_64/CMakeLists.inj
    (from rev 537375, telegram-desktop/trunk/CMakeLists.inj)
  telegram-desktop/repos/community-staging-x86_64/PKGBUILD
    (from rev 537375, telegram-desktop/trunk/PKGBUILD)
  telegram-desktop/repos/community-staging-x86_64/Revert-Change-some-private-header-includes.patch
    (from rev 537375, telegram-desktop/trunk/Revert-Change-some-private-header-includes.patch)
  telegram-desktop/repos/community-staging-x86_64/Revert-Disable-DemiBold-fallback-for-Semibold.patch
    (from rev 537375, telegram-desktop/trunk/Revert-Disable-DemiBold-fallback-for-Semibold.patch)
  telegram-desktop/repos/community-staging-x86_64/Use-system-wide-font.patch
    (from rev 537375, telegram-desktop/trunk/Use-system-wide-font.patch)
  telegram-desktop/repos/community-staging-x86_64/libtgvoip.patch
    (from rev 537375, telegram-desktop/trunk/libtgvoip.patch)
  telegram-desktop/repos/community-staging-x86_64/no-gtk2.patch
    (from rev 537375, telegram-desktop/trunk/no-gtk2.patch)
  telegram-desktop/repos/community-staging-x86_64/tdesktop.patch
    (from rev 537375, telegram-desktop/trunk/tdesktop.patch)
  telegram-desktop/repos/community-staging-x86_64/tdesktop_lottie_animation_qtdebug.patch
    (from rev 537375, telegram-desktop/trunk/tdesktop_lottie_animation_qtdebug.patch)
  telegram-desktop/repos/community-staging-x86_64/tg.protocol
    (from rev 537375, telegram-desktop/trunk/tg.protocol)

-----------------------------------------------------+
 CMakeLists.inj                                      |   20 
 PKGBUILD                                            |  130 +++++
 Revert-Change-some-private-header-includes.patch    |   66 ++
 Revert-Disable-DemiBold-fallback-for-Semibold.patch |   30 +
 Use-system-wide-font.patch                          |   32 +
 libtgvoip.patch                                     |   18 
 no-gtk2.patch                                       |   32 +
 tdesktop.patch                                      |  466 ++++++++++++++++++
 tdesktop_lottie_animation_qtdebug.patch             |   15 
 tg.protocol                                         |   11 
 10 files changed, 820 insertions(+)

Copied: telegram-desktop/repos/community-staging-x86_64/CMakeLists.inj (from rev 537375, telegram-desktop/trunk/CMakeLists.inj)
===================================================================
--- community-staging-x86_64/CMakeLists.inj	                        (rev 0)
+++ community-staging-x86_64/CMakeLists.inj	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,20 @@
+# The text will be put into the appropriate CMakeLists by the PKGBUILD
+
+# Avoid rpath compiler parameter
+set_target_properties(Telegram PROPERTIES SKIP_BUILD_RPATH TRUE)
+
+# This makes up for patch of gyp utility, supporting precompiled headers. If
+# Telegram/Patches/gyp.diff file will be changed in future, please check these
+# lines.
+include(../../Telegram/gyp/PrecompiledHeader.cmake)
+add_precompiled_header(Telegram ../../Telegram/SourceFiles/stdafx.h)
+add_precompiled_header(lib_base ../../Telegram/SourceFiles/base/base_pch.h)
+add_precompiled_header(lib_export ../../Telegram/SourceFiles/export/export_pch.h)
+add_precompiled_header(lib_storage ../../Telegram/SourceFiles/storage/storage_pch.h)
+add_precompiled_header(lib_mtproto ../../Telegram/SourceFiles/mtproto/mtp_pch.h)
+add_precompiled_header(lib_ui ../../Telegram/SourceFiles/ui/ui_pch.h)
+
+# You can discover new PCHs using this link:
+# https://github.com/telegramdesktop/tdesktop/search?q=pch_header&unscoped_q=pch_header
+
+# vim: ft=cmake

Copied: telegram-desktop/repos/community-staging-x86_64/PKGBUILD (from rev 537375, telegram-desktop/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,130 @@
+# Maintainer: Sven-Hendrik Haase <svenstaro at gmail.com>
+# Contributor: hexchain <i at hexchain.org>
+
+# Thanks Nicholas Guriev <guriev-ns at ya.ru> for the patches!
+# https://github.com/mymedia2/tdesktop
+
+pkgname=telegram-desktop
+pkgver=1.8.15
+pkgrel=3
+pkgdesc='Official Telegram Desktop client'
+arch=('x86_64')
+url="https://desktop.telegram.org/"
+license=('GPL3')
+depends=('ffmpeg' 'hicolor-icon-theme' 'minizip' 'openal' 'qt5-base' 'qt5-imageformats' 'openssl')
+makedepends=('cmake' 'git' 'gyp' 'range-v3' 'python' 'libappindicator-gtk3' 'dos2unix')
+optdepends=('libnotify: desktop notifications'
+            'ttf-opensans: default Open Sans font family')
+source=(
+    "tdesktop::git+https://github.com/telegramdesktop/tdesktop.git#tag=v$pkgver"
+    "libtgvoip::git+https://github.com/telegramdesktop/libtgvoip"
+    "variant::git+https://github.com/mapbox/variant"
+    "Catch2::git+https://github.com/catchorg/Catch2.git"
+    "GSL::git+https://github.com/Microsoft/GSL.git"
+    "crl::git+https://github.com/telegramdesktop/crl.git"
+    "xxHash::git+https://github.com/Cyan4973/xxHash.git"
+    "rlottie::git+https://github.com/john-preston/rlottie.git"
+    "tg.protocol"
+    "CMakeLists.inj"
+    "libtgvoip.patch"
+
+    "tdesktop.patch"
+    "no-gtk2.patch"
+    "Revert-Disable-DemiBold-fallback-for-Semibold.patch"
+    "tdesktop_lottie_animation_qtdebug.patch"
+    "Revert-Change-some-private-header-includes.patch"
+    "Use-system-wide-font.patch"
+)
+sha512sums=('SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            'SKIP'
+            'b87414ceaae19185a8a5749cea1f6d9f3fc3c69b8dd729e3db8790cde00b987c3c827cd30baf0eac579d1884e34aa2f37bb90778c3c0bc9ca211d75a82891b9d'
+            'b759e45282c7bd04e1fdcbfd0c009773782bebde36d96363db9869a9d78e7fad41314ad311b7afbfa57db4e66c0265da17e9f81f6d62a972466cb71d19d4b47c'
+            'd60694dc701aa985b0e82a12c9732b945082470441c687b33167a94f94efcf253baf43bb7280ec160ba338485ee5c62de138e4804cae05f27cc5cf4298166d39'
+            '218f8711eefb5a8115222e099e6d08fc4079584b3aa3594d05a43390f37d5b51fbf1b64511c3a3e7792ef6c32fa6f4c8a65b6188a9efbd340304602552f3a595'
+            '117b0c2bae3d3d3aa94d41382621be4e05c3314a2831dba59e1bcfb443e7b8ff4bcd0403544fa0cb6def85b444146bf59eef9da25f96b041d3ce8f5429b4a867'
+            'd5cd7ecb5583258462c21a9ae3d4e8ae8c709d47d7ce2c45f8ae23100d24993398b8372021957b9a4607b3988f366e1c0cf64d724d901cb70212665c481217e9'
+            '79fcbee94f09df6b443c2b967afe4cba367985af13004b130da27f7bdf20974f76148a8056e98ce92000fabed80a1ff3cb2d332f6f8c70eed8aa909281533cd5'
+            '087dd821690dfedf1c275f264a0223b123e31ab9ee95050023930470bc9c866958cae00e2fd9132e6f7efbc4f1dfc3fdc20f8fba1fc9472d92bd702eaa60adb0'
+            '2c1bb75449b4634befa3edaac5d20e4b29ede21119549d9a3895dda9d4723f618dd950ee32133e04186fa65d07f80081ba3e3d5585209ba9112aa754d06fbb5c')
+
+prepare() {
+    cd "$srcdir/tdesktop"
+    git submodule init
+    git config submodule.Telegram/ThirdParty/libtgvoip.url "$srcdir/libtgvoip"
+    git config submodule.Telegram/ThirdParty/variant.url "$srcdir/variant"
+    git config submodule.Telegram/ThirdParty/GSL.url "$srcdir/GSL"
+    git config submodule.Telegram/ThirdParty/Catch.url "$srcdir/Catch2"
+    git config submodule.Telegram/ThirdParty/crl.url "$srcdir/crl"
+    git config submodule.Telegram/ThirdParty/xxHash.url "$srcdir/xxHash"
+    git config submodule.Telegram/ThirdParty/rlottie.url "$srcdir/rlottie"
+    git submodule update
+
+    dos2unix "$srcdir/tdesktop/.appveyor/install.bat"
+
+    patch -Np1 -i "$srcdir/tdesktop.patch"
+    patch -Np1 -i "$srcdir/no-gtk2.patch"
+    patch -Np1 -i "$srcdir/Revert-Disable-DemiBold-fallback-for-Semibold.patch"
+    patch -Np1 -i "$srcdir/tdesktop_lottie_animation_qtdebug.patch"
+    patch -Np1 -i "$srcdir/Revert-Change-some-private-header-includes.patch"
+    patch -Np1 -i "$srcdir/Use-system-wide-font.patch"
+
+    unix2dos "$srcdir/tdesktop/.appveyor/install.bat"
+    # disable static-qt for rlottie
+    sed "/RLOTTIE_WITH_STATIC_QT/d" -i "$srcdir/tdesktop/Telegram/gyp/lib_rlottie.gyp"
+
+    cd "$srcdir/tdesktop"
+    cd "Telegram/ThirdParty/libtgvoip"
+    patch -Np1 -i "$srcdir/libtgvoip.patch"
+}
+
+build() {
+    cd "$srcdir/tdesktop"
+    export LANG=en_US.UTF-8
+    export GYP_DEFINES="TDESKTOP_DISABLE_CRASH_REPORTS,TDESKTOP_DISABLE_AUTOUPDATE,TDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME,TDESKTOP_DISABLE_DESKTOP_FILE_GENERATION"
+    export EXTRA_FLAGS="-Winvalid-pch"
+    export CPPFLAGS="$CPPFLAGS $EXTRA_FLAGS"
+    export CXXFLAGS="$CXXFLAGS $EXTRA_FLAGS"
+
+    # Telegram requires us to set API_ID and API_HASH for some reason but they do not provide a way to receive a pair
+    # See https://github.com/telegramdesktop/tdesktop/commit/65b2db216033aa08b7bc846df27843e566f08981 and
+    # https://github.com/telegramdesktop/tdesktop/issues/4717
+    # The official API_ID seems to be 2040 while the API_HASH is "b18441a1ff607e10a989891a5462e627".
+    # We're going to use the defaults for now but might at some point use the official ones from the official binaries as noted above.
+
+    gyp \
+        -Dapi_id=17349 \
+        -Dapi_hash=344583e45741c457fe1862106095a5eb \
+        -Dbuild_defines=${GYP_DEFINES} \
+        -Gconfig=Release \
+        --depth=Telegram/gyp --generator-output=../.. -Goutput_dir=out Telegram/gyp/Telegram.gyp --format=cmake
+    NUM=$((`wc -l < out/Release/CMakeLists.txt` - 2))
+    sed -i "$NUM r ../CMakeLists.inj" out/Release/CMakeLists.txt
+    cd "$srcdir/tdesktop/out/Release"
+    cmake . -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -UTDESKTOP_OFFICIAL_TARGET 
+    make
+}
+
+package() {
+    install -dm755 "$pkgdir/usr/bin"
+    install -m755 "$srcdir/tdesktop/out/Release/Telegram" "$pkgdir/usr/bin/telegram-desktop"
+
+    install -d "$pkgdir/usr/share/applications"
+    install -m644 "$srcdir/tdesktop/lib/xdg/telegramdesktop.desktop" "$pkgdir/usr/share/applications/telegramdesktop.desktop"
+
+    install -d "$pkgdir/usr/share/kservices5"
+    install -m644 "$srcdir/tg.protocol" "$pkgdir/usr/share/kservices5/tg.protocol"
+
+    local icon_size icon_dir
+    for icon_size in 16 32 48 64 128 256 512; do
+        icon_dir="$pkgdir/usr/share/icons/hicolor/${icon_size}x${icon_size}/apps"
+
+        install -d "$icon_dir"
+        install -m644 "$srcdir/tdesktop/Telegram/Resources/art/icon${icon_size}.png" "$icon_dir/telegram.png"
+    done
+}

Copied: telegram-desktop/repos/community-staging-x86_64/Revert-Change-some-private-header-includes.patch (from rev 537375, telegram-desktop/trunk/Revert-Change-some-private-header-includes.patch)
===================================================================
--- community-staging-x86_64/Revert-Change-some-private-header-includes.patch	                        (rev 0)
+++ community-staging-x86_64/Revert-Change-some-private-header-includes.patch	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,66 @@
+From 46a55ed8f7ef4ee99ebccf1bdded3d5ccaef33af Mon Sep 17 00:00:00 2001
+From: Jiachen YANG <farseerfc at gmail.com>
+Date: Fri, 4 Oct 2019 17:00:48 +0900
+Subject: [PATCH 5/6] Revert "Change some private header includes."
+
+This reverts commit b9d3ba621eb8af638af46c6b3cfd7a8330bf0dd5.
+---
+ Telegram/SourceFiles/ui/text/text.cpp       | 1 -
+ Telegram/SourceFiles/ui/text/text.h         | 2 +-
+ Telegram/SourceFiles/ui/text/text_block.cpp | 2 --
+ Telegram/SourceFiles/ui/text/text_block.h   | 1 +
+ 4 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/Telegram/SourceFiles/ui/text/text.cpp b/Telegram/SourceFiles/ui/text/text.cpp
+index eaeb52b35..2c55f1123 100644
+--- a/Telegram/SourceFiles/ui/text/text.cpp
++++ b/Telegram/SourceFiles/ui/text/text.cpp
+@@ -14,7 +14,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ #include "ui/ui_integration.h"
+ #include "platform/platform_info.h"
+ 
+-#include <private/qfontengine_p.h>
+ #include <private/qharfbuzz_p.h>
+ 
+ namespace Ui {
+diff --git a/Telegram/SourceFiles/ui/text/text.h b/Telegram/SourceFiles/ui/text/text.h
+index 5d7c2cd07..3a2de5d3e 100644
+--- a/Telegram/SourceFiles/ui/text/text.h
++++ b/Telegram/SourceFiles/ui/text/text.h
+@@ -12,7 +12,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ #include "ui/click_handler.h"
+ #include "base/flags.h"
+ 
+-#include <private/qfixed_p.h>
++#include <private/qfontengine_p.h>
+ 
+ static const QChar TextCommand(0x0010);
+ enum TextCommands {
+diff --git a/Telegram/SourceFiles/ui/text/text_block.cpp b/Telegram/SourceFiles/ui/text/text_block.cpp
+index 8e6914197..d83073085 100644
+--- a/Telegram/SourceFiles/ui/text/text_block.cpp
++++ b/Telegram/SourceFiles/ui/text/text_block.cpp
+@@ -9,8 +9,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ 
+ #include "styles/style_basic.h"
+ 
+-#include <private/qfontengine_p.h>
+-
+ // COPIED FROM qtextlayout.cpp AND MODIFIED
+ namespace Ui {
+ namespace Text {
+diff --git a/Telegram/SourceFiles/ui/text/text_block.h b/Telegram/SourceFiles/ui/text/text_block.h
+index 6fcf1cd51..27d724ee8 100644
+--- a/Telegram/SourceFiles/ui/text/text_block.h
++++ b/Telegram/SourceFiles/ui/text/text_block.h
+@@ -11,6 +11,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ #include "ui/emoji_config.h"
+ 
+ #include <private/qfixed_p.h>
++#include <private/qfontengine_p.h>
+ 
+ namespace Ui {
+ namespace Text {
+-- 
+2.23.0
+

Copied: telegram-desktop/repos/community-staging-x86_64/Revert-Disable-DemiBold-fallback-for-Semibold.patch (from rev 537375, telegram-desktop/trunk/Revert-Disable-DemiBold-fallback-for-Semibold.patch)
===================================================================
--- community-staging-x86_64/Revert-Disable-DemiBold-fallback-for-Semibold.patch	                        (rev 0)
+++ community-staging-x86_64/Revert-Disable-DemiBold-fallback-for-Semibold.patch	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,30 @@
+From b7effa2fd838afc049ec5cc00df3bd0810a95da4 Mon Sep 17 00:00:00 2001
+From: Jiachen YANG <farseerfc at gmail.com>
+Date: Fri, 4 Oct 2019 16:59:26 +0900
+Subject: [PATCH 3/6] Revert "Disable DemiBold fallback for Semibold."
+
+This reverts commit 310c68a744ae8163c96b88944d96a6f6b14b3cdf.
+---
+ Telegram/SourceFiles/ui/style/style_core_font.cpp | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/Telegram/SourceFiles/ui/style/style_core_font.cpp b/Telegram/SourceFiles/ui/style/style_core_font.cpp
+index 653dbfff0..22ccfea7e 100644
+--- a/Telegram/SourceFiles/ui/style/style_core_font.cpp
++++ b/Telegram/SourceFiles/ui/style/style_core_font.cpp
+@@ -161,9 +161,9 @@ FontData::FontData(int size, uint32 flags, int family, Font *other)
+ 
+ 	f.setPixelSize(size);
+ 	if (_flags & FontBold) {
+-		f.setBold(true);
+-	//} else if (fontFamilies[family] == "Open Sans Semibold") {
+-	//	f.setWeight(QFont::DemiBold);
++		f.setBold(_flags & FontBold);
++	} else if (fontFamilies[family] == "Open Sans Semibold") {
++		f.setWeight(QFont::DemiBold);
+ 	}
+ 	f.setItalic(_flags & FontItalic);
+ 	f.setUnderline(_flags & FontUnderline);
+-- 
+2.23.0
+

Copied: telegram-desktop/repos/community-staging-x86_64/Use-system-wide-font.patch (from rev 537375, telegram-desktop/trunk/Use-system-wide-font.patch)
===================================================================
--- community-staging-x86_64/Use-system-wide-font.patch	                        (rev 0)
+++ community-staging-x86_64/Use-system-wide-font.patch	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,32 @@
+diff --git a/Telegram/Resources/qrc/fonts.qrc b/Telegram/Resources/qrc/fonts.qrc
+index 233b8d572..122d89140 100644
+--- a/Telegram/Resources/qrc/fonts.qrc
++++ b/Telegram/Resources/qrc/fonts.qrc
+@@ -1,7 +1,4 @@
+ <RCC>
+   <qresource prefix="/gui">
+-    <file alias="fonts/OpenSans-Regular.ttf">../fonts/OpenSans-Regular.ttf</file>
+-    <file alias="fonts/OpenSans-Bold.ttf">../fonts/OpenSans-Bold.ttf</file>
+-    <file alias="fonts/OpenSans-Semibold.ttf">../fonts/OpenSans-Semibold.ttf</file>
+   </qresource>
+ </RCC>
+diff --git a/Telegram/SourceFiles/ui/style/style_core_font.cpp b/Telegram/SourceFiles/ui/style/style_core_font.cpp
+index 22ccfea7e..36f271f93 100644
+--- a/Telegram/SourceFiles/ui/style/style_core_font.cpp
++++ b/Telegram/SourceFiles/ui/style/style_core_font.cpp
+@@ -84,9 +84,9 @@ void StartFonts() {
+ 	}
+ 	Started = true;
+ 
+-	auto regular = LoadCustomFont(":/gui/fonts/OpenSans-Regular.ttf", "Open Sans");
+-	auto bold = LoadCustomFont(":/gui/fonts/OpenSans-Bold.ttf", "Open Sans", style::internal::FontBold);
+-	auto semibold = LoadCustomFont(":/gui/fonts/OpenSans-Semibold.ttf", "Open Sans Semibold");
++        auto regular = ValidateFont("Open Sans");
++        auto bold = ValidateFont("Open Sans", style::internal::FontBold);
++        auto semibold = ValidateFont("Open Sans Semibold");
+ 
+ #ifdef Q_OS_WIN
+ 	// Attempt to workaround a strange font bug with Open Sans Semibold not loading.
+-- 
+2.23.0
+

Copied: telegram-desktop/repos/community-staging-x86_64/libtgvoip.patch (from rev 537375, telegram-desktop/trunk/libtgvoip.patch)
===================================================================
--- community-staging-x86_64/libtgvoip.patch	                        (rev 0)
+++ community-staging-x86_64/libtgvoip.patch	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,18 @@
+diff --git a/libtgvoip.gyp b/libtgvoip.gyp
+index 52fbea1..9a4dfb7 100644
+--- a/libtgvoip.gyp
++++ b/libtgvoip.gyp
+@@ -13,11 +13,12 @@
+         'variables': {
+           'tgvoip_src_loc': '.',
+           'official_build_target%': '',
+-          'linux_path_opus_include%': '<(DEPTH)/../../../Libraries/opus/include',
++          'linux_path_opus_include%': '/usr/include/opus',
+         },
+         'include_dirs': [
+           '<(tgvoip_src_loc)/webrtc_dsp',
+           '<(linux_path_opus_include)',
++          '/usr/include/openssl'
+         ],
+         'direct_dependent_settings': {
+           'include_dirs': [

Copied: telegram-desktop/repos/community-staging-x86_64/no-gtk2.patch (from rev 537375, telegram-desktop/trunk/no-gtk2.patch)
===================================================================
--- community-staging-x86_64/no-gtk2.patch	                        (rev 0)
+++ community-staging-x86_64/no-gtk2.patch	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,32 @@
+diff --git a/Telegram/SourceFiles/platform/linux/linux_libs.cpp b/Telegram/SourceFiles/platform/linux/linux_libs.cpp
+index 5071d63d1..671d0e661 100644
+--- a/Telegram/SourceFiles/platform/linux/linux_libs.cpp
++++ b/Telegram/SourceFiles/platform/linux/linux_libs.cpp
+@@ -243,24 +243,12 @@ void start() {
+ 			indicatorLoaded = setupAppIndicator(lib_indicator);
+ 		}
+ 	}
+-	if ((!gtkLoaded || !indicatorLoaded) && !isWayland) {
+-		if (loadLibrary(lib_indicator, "ayatana-appindicator", 1) || loadLibrary(lib_indicator, "appindicator", 1)) {
+-			if (loadLibrary(lib_gtk, "gtk-x11-2.0", 0)) {
+-				gtkLoaded = indicatorLoaded = false;
+-				gtkLoaded = setupGtkBase(lib_gtk);
+-				indicatorLoaded = setupAppIndicator(lib_indicator);
+-			}
+-		}
+-	}
+ 
+ 	// If no appindicator, try at least load gtk.
+ 	if (!gtkLoaded && !indicatorLoaded) {
+ 		if (loadLibrary(lib_gtk, "gtk-3", 0)) {
+ 			gtkLoaded = setupGtkBase(lib_gtk);
+ 		}
+-		if (!gtkLoaded && !isWayland && loadLibrary(lib_gtk, "gtk-x11-2.0", 0)) {
+-			gtkLoaded = setupGtkBase(lib_gtk);
+-		}
+ 	}
+ 
+ 	if (gtkLoaded) {
+-- 
+2.23.0
+

Copied: telegram-desktop/repos/community-staging-x86_64/tdesktop.patch (from rev 537375, telegram-desktop/trunk/tdesktop.patch)
===================================================================
--- community-staging-x86_64/tdesktop.patch	                        (rev 0)
+++ community-staging-x86_64/tdesktop.patch	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,466 @@
+diff --git a/Telegram/Resources/qrc/linux.qrc b/Telegram/Resources/qrc/linux.qrc
+index 164e8d4f2..12319be14 100644
+--- a/Telegram/Resources/qrc/linux.qrc
++++ b/Telegram/Resources/qrc/linux.qrc
+@@ -1,6 +1,5 @@
+ <RCC>
+   <qresource prefix="/qt">
+-    <file alias="etc/qt.conf">../etc/qt_linux.conf</file>
+   </qresource>
+   <qresource prefix="/fc">
+     <file alias="fc-custom.conf">../fc-custom.conf</file>
+diff --git a/Telegram/SourceFiles/core/launcher.cpp b/Telegram/SourceFiles/core/launcher.cpp
+index 3ba28309b..e280c44fa 100644
+--- a/Telegram/SourceFiles/core/launcher.cpp
++++ b/Telegram/SourceFiles/core/launcher.cpp
+@@ -272,6 +272,19 @@ int Launcher::exec() {
+ 	Logs::start(this); // must be started before Platform is started
+ 	Platform::start(); // must be started before Sandbox is created
+ 
++	// I don't know why path is not in QT_PLUGIN_PATH by default
++	QCoreApplication::addLibraryPath("/usr/lib/qt/plugins");
++	// without this Telegram doesn't start on Ubuntu 17.04 due GTK errors
++	setenv("QT_STYLE_OVERRIDE", "qwerty", false);
++	// Telegram doesn't start when extraordinary theme is set, see launchpad.net/bugs/1680943
++	unsetenv("QT_QPA_PLATFORMTHEME");
++
++       // unset QT screen scale related envvars
++	unsetenv("QT_SCREEN_SCALE_FACTORS");
++	unsetenv("QT_AUTO_SCREEN_SCALE_FACTOR");
++	unsetenv("QT_SCALE_FACTOR");
++	unsetenv("QT_DEVICE_PIXEL_RATIO");
++
+ 	auto result = executeApplication();
+ 
+ 	DEBUG_LOG(("Telegram finished, result: %1").arg(result));
+diff --git a/Telegram/SourceFiles/qt_functions.cpp b/Telegram/SourceFiles/qt_functions.cpp
+new file mode 100644
+index 000000000..4a722b8d7
+--- /dev/null
++++ b/Telegram/SourceFiles/qt_functions.cpp
+@@ -0,0 +1,94 @@
++/****************************************************************************
++**
++** Copyright (C) 2015 The Qt Company Ltd.
++** Contact: http://www.qt.io/licensing/
++**
++** This file contains some parts of the Qt Toolkit.
++**
++** $QT_BEGIN_LICENSE:LGPL21$
++** Commercial License Usage
++** Licensees holding valid commercial Qt licenses may use this file in
++** accordance with the commercial license agreement provided with the
++** Software or, alternatively, in accordance with the terms contained in
++** a written agreement between you and The Qt Company. For licensing terms
++** and conditions see http://www.qt.io/terms-conditions. For further
++** information use the contact form at http://www.qt.io/contact-us.
++**
++** GNU Lesser General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU Lesser
++** General Public License version 2.1 or version 3 as published by the Free
++** Software Foundation and appearing in the file LICENSE.LGPLv21 and
++** LICENSE.LGPLv3 included in the packaging of this file. Please review the
++** following information to ensure the GNU Lesser General Public License
++** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
++** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
++**
++** As a special exception, The Qt Company gives you certain additional
++** rights. These rights are described in The Qt Company LGPL Exception
++** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
++**
++** $QT_END_LICENSE$
++**
++****************************************************************************/
++
++/* TODO: find a dynamic library with these symbols. */
++
++/* Debian maintainer: this function is taken from qfiledialog.cpp */
++/*
++    Makes a list of filters from ;;-separated text.
++    Used by the mac and windows implementations
++*/
++QStringList qt_make_filter_list(const QString &filter)
++{
++    QString f(filter);
++
++    if (f.isEmpty())
++        return QStringList();
++
++    QString sep(QLatin1String(";;"));
++    int i = f.indexOf(sep, 0);
++    if (i == -1) {
++        if (f.indexOf(QLatin1Char('\n'), 0) != -1) {
++            sep = QLatin1Char('\n');
++            i = f.indexOf(sep, 0);
++        }
++    }
++
++    return f.split(sep);
++}
++
++/* Debian maintainer: this constructor is taken from qtextengine.cpp for TextPainter::drawLine */
++QTextItemInt::QTextItemInt(const QGlyphLayout &g, QFont *font, const QChar *chars_, int numChars, QFontEngine *fe, const QTextCharFormat &format)
++    : flags(0), justified(false), underlineStyle(QTextCharFormat::NoUnderline), charFormat(format),
++      num_chars(numChars), chars(chars_), logClusters(0), f(font),  glyphs(g), fontEngine(fe)
++{
++}
++
++/* Debian maintainer: this method is also taken from qtextengine.cpp */
++// Fix up flags and underlineStyle with given info
++void QTextItemInt::initWithScriptItem(const QScriptItem &si)
++{
++    // explicitly initialize flags so that initFontAttributes can be called
++    // multiple times on the same TextItem
++    flags = 0;
++    if (si.analysis.bidiLevel %2)
++        flags |= QTextItem::RightToLeft;
++    ascent = si.ascent;
++    descent = si.descent;
++
++    if (charFormat.hasProperty(QTextFormat::TextUnderlineStyle)) {
++        underlineStyle = charFormat.underlineStyle();
++    } else if (charFormat.boolProperty(QTextFormat::FontUnderline)
++               || f->d->underline) {
++        underlineStyle = QTextCharFormat::SingleUnderline;
++    }
++
++    // compat
++    if (underlineStyle == QTextCharFormat::SingleUnderline)
++        flags |= QTextItem::Underline;
++
++    if (f->d->overline || charFormat.fontOverline())
++        flags |= QTextItem::Overline;
++    if (f->d->strikeOut || charFormat.fontStrikeOut())
++        flags |= QTextItem::StrikeOut;
++}
+diff --git a/Telegram/SourceFiles/qt_static_plugins.cpp b/Telegram/SourceFiles/qt_static_plugins.cpp
+index a757d085f..122ff0f5d 100644
+--- a/Telegram/SourceFiles/qt_static_plugins.cpp
++++ b/Telegram/SourceFiles/qt_static_plugins.cpp
+@@ -15,14 +15,4 @@ Q_IMPORT_PLUGIN(QWebpPlugin)
+ Q_IMPORT_PLUGIN(QCocoaIntegrationPlugin)
+ Q_IMPORT_PLUGIN(QGenericEnginePlugin)
+ #elif defined Q_OS_LINUX // Q_OS_WIN | Q_OS_MAC
+-Q_IMPORT_PLUGIN(QWebpPlugin)
+-Q_IMPORT_PLUGIN(QXcbIntegrationPlugin)
+-Q_IMPORT_PLUGIN(QConnmanEnginePlugin)
+-Q_IMPORT_PLUGIN(QGenericEnginePlugin)
+-Q_IMPORT_PLUGIN(QNetworkManagerEnginePlugin)
+-Q_IMPORT_PLUGIN(QComposePlatformInputContextPlugin)
+-Q_IMPORT_PLUGIN(QIbusPlatformInputContextPlugin)
+-Q_IMPORT_PLUGIN(QFcitxPlatformInputContextPlugin)
+-Q_IMPORT_PLUGIN(QHimePlatformInputContextPlugin)
+-Q_IMPORT_PLUGIN(NimfInputContextPlugin)
+ #endif // Q_OS_WIN | Q_OS_MAC | Q_OS_LINUX
+diff --git a/Telegram/SourceFiles/ui/text/text.cpp b/Telegram/SourceFiles/ui/text/text.cpp
+index 7891995be..eaeb52b35 100644
+--- a/Telegram/SourceFiles/ui/text/text.cpp
++++ b/Telegram/SourceFiles/ui/text/text.cpp
+@@ -1968,11 +1968,11 @@ private:
+ 		if (item == -1)
+ 			return;
+ 
+-#ifdef OS_MAC_OLD
++#if defined(OS_MAC_OLD) || QT_VERSION < QT_VERSION_CHECK(5, 6, 0)
+ 		auto end = _e->findItem(line.from + line.length - 1);
+-#else // OS_MAC_OLD
++#else
+ 		auto end = _e->findItem(line.from + line.length - 1, item);
+-#endif // OS_MAC_OLD
++#endif
+ 
+ 		auto blockIndex = _lineStartBlock;
+ 		auto currentBlock = _t->_blocks[blockIndex].get();
+diff --git a/Telegram/SourceFiles/ui/text/text_block.cpp b/Telegram/SourceFiles/ui/text/text_block.cpp
+index 29173c5c2..b47a53d76 100644
+--- a/Telegram/SourceFiles/ui/text/text_block.cpp
++++ b/Telegram/SourceFiles/ui/text/text_block.cpp
+@@ -334,6 +334,9 @@ TextBlock::TextBlock(const style::font &font, const QString &str, QFixed minResi
+ 
+ 		QStackTextEngine engine(part, blockFont->f);
+ 		BlockParser parser(&engine, this, minResizeWidth, _from, part);
++		QTextLayout layout(part, blockFont->f);
++		layout.beginLayout();
++		layout.createLine();
+ 	}
+ }
+ 
+diff --git a/Telegram/gyp/PrecompiledHeader.cmake b/Telegram/gyp/PrecompiledHeader.cmake
+index dfe1193be..0b13fc098 100644
+--- a/Telegram/gyp/PrecompiledHeader.cmake
++++ b/Telegram/gyp/PrecompiledHeader.cmake
+@@ -114,7 +114,7 @@ function(add_precompiled_header _target _input)
+       set(_compiler_FLAGS "@${_pch_c_flags_file}")
+       add_custom_command(
+         OUTPUT "${_output_c}"
+-        COMMAND "${CMAKE_C_COMPILER}" ${_compiler_FLAGS} -x c-header -o "${_output_c}" -c "${_pchfile}"
++        COMMAND "${CMAKE_C_COMPILER}" ${_compiler_FLAGS} "$(C_DEFINES)" "$(C_INCLUDES)" "$(C_FLAGS)" -x c-header -o "${_output_c}" -c "${_pchfile}"
+         DEPENDS "${_pchfile}" "${_pch_c_flags_file}"
+         IMPLICIT_DEPENDS C "${_pch_header}"
+         COMMENT "Precompiling ${_name} for ${_target} (C)")
+@@ -125,7 +125,7 @@ function(add_precompiled_header _target _input)
+       set(_compiler_FLAGS "@${_pch_cpp_flags_file}")
+       add_custom_command(
+         OUTPUT "${_output_cxx}"
+-        COMMAND "${CMAKE_CXX_COMPILER}" ${_compiler_FLAGS} -x c++-header -o "${_output_cxx}" -c "${_pchfile}"
++        COMMAND "${CMAKE_CXX_COMPILER}" ${_compiler_FLAGS} "$(CXX_DEFINES)" "$(CXX_INCLUDES)" "$(CXX_FLAGS)" -x c++-header -o "${_output_cxx}" -c "${_pchfile}"
+         DEPENDS "${_pchfile}" "${_pch_cpp_flags_file}"
+         IMPLICIT_DEPENDS CXX "${_pch_header}"
+         COMMENT "Precompiling header ${_name} for ${_target} (C++)")
+diff --git a/Telegram/gyp/common/linux.gypi b/Telegram/gyp/common/linux.gypi
+index cdcdef1dc..667fbb7f3 100644
+--- a/Telegram/gyp/common/linux.gypi
++++ b/Telegram/gyp/common/linux.gypi
+@@ -11,7 +11,6 @@
+         'linux_common_flags': [
+           '-pipe',
+           '-Wall',
+-          '-Werror',
+           '-W',
+           '-fPIC',
+           '-Wno-unused-variable',
+@@ -86,7 +85,6 @@
+       ],
+       'defines': [
+         '_REENTRANT',
+-        'QT_STATICPLUGIN',
+         'QT_PLUGIN',
+       ],
+       'cflags_c': [
+diff --git a/Telegram/gyp/modules/qt.gypi b/Telegram/gyp/modules/qt.gypi
+index 0b783ec21..3f917765a 100644
+--- a/Telegram/gyp/modules/qt.gypi
++++ b/Telegram/gyp/modules/qt.gypi
+@@ -14,25 +14,21 @@
+               [ 'build_macold', {
+                 'qt_version%': '5.3.2',
+               }, {
+-                'qt_version%': '5.6.2',
++                'qt_version%': '<!(echo /usr/include/qt/QtCore/*/ | grep -Po "\d+\.\d+\.\d+")',
+               }]
+             ],
+           },
+           'qt_libs': [
+-            'qwebp',
+-            'Qt5PrintSupport',
+-            'Qt5PlatformSupport',
+             'Qt5Network',
+             'Qt5Widgets',
+             'Qt5Gui',
+-            'qtharfbuzzng',
+           ],
+           'qt_version%': '<(qt_version)',
+           'conditions': [
+             [ 'build_macold', {
+               'linux_path_qt%': '/usr/local/macold/Qt-<(qt_version)',
+             }, {
+-              'linux_path_qt%': '/usr/local/tdesktop/Qt-<(qt_version)',
++              'linux_path_qt%': '/usr/lib/qt',
+             }]
+           ]
+         },
+@@ -72,32 +68,13 @@
+             ],
+           }],
+           [ 'build_linux', {
+-            'qt_lib_prefix': 'lib',
+-            'qt_lib_debug_postfix': '.a',
+-            'qt_lib_release_postfix': '.a',
++            'qt_lib_prefix': '',
++            'qt_lib_debug_postfix': '',
++            'qt_lib_release_postfix': '',
+             'qt_libs': [
+-              'qxcb',
+-              'Qt5XcbQpa',
+-              'qconnmanbearer',
+-              'qgenericbearer',
+-              'qnmbearer',
+               '<@(qt_libs)',
+               'Qt5DBus',
+               'Qt5Core',
+-              'qtpcre',
+-              'Xi',
+-              'Xext',
+-              'Xfixes',
+-              'SM',
+-              'ICE',
+-              'fontconfig',
+-              'expat',
+-              'freetype',
+-              'z',
+-              'xcb-shm',
+-              'xcb-xfixes',
+-              'xcb-render',
+-              'xcb-static',
+             ],
+           }],
+         ],
+@@ -127,11 +104,6 @@
+     # '<!@(python <(DEPTH)/list_sources.py [sources] <(qt_moc_list_sources_arg))'
+     # where [sources] contains all your source files
+     'qt_moc_list_sources_arg': '--moc-prefix SHARED_INTERMEDIATE_DIR/<(_target_name)/moc/moc_',
+-
+-    'linux_path_xkbcommon%': '/usr/local',
+-    'linux_lib_ssl%': '/usr/local/ssl/lib/libssl.a',
+-    'linux_lib_crypto%': '/usr/local/ssl/lib/libcrypto.a',
+-    'linux_lib_icu%': 'libicutu.a libicui18n.a libicuuc.a libicudata.a',
+   },
+ 
+   'configurations': {
+@@ -180,14 +152,14 @@
+   },
+ 
+   'include_dirs': [
+-    '<(qt_loc)/include',
+-    '<(qt_loc)/include/QtCore',
+-    '<(qt_loc)/include/QtGui',
+-    '<(qt_loc)/include/QtDBus',
+-    '<(qt_loc)/include/QtCore/<(qt_version)',
+-    '<(qt_loc)/include/QtGui/<(qt_version)',
+-    '<(qt_loc)/include/QtCore/<(qt_version)/QtCore',
+-    '<(qt_loc)/include/QtGui/<(qt_version)/QtGui',
++    '/usr/include/qt',
++    '/usr/include/qt/QtCore',
++    '/usr/include/qt/QtGui',
++    '/usr/include/qt/QtDBus',
++    '/usr/include/qt/QtCore/<(qt_version)',
++    '/usr/include/qt/QtGui/<(qt_version)',
++    '/usr/include/qt/QtCore/<(qt_version)/QtCore',
++    '/usr/include/qt/QtGui/<(qt_version)/QtGui',
+   ],
+   'library_dirs': [
+     '<(qt_loc)/lib',
+@@ -212,17 +184,10 @@
+       ],
+       'libraries': [
+         '<(PRODUCT_DIR)/obj.target/liblinux_glibc_wraps.a',
+-        '<(linux_path_xkbcommon)/lib/libxkbcommon.a',
+         '<@(qt_libs_release)',
+-        '<(linux_lib_ssl)',
+-        '<(linux_lib_crypto)',
+-        '<!@(python -c "for s in \'<(linux_lib_icu)\'.split(\' \'): print(s)")',
+-        '-lxcb',
++        '-lcrypto',
+         '-lX11',
+-        '-lX11-xcb',
+-        '-ldbus-1',
+         '-ldl',
+-        '-lgthread-2.0',
+         '-lglib-2.0',
+         '-lpthread',
+       ],
+@@ -230,7 +195,6 @@
+         '<(qt_loc)/mkspecs/linux-g++',
+       ],
+       'ldflags': [
+-        '-static-libstdc++',
+         '-pthread',
+         '-rdynamic',
+       ],
+diff --git a/Telegram/gyp/modules/qt_moc.gypi b/Telegram/gyp/modules/qt_moc.gypi
+index ebee90a15..75424d4bb 100644
+--- a/Telegram/gyp/modules/qt_moc.gypi
++++ b/Telegram/gyp/modules/qt_moc.gypi
+@@ -15,7 +15,7 @@
+       '<(SHARED_INTERMEDIATE_DIR)/<(_target_name)/moc/moc_<(RULE_INPUT_ROOT).cpp',
+     ],
+     'action': [
+-      '<(qt_loc)/bin/moc<(exe_ext)',
++      '/usr/bin/moc',
+ 
+       # Silence "Note: No relevant classes found. No output generated."
+       '--no-notes',
+diff --git a/Telegram/gyp/modules/qt_rcc.gypi b/Telegram/gyp/modules/qt_rcc.gypi
+index f5624a82b..1129a95c5 100644
+--- a/Telegram/gyp/modules/qt_rcc.gypi
++++ b/Telegram/gyp/modules/qt_rcc.gypi
+@@ -15,7 +15,7 @@
+       '<(SHARED_INTERMEDIATE_DIR)/<(_target_name)/qrc/qrc_<(RULE_INPUT_ROOT).cpp',
+     ],
+     'action': [
+-      '<(qt_loc)/bin/rcc<(exe_ext)',
++      '/usr/bin/rcc',
+       '-name', '<(RULE_INPUT_ROOT)',
+       '-no-compress',
+       '<(RULE_INPUT_PATH)',
+diff --git a/Telegram/gyp/telegram/linux.gypi b/Telegram/gyp/telegram/linux.gypi
+index 385f2b89f..f3ddf7e83 100644
+--- a/Telegram/gyp/telegram/linux.gypi
++++ b/Telegram/gyp/telegram/linux.gypi
+@@ -19,27 +19,21 @@
+         #'xkbcommon',
+       ],
+     },
++    'library_dirs': [
++      '/usr/lib',
++      '/usr/lib/openssl',
++    ],
+     'libraries': [
+-      '-lbreakpad_client',
+-      '-lcomposeplatforminputcontextplugin',
+-      '-libusplatforminputcontextplugin',
+-      '-lfcitxplatforminputcontextplugin',
+-      '-lhimeplatforminputcontextplugin',
+-      '-lnimfplatforminputcontextplugin',
+-      '-llzma',
+       '-lopenal',
+       '-lavformat',
+       '-lavcodec',
+       '-lswresample',
+       '-lswscale',
+       '-lavutil',
++      '-lminizip',
+       '-lopus',
+-      '-lva-x11',
+-      '-lva-drm',
+-      '-lva',
+-      '-lvdpau',
+-      '-ldrm',
+       '-lz',
++      '-llzma',
+ #      '<!(pkg-config 2> /dev/null --libs <@(pkgconfig_libs))',
+     ],
+     'cflags_cc': [
+@@ -51,7 +45,6 @@
+       '-Wl,-wrap,secure_getenv',
+       '-Wl,-wrap,clock_gettime',
+       '-Wl,--no-as-needed,-lrt',
+-      '-Wl,-Bstatic',
+     ],
+     'configurations': {
+       'Release': {
+@@ -75,9 +68,8 @@
+         ],
+       }], ['not_need_gtk!="True"', {
+         'cflags_cc': [
+-          '<!(pkg-config 2> /dev/null --cflags gtk+-2.0)',
+-          '<!(pkg-config 2> /dev/null --cflags glib-2.0)',
+-          '<!(pkg-config 2> /dev/null --cflags dee-1.0)',
++          '<!(pkg-config 2> /dev/null --cflags appindicator3-0.1)',
++          '<!(pkg-config 2> /dev/null --cflags gtk+-3.0)',
+         ],
+       }], ['<!(pkg-config ayatana-appindicator3-0.1; echo $?) == 0', {
+         'cflags_cc': [ '<!(pkg-config --cflags ayatana-appindicator3-0.1)' ],
+diff --git a/Telegram/gyp/telegram/sources.txt b/Telegram/gyp/telegram/sources.txt
+index 38d9d0e64..459919abf 100644
+--- a/Telegram/gyp/telegram/sources.txt
++++ b/Telegram/gyp/telegram/sources.txt
+@@ -863,14 +863,7 @@
+ <(src_loc)/settings.cpp
+ <(src_loc)/settings.h
+ 
+-platforms: !win
+-<(minizip_loc)/crypt.h
+-<(minizip_loc)/ioapi.c
+-<(minizip_loc)/ioapi.h
+-<(minizip_loc)/zip.c
+-<(minizip_loc)/zip.h
+-<(minizip_loc)/unzip.c
+-<(minizip_loc)/unzip.h
++<(src_loc)/qt_functions.cpp
+ 
+ platforms: win
+ <(res_loc)/winrc/Telegram.rc
+-- 
+2.23.0
+

Copied: telegram-desktop/repos/community-staging-x86_64/tdesktop_lottie_animation_qtdebug.patch (from rev 537375, telegram-desktop/trunk/tdesktop_lottie_animation_qtdebug.patch)
===================================================================
--- community-staging-x86_64/tdesktop_lottie_animation_qtdebug.patch	                        (rev 0)
+++ community-staging-x86_64/tdesktop_lottie_animation_qtdebug.patch	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,15 @@
+diff --git a/Telegram/SourceFiles/lottie/lottie_animation.cpp b/Telegram/SourceFiles/lottie/lottie_animation.cpp
+index f681c9220..8f80640e1 100644
+--- a/Telegram/SourceFiles/lottie/lottie_animation.cpp
++++ b/Telegram/SourceFiles/lottie/lottie_animation.cpp
+@@ -15,6 +15,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
+ #include "logs.h"
+ 
+ #include <QFile>
++#include <QtDebug>
+ #include <rlottie.h>
+ #include <crl/crl_async.h>
+ #include <crl/crl_on_main.h>
+-- 
+2.23.0
+

Copied: telegram-desktop/repos/community-staging-x86_64/tg.protocol (from rev 537375, telegram-desktop/trunk/tg.protocol)
===================================================================
--- community-staging-x86_64/tg.protocol	                        (rev 0)
+++ community-staging-x86_64/tg.protocol	2019-12-12 12:54:27 UTC (rev 537376)
@@ -0,0 +1,11 @@
+[Protocol]
+exec=/usr/bin/telegram-desktop -- %u
+protocol=tg
+input=none
+output=none
+helper=true
+listing=false
+reading=false
+writing=false
+makedir=false
+deleting=false



More information about the arch-commits mailing list