[arch-commits] Commit in telegram-desktop/repos (9 files)
Jiachen Yang
farseerfc at archlinux.org
Tue Jan 7 04:43:54 UTC 2020
Date: Tuesday, January 7, 2020 @ 04:43:53
Author: farseerfc
Revision: 549800
archrelease: copy trunk to community-testing-x86_64
Added:
telegram-desktop/repos/community-testing-x86_64/
telegram-desktop/repos/community-testing-x86_64/0001-Dynamic-linking-system-libs.patch
(from rev 549799, telegram-desktop/trunk/0001-Dynamic-linking-system-libs.patch)
telegram-desktop/repos/community-testing-x86_64/0002-Dynamic-linking-system-qt.patch
(from rev 549799, telegram-desktop/trunk/0002-Dynamic-linking-system-qt.patch)
telegram-desktop/repos/community-testing-x86_64/0004-gtk3.patch
(from rev 549799, telegram-desktop/trunk/0004-gtk3.patch)
telegram-desktop/repos/community-testing-x86_64/0005-Use-system-wide-fonts.patch
(from rev 549799, telegram-desktop/trunk/0005-Use-system-wide-fonts.patch)
telegram-desktop/repos/community-testing-x86_64/0006-Revert-Disable-DemiBold-fallback-for-Semibold.patch
(from rev 549799, telegram-desktop/trunk/0006-Revert-Disable-DemiBold-fallback-for-Semibold.patch)
telegram-desktop/repos/community-testing-x86_64/PKGBUILD
(from rev 549799, telegram-desktop/trunk/PKGBUILD)
telegram-desktop/repos/community-testing-x86_64/series
(from rev 549799, telegram-desktop/trunk/series)
telegram-desktop/repos/community-testing-x86_64/tg.protocol
(from rev 549799, telegram-desktop/trunk/tg.protocol)
----------------------------------------------------------+
0001-Dynamic-linking-system-libs.patch | 340 +++++++++++++
0002-Dynamic-linking-system-qt.patch | 165 ++++++
0004-gtk3.patch | 22
0005-Use-system-wide-fonts.patch | 64 ++
0006-Revert-Disable-DemiBold-fallback-for-Semibold.patch | 25
PKGBUILD | 100 +++
series | 5
tg.protocol | 11
8 files changed, 732 insertions(+)
Copied: telegram-desktop/repos/community-testing-x86_64/0001-Dynamic-linking-system-libs.patch (from rev 549799, telegram-desktop/trunk/0001-Dynamic-linking-system-libs.patch)
===================================================================
--- community-testing-x86_64/0001-Dynamic-linking-system-libs.patch (rev 0)
+++ community-testing-x86_64/0001-Dynamic-linking-system-libs.patch 2020-01-07 04:43:53 UTC (rev 549800)
@@ -0,0 +1,340 @@
+From: John Zimmermann <johnz at posteo.net>
+--- a/cmake/external/crash_reports/CMakeLists.txt
++++ b/cmake/external/crash_reports/CMakeLists.txt
+@@ -7,6 +7,7 @@
+ add_library(external_crash_reports INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_crash_reports ALIAS external_crash_reports)
+
++if(NOT DESKTOP_APP_DISABLE_CRASH_REPORTS)
+ if (WIN32 OR LINUX OR build_macstore)
+ add_subdirectory(breakpad)
+ target_link_libraries(external_crash_reports
+@@ -20,3 +21,4 @@
+ desktop-app::external_crashpad
+ )
+ endif()
++endif()
+--- a/cmake/external/ffmpeg/CMakeLists.txt
++++ b/cmake/external/ffmpeg/CMakeLists.txt
+@@ -7,6 +7,18 @@
+ add_library(external_ffmpeg INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_ffmpeg ALIAS external_ffmpeg)
+
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(FFMPEG REQUIRED libavcodec libavformat libavutil libswresample libswscale)
++ target_link_libraries(external_ffmpeg
++ INTERFACE
++ ${FFMPEG_LIBRARIES}
++ )
++ target_include_directories(external_ffmpeg SYSTEM
++ INTERFACE
++ ${FFMPEG_INCLUDE_DIRS}
++ )
++else()
+ target_include_directories(external_ffmpeg SYSTEM
+ INTERFACE
+ ${libs_loc}/ffmpeg
+@@ -36,3 +48,4 @@
+ Xrender
+ )
+ endif()
++endif()
+--- a/cmake/external/openal/CMakeLists.txt
++++ b/cmake/external/openal/CMakeLists.txt
+@@ -7,6 +7,21 @@
+ add_library(external_openal INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_openal ALIAS external_openal)
+
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++ find_package(OpenAL REQUIRED)
++ target_include_directories(external_openal SYSTEM
++ INTERFACE
++ ${OPENAL_INCLUDE_DIR}
++ )
++ target_link_libraries(external_openal
++ INTERFACE
++ ${OPENAL_LIBRARY}
++ )
++ target_compile_definitions(external_openal
++ INTERFACE
++ AL_ALEXT_PROTOTYPES
++ )
++else()
+ if (WIN32)
+ target_include_directories(external_openal SYSTEM
+ INTERFACE
+@@ -41,3 +56,4 @@
+ AL_LIBTYPE_STATIC
+ AL_ALEXT_PROTOTYPES
+ )
++endif()
+--- a/cmake/external/openssl/CMakeLists.txt
++++ b/cmake/external/openssl/CMakeLists.txt
+@@ -7,7 +7,13 @@
+ add_library(external_openssl INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_openssl ALIAS external_openssl)
+
+-if (LINUX)
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++ find_package(OpenSSL REQUIRED)
++ target_include_directories(external_openssl SYSTEM
++ INTERFACE
++ ${OPENSSL_INCLUDE_DIR}
++ )
++elseif (LINUX)
+ target_include_directories(external_openssl SYSTEM
+ INTERFACE
+ /usr/local/desktop-app/openssl-1.1.1/include
+@@ -24,6 +30,13 @@
+ )
+ endif()
+
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++ target_link_libraries(external_openssl
++ INTERFACE
++ OpenSSL::Crypto
++ OpenSSL::SSL
++ )
++else()
+ if (WIN32)
+ set(openssl_lib_ext lib)
+ set(openssl_lib_loc ${libs_loc}/openssl_1_1_1/out32$<$<CONFIG:Debug>:.dbg>)
+@@ -45,6 +58,7 @@
+ ${openssl_lib_loc}/libssl.${openssl_lib_ext}
+ ${openssl_lib_loc}/libcrypto.${openssl_lib_ext}
+ )
++endif()
+
+ if (LINUX)
+ if (DESKTOP_APP_USE_GLIBC_WRAPS)
+--- a/cmake/external/opus/CMakeLists.txt
++++ b/cmake/external/opus/CMakeLists.txt
+@@ -7,6 +7,18 @@
+ add_library(external_opus INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_opus ALIAS external_opus)
+
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(OPUS REQUIRED opus)
++ target_include_directories(external_opus SYSTEM
++ INTERFACE
++ ${OPUS_INCLUDE_DIRS}
++ )
++ target_link_libraries(external_opus
++ INTERFACE
++ ${OPUS_LIBRARIES}
++ )
++else()
+ target_include_directories(external_opus SYSTEM
+ INTERFACE
+ ${libs_loc}/opus/include
+@@ -43,3 +55,4 @@
+ opus
+ )
+ endif()
++endif()
+--- a/cmake/external/qt/CMakeLists.txt
++++ b/cmake/external/qt/CMakeLists.txt
+@@ -15,6 +15,36 @@
+ endif()
+ endif()
+
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++ get_target_property(QTCORE_INCLUDE_DIRS Qt5::Core INTERFACE_INCLUDE_DIRECTORIES)
++ list(GET QTCORE_INCLUDE_DIRS 0 QT_INCLUDE_DIR)
++
++ foreach(__qt_module IN ITEMS QtCore QtGui)
++ list(APPEND QT_PRIVATE_INCLUDE_DIRS
++ ${QT_INCLUDE_DIR}/${__qt_module}/${Qt5_VERSION}
++ ${QT_INCLUDE_DIR}/${__qt_module}/${Qt5_VERSION}/${__qt_module}
++ )
++ endforeach()
++ message(STATUS "Using Qt private include directories: ${QT_PRIVATE_INCLUDE_DIRS}")
++ target_include_directories(external_qt SYSTEM
++ INTERFACE
++ ${QT_PRIVATE_INCLUDE_DIRS}
++ )
++ target_link_libraries(external_qt
++ INTERFACE
++ Qt5::DBus
++ Qt5::Network
++ Qt5::Widgets
++ desktop-app::external_zlib
++ xcb
++ X11
++ X11-xcb
++ dbus-1
++ dl
++ glib-2.0
++ pthread
++ )
++else()
+ target_include_directories(external_qt SYSTEM
+ INTERFACE
+ ${qt_loc}/include
+@@ -215,3 +245,4 @@
+ pthread
+ )
+ endif()
++endif()
+--- a/cmake/external/qt/package.cmake
++++ b/cmake/external/qt/package.cmake
+@@ -4,6 +4,9 @@
+ # For license and copyright information please follow this link:
+ # https://github.com/desktop-app/legal/blob/master/LEGAL
+
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++
++else()
+ if (NOT APPLE OR NOT build_osx)
+ set(qt_version 5.12.5)
+ else()
+@@ -17,6 +20,7 @@
+ endif()
+
+ set(Qt5_DIR ${qt_loc}/lib/cmake/Qt5)
++endif()
+
+ find_package(Qt5 COMPONENTS Core Gui Widgets Network REQUIRED)
+
+--- a/cmake/external/ranges/CMakeLists.txt
++++ b/cmake/external/ranges/CMakeLists.txt
+@@ -9,7 +9,7 @@
+
+ target_include_directories(external_ranges SYSTEM
+ INTERFACE
+- ${libs_loc}/range-v3/include
++ /usr/include
+ )
+
+ if (WIN32)
+@@ -18,4 +18,4 @@
+ /experimental:preprocessor # need for range-v3 see https://github.com/ericniebler/range-v3#supported-compilers
+ /wd5105 # needed for `/experimental:preprocessor`, suppressing C5105 "macro expansion producing 'defined' has undefined behavior"
+ )
+-endif()
+\ No newline at end of file
++endif()
+--- a/cmake/external/zlib/CMakeLists.txt
++++ b/cmake/external/zlib/CMakeLists.txt
+@@ -7,6 +7,18 @@
+ add_library(external_zlib INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_zlib ALIAS external_zlib)
+
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++ find_package(ZLIB REQUIRED)
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(MINIZIP REQUIRED minizip)
++ find_library(minizip_LIBRARY minizip)
++ target_link_libraries(external_zlib INTERFACE ZLIB::ZLIB ${minizip_LIBRARY})
++ target_include_directories(external_zlib SYSTEM
++ INTERFACE
++ ${ZLIB_INCLUDE_DIR}
++ ${MINIZIP_INCLUDE_DIRS}
++ )
++else()
+ if (NOT WIN32)
+ add_library(external_minizip STATIC)
+ init_target(external_minizip "(external)")
+@@ -49,3 +61,4 @@
+ else()
+ target_link_static_libraries(external_zlib INTERFACE z)
+ endif()
++endif()
+--- a/cmake/init_target.cmake
++++ b/cmake/init_target.cmake
+@@ -27,7 +27,7 @@
+ endif()
+ target_link_libraries(${target_name} PUBLIC desktop-app::common_options)
+ set_target_properties(${target_name} PROPERTIES
+- LINK_SEARCH_START_STATIC 1
++ LINK_SEARCH_START_STATIC 0
+ XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_WEAK YES
+ XCODE_ATTRIBUTE_GCC_INLINES_ARE_PRIVATE_EXTERN YES
+ XCODE_ATTRIBUTE_GCC_SYMBOLS_PRIVATE_EXTERN YES
+--- a/cmake/options_linux.cmake
++++ b/cmake/options_linux.cmake
+@@ -25,6 +25,9 @@
+ -Wno-stringop-overflow
+ -Wno-maybe-uninitialized
+ -Wno-error=class-memaccess
++ -Wno-error=deprecated-copy
++ -Wno-error=deprecated-declarations
++ -Wno-error=redundant-move
+ )
+ target_link_options(common_options
+ INTERFACE
+@@ -33,8 +36,5 @@
+ if (build_linux32)
+ target_compile_options(common_options INTERFACE -g0)
+ target_link_options(common_options INTERFACE -g0)
+-else()
+- target_compile_options(common_options INTERFACE $<IF:$<CONFIG:Debug>,,-g -flto>)
+- target_link_options(common_options INTERFACE $<IF:$<CONFIG:Debug>,,-g -flto -fuse-linker-plugin>)
+ endif()
+
+--- a/cmake/variables.cmake
++++ b/cmake/variables.cmake
+@@ -10,6 +10,7 @@
+ option(DESKTOP_APP_LOTTIE_USE_CACHE "Use caching in lottie animations." ON)
+ option(DESKTOP_APP_USE_GLIBC_WRAPS "Use wraps for new GLIBC features." OFF)
+ option(DESKTOP_APP_USE_PACKAGED "Find libraries using CMake instead of exact paths." ON)
++option(DESKTOP_APP_USE_SYSTEM_LIBS "Use system libs where possible." OFF)
+
+ function(report_bad_special_target)
+ message(FATAL_ERROR "Bad special target '${DESKTOP_APP_SPECIAL_TARGET}'")
+@@ -59,8 +60,7 @@
+ set(DESKTOP_APP_USE_GLIBC_WRAPS OFF)
+ else()
+ set(LINUX 1)
+- execute_process(COMMAND uname -m OUTPUT_VARIABLE machine_uname)
+- if (NOT ${machine_uname} MATCHES "x86_64" AND NOT ${machine_uname} MATCHES "aarch64")
++ if (CMAKE_SIZEOF_VOID_P EQUAL 4)
+ set(build_linux32 1)
+ endif()
+ if (DESKTOP_APP_SPECIAL_TARGET STREQUAL "linux")
+--- a/cmake/external/lz4/CMakeLists.txt
++++ b/cmake/external/lz4/CMakeLists.txt
+@@ -4,8 +4,18 @@
+ # For license and copyright information please follow this link:
+ # https://github.com/desktop-app/legal/blob/master/LEGAL
+
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++ add_library(external_lz4 INTERFACE IMPORTED GLOBAL)
++ add_library(desktop-app::external_lz4 ALIAS external_lz4)
++
++ find_package(PkgConfig REQUIRED)
++ pkg_check_modules(LZ4 REQUIRED liblz4)
++ target_link_libraries(external_lz4 INTERFACE ${LZ4_LIBRARIES})
++ target_include_directories(external_lz4 SYSTEM INTERFACE ${LZ4_INCLUDE_DIRS})
++else()
+ add_library(external_lz4 OBJECT)
+ add_library(desktop-app::external_lz4 ALIAS external_lz4)
++
+ init_target(external_lz4 "(external)")
+
+ set(lz4_loc ${third_party_loc}/lz4/lib)
+@@ -27,3 +37,4 @@
+ PUBLIC
+ ${lz4_loc}
+ )
++endif()
+--- a/cmake/external/xxhash/CMakeLists.txt
++++ b/cmake/external/xxhash/CMakeLists.txt
+@@ -7,6 +7,10 @@
+ add_library(external_xxhash INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_xxhash ALIAS external_xxhash)
+
++if(DESKTOP_APP_USE_SYSTEM_LIBS)
++ find_library(xxhash_LIBRARIES xxhash)
++ target_link_libraries(external_xxhash INTERFACE ${xxhash_LIBRARIES})
++else()
+ target_include_directories(external_xxhash SYSTEM
+ INTERFACE
+ ${third_party_loc}/xxHash
+@@ -16,3 +20,4 @@
+ INTERFACE
+ XXH_INLINE_ALL
+ )
++endif()
Copied: telegram-desktop/repos/community-testing-x86_64/0002-Dynamic-linking-system-qt.patch (from rev 549799, telegram-desktop/trunk/0002-Dynamic-linking-system-qt.patch)
===================================================================
--- community-testing-x86_64/0002-Dynamic-linking-system-qt.patch (rev 0)
+++ community-testing-x86_64/0002-Dynamic-linking-system-qt.patch 2020-01-07 04:43:53 UTC (rev 549800)
@@ -0,0 +1,165 @@
+From 85ae791a9ebf5a2603f12d2a6e2d75549a01d701 Mon Sep 17 00:00:00 2001
+From: John Zimmermann <johnz at posteo.net>
+Date: Thu, 2 Jan 2020 12:38:39 +0100
+Subject: [PATCH] Dynamic linking
+
+---
+ Telegram/CMakeLists.txt | 7 +-
+ Telegram/SourceFiles/core/launcher.cpp | 8 +++
+ Telegram/SourceFiles/qt_functions.cpp | 96 ++++++++++++++++++++++++++
+ 3 files changed, 107 insertions(+), 4 deletions(-)
+ create mode 100644 Telegram/SourceFiles/qt_functions.cpp
+
+--- a/Telegram/CMakeLists.txt
++++ b/Telegram/CMakeLists.txt
+@@ -934,9 +934,9 @@
+ mainwidget.h
+ mainwindow.cpp
+ mainwindow.h
++ qt_functions.cpp
+ observer_peer.cpp
+ observer_peer.h
+- qt_static_plugins.cpp
+ settings.cpp
+ settings.h
+ )
+@@ -1104,13 +1104,12 @@
+ PRIVATE
+ TDESKTOP_API_ID=${TDESKTOP_API_ID}
+ TDESKTOP_API_HASH=${TDESKTOP_API_HASH}
+- AL_LIBTYPE_STATIC
+ AL_ALEXT_PROTOTYPES
+ )
+
+-if (${CMAKE_GENERATOR} MATCHES "(Visual Studio|Xcode|Ninja)")
++if ((${CMAKE_GENERATOR} MATCHES "(Visual Studio|Xcode)") OR ((${CMAKE_GENERATOR} MATCHES "(Ninja)") AND (NOT ${DESKTOP_APP_SPECIAL_TARGET} STREQUAL "")))
+ set(output_folder ${CMAKE_BINARY_DIR})
+-elseif((${CMAKE_GENERATOR} MATCHES "(Unix Makefiles)") AND DESKTOP_APP_SPECIAL_TARGET STREQUAL "")
++elseif((${CMAKE_GENERATOR} MATCHES "(Unix Makefiles|Ninja)") AND DESKTOP_APP_SPECIAL_TARGET STREQUAL "")
+ set(output_folder ${CMAKE_BINARY_DIR}/bin)
+ else()
+ set(output_folder ${CMAKE_BINARY_DIR}/$<IF:$<CONFIG:Debug>,Debug,Release>)
+--- /dev/null
++++ b/Telegram/SourceFiles/qt_functions.cpp
+@@ -0,0 +1,96 @@
++/****************************************************************************
++**
++** 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$
++**
++****************************************************************************/
++
++#include <private/qfontengine_p.h>
++
++/* 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;
++}
+--- a/Telegram/SourceFiles/main.cpp
++++ b/Telegram/SourceFiles/main.cpp
+@@ -8,6 +8,13 @@
+ #include "core/launcher.h"
+
+ int main(int argc, char *argv[]) {
++ // Telegram doesn't start when platform theme is set, see launchpad.net/bugs/1680943
++ unsetenv("QT_QPA_PLATFORMTHEME");
++ // unset QT screen scale related envvars, see bugs.archlinux.org/task/62594
++ unsetenv("QT_SCREEN_SCALE_FACTORS");
++ unsetenv("QT_AUTO_SCREEN_SCALE_FACTOR");
++ unsetenv("QT_SCALE_FACTOR");
++ unsetenv("QT_DEVICE_PIXEL_RATIO");
+ const auto launcher = Core::Launcher::Create(argc, argv);
+ return launcher ? launcher->exec() : 1;
+ }
+--- a/Telegram/lib_ui/qt_conf/linux.qrc
++++ b/Telegram/lib_ui/qt_conf/linux.qrc
+@@ -1,6 +1,5 @@
+ <RCC>
+ <qresource prefix="/qt/etc">
+- <file alias="qt.conf">qt_linux.conf</file>
+ </qresource>
+ <qresource prefix="/fc">
+ <file>fc-custom.conf</file>
Copied: telegram-desktop/repos/community-testing-x86_64/0004-gtk3.patch (from rev 549799, telegram-desktop/trunk/0004-gtk3.patch)
===================================================================
--- community-testing-x86_64/0004-gtk3.patch (rev 0)
+++ community-testing-x86_64/0004-gtk3.patch 2020-01-07 04:43:53 UTC (rev 549800)
@@ -0,0 +1,22 @@
+From ef30081973681f4f8d261917fa763b00adfbe6e9 Mon Sep 17 00:00:00 2001
+From: John Zimmermann <johnz at posteo.net>
+Date: Thu, 2 Jan 2020 13:10:31 +0100
+Subject: [PATCH] gtk3
+
+---
+ Telegram/CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/Telegram/CMakeLists.txt
++++ b/Telegram/CMakeLists.txt
+@@ -1018,8 +1018,8 @@
+ if (NOT TDESKTOP_DISABLE_GTK_INTEGRATION)
+ find_package(PkgConfig REQUIRED)
+
+- pkg_check_modules(GTK2 REQUIRED gtk+-2.0)
+- target_include_directories(Telegram PRIVATE ${GTK2_INCLUDE_DIRS})
++ pkg_check_modules(GTK3 REQUIRED gtk+-3.0)
++ target_include_directories(Telegram PRIVATE ${GTK3_INCLUDE_DIRS})
+ target_compile_options(Telegram PRIVATE -Wno-register)
+
+ set(appindicator_packages
Copied: telegram-desktop/repos/community-testing-x86_64/0005-Use-system-wide-fonts.patch (from rev 549799, telegram-desktop/trunk/0005-Use-system-wide-fonts.patch)
===================================================================
--- community-testing-x86_64/0005-Use-system-wide-fonts.patch (rev 0)
+++ community-testing-x86_64/0005-Use-system-wide-fonts.patch 2020-01-07 04:43:53 UTC (rev 549800)
@@ -0,0 +1,64 @@
+Do not force custom fontconfig configuration.
+--- a/Telegram/lib_ui/fonts/fonts.qrc
++++ b/Telegram/lib_ui/fonts/fonts.qrc
+@@ -1,10 +1,4 @@
+ <RCC>
+ <qresource prefix="/gui/fonts">
+- <file>DAOpenSansRegular.ttf</file>
+- <file>DAOpenSansRegularItalic.ttf</file>
+- <file>DAOpenSansBold.ttf</file>
+- <file>DAOpenSansBoldItalic.ttf</file>
+- <file>DAOpenSansSemibold.ttf</file>
+- <file>DAOpenSansSemiboldItalic.ttf</file>
+ </qresource>
+ </RCC>
+--- a/Telegram/lib_ui/ui/style/style_core_font.cpp
++++ b/Telegram/lib_ui/ui/style/style_core_font.cpp
+@@ -94,12 +94,12 @@
+ FontTypesCount,
+ };
+ QString FontTypeNames[FontTypesCount] = {
+- "DAOpenSansRegular",
+- "DAOpenSansRegularItalic",
+- "DAOpenSansBold",
+- "DAOpenSansBoldItalic",
+- "DAOpenSansSemibold",
+- "DAOpenSansSemiboldItalic",
++ "Open Sans",
++ "Open Sans",
++ "Open Sans",
++ "Open Sans",
++ "Open Sans Semibold",
++ "Open Sans Semibold",
+ };
+ int32 FontTypeFlags[FontTypesCount] = {
+ 0,
+@@ -135,7 +135,7 @@
+ for (auto i = 0; i != FontTypesCount; ++i) {
+ const auto name = FontTypeNames[i];
+ const auto flags = FontTypeFlags[i];
+- areGood[i] = LoadCustomFont(":/gui/fonts/" + name + ".ttf", name, flags);
++ areGood[i] = ValidateFont(name, flags);
+ Overrides[i] = name;
+ #ifdef Q_OS_WIN
+ // Attempt to workaround a strange font bug with Open Sans Semibold not loading.
+--- a/Telegram/SourceFiles/platform/linux/specific_linux.cpp
++++ b/Telegram/SourceFiles/platform/linux/specific_linux.cpp
+@@ -82,8 +82,6 @@
+ return;
+ }
+ }
+-
+- QFile(":/fc/fc-custom.conf").copy(custom);
+ #endif // TDESKTOP_DISABLE_DESKTOP_FILE_GENERATION
+ }
+
+--- a/Telegram/lib_ui/qt_conf/linux.qrc
++++ b/Telegram/lib_ui/qt_conf/linux.qrc
+@@ -2,6 +2,5 @@
+ <qresource prefix="/qt/etc">
+ </qresource>
+ <qresource prefix="/fc">
+- <file>fc-custom.conf</file>
+ </qresource>
+ </RCC>
Copied: telegram-desktop/repos/community-testing-x86_64/0006-Revert-Disable-DemiBold-fallback-for-Semibold.patch (from rev 549799, telegram-desktop/trunk/0006-Revert-Disable-DemiBold-fallback-for-Semibold.patch)
===================================================================
--- community-testing-x86_64/0006-Revert-Disable-DemiBold-fallback-for-Semibold.patch (rev 0)
+++ community-testing-x86_64/0006-Revert-Disable-DemiBold-fallback-for-Semibold.patch 2020-01-07 04:43:53 UTC (rev 549800)
@@ -0,0 +1,25 @@
+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/lib_ui/ui/style/style_core_font.cpp | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/Telegram/lib_ui/ui/style/style_core_font.cpp
++++ b/Telegram/lib_ui/ui/style/style_core_font.cpp
+@@ -225,9 +225,9 @@
+
+ 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);
Copied: telegram-desktop/repos/community-testing-x86_64/PKGBUILD (from rev 549799, telegram-desktop/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD (rev 0)
+++ community-testing-x86_64/PKGBUILD 2020-01-07 04:43:53 UTC (rev 549800)
@@ -0,0 +1,100 @@
+# 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.9.3
+pkgrel=1
+pkgdesc='Official Telegram Desktop client'
+arch=('x86_64')
+url="https://desktop.telegram.org/"
+license=('GPL3')
+depends=(
+ 'enchant'
+ 'ffmpeg'
+ 'hicolor-icon-theme'
+ 'lz4'
+ 'minizip'
+ 'openal'
+ 'qt5-imageformats'
+ 'xxhash'
+)
+makedepends=(
+ 'cmake'
+ 'git'
+ 'libappindicator-gtk3'
+ 'ninja'
+ 'python'
+ 'quilt'
+ 'range-v3'
+)
+optdepends=(
+ 'libnotify: desktop notifications'
+ 'ttf-opensans: default Open Sans font family'
+ 'libappindicator-gtk3: AppIndicator-based tray icon'
+)
+source=(
+ "https://github.com/telegramdesktop/tdesktop/releases/download/v${pkgver}/tdesktop-${pkgver}-full.tar.gz"
+ "tg.protocol"
+ "0001-Dynamic-linking-system-libs.patch"
+ "0002-Dynamic-linking-system-qt.patch"
+ "0004-gtk3.patch"
+ "0005-Use-system-wide-fonts.patch"
+ "0006-Revert-Disable-DemiBold-fallback-for-Semibold.patch"
+ "series"
+)
+sha512sums=('af8e5d2c74d0b990958edd75a01f40b70bc21c0f69074acfb943f44fdb1f1e84465b461765a1a584513e54ab30045817b42b6839ad16cb4c1043fda89ea600f7'
+ 'b87414ceaae19185a8a5749cea1f6d9f3fc3c69b8dd729e3db8790cde00b987c3c827cd30baf0eac579d1884e34aa2f37bb90778c3c0bc9ca211d75a82891b9d'
+ '69fc5b50d2663af0c0bb539a6ac4b3d8996282f1701f484b9d1e29ddbd6eec942c999ee2f77d7effed13d4ecdd62e03e6ff064be0948ff91124962cc17c57143'
+ '5675787e849a811679b24e86b64e651c1aded56853e52c9455d8d914b85c153b63287a0d41aaa4c39c0e805ee1f411132431340d7aba99b11fcd1036e8d37680'
+ '8c3f48536ff3878baa73949057960eb5c8fcf3f152141c42740a7c0f2fc96c1708511a5d4ffe45ae9e20a08f88a3c2c77163a0a2050d7fca4356e4d2a96dfaf1'
+ 'd5fa5290b7041cb972c78066ca60d1cbc2bb3de10bf571ca1a639bf05abfa029531ffc0facba0564d39e32f89301960f4879b35bb9ac362ae9264d0a8c5c835c'
+ '41f22a8b63b1929288cca5638c2719ce9754aa4334deb9004370c44f780fb8ac57f2b4075d529c494f4eac49dde22885f0f9efc0911840f79cb5fcf8d737061d'
+ '17d831ce49ef522bae3558c679dda3eb1d84d69be40d9942f1ec2dc9fe32960b1233b072b09c107e5fc704c4a9286010f2cdd5e9830a2bdad97d3cb24b502ebe')
+
+prepare() {
+ cd "$srcdir/tdesktop-$pkgver-full"
+
+ QUILT_PATCHES=.. quilt --quiltrc=/dev/null push -a
+}
+
+build() {
+ cd "$srcdir/tdesktop-$pkgver-full"
+ mkdir build
+ export CXXFLAGS="$CXXFLAGS -ffile-prefix-map=$srcdir/tdesktop-$pkgver-full="
+ cmake -B build -G Ninja . \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DTDESKTOP_API_ID=17349 \
+ -DTDESKTOP_API_HASH=344583e45741c457fe1862106095a5eb \
+ -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF \
+ -DDESKTOP_APP_USE_SYSTEM_LIBS=ON \
+ -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON \
+ -DTDESKTOP_DISABLE_AUTOUPDATE=ON \
+ -DTDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME=ON \
+ -DTDESKTOP_DISABLE_DESKTOP_FILE_GENERATION=ON \
+ -DDESKTOP_APP_SPECIAL_TARGET=""
+ ninja -C build
+}
+
+package() {
+ cd "$srcdir/tdesktop-$pkgver-full/"
+ install -dm755 "$pkgdir/usr/bin"
+ install -m755 "build/bin/Telegram" "$pkgdir/usr/bin/telegram-desktop"
+
+ install -d "$pkgdir/usr/share/applications"
+ install -m644 "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 "Telegram/Resources/art/icon${icon_size}.png" "$icon_dir/telegram.png"
+ done
+}
Copied: telegram-desktop/repos/community-testing-x86_64/series (from rev 549799, telegram-desktop/trunk/series)
===================================================================
--- community-testing-x86_64/series (rev 0)
+++ community-testing-x86_64/series 2020-01-07 04:43:53 UTC (rev 549800)
@@ -0,0 +1,5 @@
+0001-Dynamic-linking-system-libs.patch
+0002-Dynamic-linking-system-qt.patch
+0004-gtk3.patch
+0005-Use-system-wide-fonts.patch
+0006-Revert-Disable-DemiBold-fallback-for-Semibold.patch
Copied: telegram-desktop/repos/community-testing-x86_64/tg.protocol (from rev 549799, telegram-desktop/trunk/tg.protocol)
===================================================================
--- community-testing-x86_64/tg.protocol (rev 0)
+++ community-testing-x86_64/tg.protocol 2020-01-07 04:43:53 UTC (rev 549800)
@@ -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