diff options
Diffstat (limited to 'net-im/telegram-desktop')
-rw-r--r-- | net-im/telegram-desktop/Manifest | 10 | ||||
-rw-r--r-- | net-im/telegram-desktop/files/no-webrtc-build.patch | 96 | ||||
-rw-r--r-- | net-im/telegram-desktop/files/tdesktop-2.7.1-fix-disable-dbus-integration.patch | 17 | ||||
-rw-r--r-- | net-im/telegram-desktop/metadata.xml | 2 | ||||
-rw-r--r-- | net-im/telegram-desktop/telegram-desktop-2.4.11.ebuild | 174 | ||||
-rw-r--r-- | net-im/telegram-desktop/telegram-desktop-2.4.7-r1.ebuild | 173 | ||||
-rw-r--r-- | net-im/telegram-desktop/telegram-desktop-2.7.1-r2.ebuild (renamed from net-im/telegram-desktop/telegram-desktop-2.7.1-r1.ebuild) | 12 |
7 files changed, 28 insertions, 456 deletions
diff --git a/net-im/telegram-desktop/Manifest b/net-im/telegram-desktop/Manifest index 51d0214072f3..385024ba75dc 100644 --- a/net-im/telegram-desktop/Manifest +++ b/net-im/telegram-desktop/Manifest @@ -1,9 +1,5 @@ AUX fix-tgcalls-gcc10.patch 949 BLAKE2B 7a065fcbf5b8e7b49b6b866d199c67315484312ca527a517a09f890f09d39fa0c97787c586990ba92c0ce2ee83e7c2387eef100f630a74f003ddc06adb93c379 SHA512 dbc61a8520f3698fdeec6c9849cfd8241b8b778589f89277f82d6c748d8ed7a81db90daa0a69dedc3ab2b81bba848ee68e1df79a9cb3fb055f99bd7d19f46e5d -AUX no-webrtc-build.patch 3656 BLAKE2B b8a8da9e4e6762b2901c2e3307a0289eb32447bc8439c4a6e0aac8c11a4636f7b3de5d14aa98ea806003d6856058f4aefb7bbeae67d5235437b3f0918ae4de4c SHA512 26893ffa97538dfd060373dd052637513c6805c1e6b149a63f1c329a0da4f541f7457832d54397f19d5a3d54e1fbe39628697648f170801ed459fa4d84cb75f4 -DIST tdesktop-2.4.11-full.tar.gz 36405312 BLAKE2B 7c4239d4a2193c910aeb918f40d4c196702bffb4236f7702a5573840b8d4a1a9183e3c91fd97c5d9e4ab5950d96e99b427746ffb18ed5bbef16b240dfc873e2e SHA512 b6452c39ea1b1b794c61ec2fc700356c9ee314250d73b895d297ad66602a93676d3cf74d695ac53965719ddb54da9e290f4f638bbf2e0fb21fec8995b6788a1c -DIST tdesktop-2.4.7-full.tar.gz 36355613 BLAKE2B 5b60bddd81d5472aaa303817be280604d5dcb4a5f7260c6b6fbd7ca075a46972adb4439e58e2f5b7877c10b3cb6420a7bc95ffe36ab0b3cf531a46758046f7c1 SHA512 712ab6896f89f7df0c7ac297039ee3b3532c159e17f66e4539b701a35d04d4709b558755d592d3cd91df541a2d2ca9f0485cf073c32f0b69a18848ab2ccd1993 +AUX tdesktop-2.7.1-fix-disable-dbus-integration.patch 632 BLAKE2B 92aa9006febe4cb52e4273233f8592827e5d74afebc9d996c41cfc33588c0040b3b573a3730d0541ba8e0641e6733c491861c1bb60a5dc0f26f53b7941bf4572 SHA512 74557a9ac798f47d76cc9a0a514d3891c1a9f3c0667d5938be11d53d44704390dbf97d1e7be3c304cce2c9b8e3110ee04e6759ed28bf5f39d1cfee9f5c77f703 DIST tdesktop-2.7.1-full.tar.gz 36770178 BLAKE2B 21379cc970da07725e7a46d18a4f0bc459b1da1b730587595448b8f78133ce701e374e7faefc649a973342c203eee510872b5a4ed2ff6be92daec25157e400a4 SHA512 dffd184c4369c5c5947b1ca085add533e54313ce39aebcdca4f0958431a305aa5e95c2f2b48592f6992e666b2d33eeba5697f9e09f6048a53b807f2950fbd17b -EBUILD telegram-desktop-2.4.11.ebuild 4962 BLAKE2B de08c0f5aa2c05e8da4d69383d1a9505d1450dab747a8180b6972f6c911749424aadea83c3c03d6b2dbf180c6db68504b019d330cbbb3d19ddc09c413ca29bd6 SHA512 2cd0787ea12c93115e51daef50b67cd9e4cd419ef59b908c3a960e218301269eef26f57239964cdf043b309d4e2a33bf6f4a69929b047cd14bce0a72f565c04a -EBUILD telegram-desktop-2.4.7-r1.ebuild 4879 BLAKE2B 424614c2d79701c27eaa4c4d384511467567a5540bc5bbe46155f9eef2ef8003f5b8436e6dd2bab7b66ea3baa9993675caf1d1b551436bcd4a76f6ea66ba95bc SHA512 8b2d9207c431c98aef31703a2f20364249a8d274e2240255463a72238ab78ba0de4a9b33b0edfadb3477d65118b1997445e63c0f8e1f20d9bb3789ce76b0a2e0 -EBUILD telegram-desktop-2.7.1-r1.ebuild 3874 BLAKE2B fca84e42647038f6f98d091b0f2f20095bbd8e1a1b4fb6e4ede57fd6792968c1f907f7cf7d89507b13763d1f5f6a43972ecaf2a889dfef81aee7765440e6d6fd SHA512 9fbd445d56b8771a42e9528c444711d1a09b40607100da5a9e5c0431ec13fa49c3e0ef77b94b9a929171a7b29ee629183a0210859138b906806c861cf0c2d1a8 -MISC metadata.xml 759 BLAKE2B b01ed885c14db59c7a87e43dbe333237dc26639588d87a6b3e55ea26370d0d398cd18dbae153785dec857b6335b5c545506ed4f00f80cef22ef6760f0d79e44c SHA512 1a39987adab83f036869008a8aba7769a0f2080fd0337b7a068c17a345038dc4c63086f84629b0da17e6bc858a8fc81e1942a6035ed16eca2ec28126ef4dbac3 +EBUILD telegram-desktop-2.7.1-r2.ebuild 3964 BLAKE2B 17cc8bf8075b3cbe21f7c8bfd75b8bc5c20cf1598f7c511457c42886ffc154d2478a58b9dcb670eaf81ca7f900f154fe126a8d0d4a201c355bffb2f193287878 SHA512 71c7b9e3ab2892991e3fa01bf68d41041d11e61fe6ee8de829ff0ba4aa3ba5b2dbe905f0bfe7b4c116f3a7f0e36ca40ffaf374a552c4467a593042451d1f22c8 +MISC metadata.xml 587 BLAKE2B 1f49c91d650d26ba9fd95e9cbcb793ed527d58bf0ccc81ebddb624d54c4af38cc7aff3cf799814932a69b2a6f36dad7fe1c5ce4eb82e562e46dcebca9b751308 SHA512 5e74bb555b2b1a513bd8c7450a3db2f46daa426eecc0d3cebf11d46e58124ef117697bc422f7fccd8757f2e6e8ce6bd8ff0e317b58740dd302c1ea2f2476ff3f diff --git a/net-im/telegram-desktop/files/no-webrtc-build.patch b/net-im/telegram-desktop/files/no-webrtc-build.patch deleted file mode 100644 index 8ae4113f4406..000000000000 --- a/net-im/telegram-desktop/files/no-webrtc-build.patch +++ /dev/null @@ -1,96 +0,0 @@ -diff --git a/Telegram/SourceFiles/calls/calls_instance.cpp b/Telegram/SourceFiles/calls/calls_instance.cpp -index e99958109..bb7678d3c 100644 ---- a/Telegram/SourceFiles/calls/calls_instance.cpp -+++ b/Telegram/SourceFiles/calls/calls_instance.cpp -@@ -350,8 +350,11 @@ std::shared_ptr<tgcalls::VideoCaptureInterface> Instance::getVideoCapture() { - return result; - } - auto result = std::shared_ptr<tgcalls::VideoCaptureInterface>( -+ #ifndef DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION - tgcalls::VideoCaptureInterface::Create( -- Core::App().settings().callVideoInputDeviceId().toStdString())); -+ Core::App().settings().callVideoInputDeviceId().toStdString()) -+ #endif -+ ); - _videoCapture = result; - return result; - } -diff --git Telegram/lib_webrtc/CMakeLists.txt b/CMakeLists.txt -index 47796f1..1f54c21 100644 ---- a/Telegram/lib_webrtc/CMakeLists.txt -+++ b/Telegram/lib_webrtc/CMakeLists.txt -@@ -14,8 +14,10 @@ target_precompile_headers(lib_webrtc PRIVATE ${src_loc}/webrtc/webrtc_pch.h) - nice_target_sources(lib_webrtc ${src_loc} - PRIVATE - webrtc/webrtc_audio_input_tester.cpp -+ webrtc/webrtc_audio_input_tester_dummy.cpp - webrtc/webrtc_audio_input_tester.h - webrtc/webrtc_media_devices.cpp -+ webrtc/webrtc_media_devices_dummy.cpp - webrtc/webrtc_media_devices.h - webrtc/webrtc_video_track.cpp - webrtc/webrtc_video_track.h -@@ -40,10 +42,14 @@ PUBLIC - if (DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION) - remove_target_sources(lib_webrtc ${src_loc} - webrtc/webrtc_video_track.cpp -+ webrtc/webrtc_media_devices.cpp -+ webrtc/webrtc_audio_input_tester.cpp - ) - else() - remove_target_sources(lib_webrtc ${src_loc} - webrtc/webrtc_video_track_dummy.cpp -+ webrtc/webrtc_media_devices_dummy.cpp -+ webrtc/webrtc_audio_input_tester_dummy.cpp - ) - target_link_libraries(lib_webrtc - PRIVATE -diff --git Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester.h b/webrtc/webrtc_audio_input_tester.h -index 1ae8d30..008df7e 100644 ---- a/Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester.h -+++ b/Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester.h -@@ -20,11 +20,13 @@ public: - [[nodiscard]] float getAndResetLevel(); - - private: -+#ifndef DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION - class Impl; -- -+#endif - std::shared_ptr<std::atomic<int>> _maxSample; -+#ifndef DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION - crl::object_on_thread<Impl> _impl; -- -+#endif - }; - - } // namespace Webrtc -diff --git Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester_dummy.cpp b/webrtc/webrtc_audio_input_tester_dummy.cpp -new file mode 100644 -index 0000000..4e47eaa ---- a//dev/null -+++ b/Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester_dummy.cpp -@@ -0,0 +1,11 @@ -+#include "webrtc/webrtc_audio_input_tester.h" -+ -+namespace Webrtc { -+AudioInputTester::AudioInputTester(const QString &deviceId) -+: _maxSample(std::make_shared<std::atomic<int>>(0)) {} -+AudioInputTester::~AudioInputTester() {} -+void AudioInputTester::setDeviceId(const QString &deviceId) {}; -+float AudioInputTester::getAndResetLevel() { -+ return _maxSample->exchange(0) / float(INT16_MAX);\ -+} -+} -diff --git Telegram/lib_webrtc/webrtc/webrtc_media_devices_dummy.cpp b/webrtc/webrtc_media_devices_dummy.cpp -new file mode 100644 -index 0000000..8d5d245 ---- a/dev/null -+++ b/Telegram/lib_webrtc/webrtc/webrtc_media_devices_dummy.cpp -@@ -0,0 +1,6 @@ -+#include "webrtc/webrtc_media_devices.h" -+namespace Webrtc { -+std::vector<VideoInput> GetVideoInputList() { return std::vector<VideoInput>(); }; -+std::vector<AudioInput> GetAudioInputList() { return std::vector<AudioInput>(); }; -+std::vector<AudioOutput> GetAudioOutputList() { return std::vector<AudioOutput>(); }; -+} diff --git a/net-im/telegram-desktop/files/tdesktop-2.7.1-fix-disable-dbus-integration.patch b/net-im/telegram-desktop/files/tdesktop-2.7.1-fix-disable-dbus-integration.patch new file mode 100644 index 000000000000..5351a808ec4c --- /dev/null +++ b/net-im/telegram-desktop/files/tdesktop-2.7.1-fix-disable-dbus-integration.patch @@ -0,0 +1,17 @@ +Index: tdesktop-2.7.1-full/Telegram/SourceFiles/platform/linux/specific_linux.cpp +=================================================================== +--- tdesktop-2.7.1-full.orig/Telegram/SourceFiles/platform/linux/specific_linux.cpp ++++ tdesktop-2.7.1-full/Telegram/SourceFiles/platform/linux/specific_linux.cpp +@@ -754,10 +754,12 @@ void InstallLauncher(bool force) { + + void RegisterCustomScheme(bool force) { + try { ++#ifndef DESKTOP_APP_DISABLE_DBUS_INTEGRATION + if (InSnap()) { + SnapDefaultHandler(qsl("tg")); + return; + } ++#endif // !DESKTOP_APP_DISABLE_DBUS_INTEGRATION + + if (cExeName().isEmpty()) { + return; diff --git a/net-im/telegram-desktop/metadata.xml b/net-im/telegram-desktop/metadata.xml index 81134efc2a6b..bb15e2ab9e52 100644 --- a/net-im/telegram-desktop/metadata.xml +++ b/net-im/telegram-desktop/metadata.xml @@ -12,7 +12,5 @@ <use> <flag name="enchant">Enable the app-text/aspell spell-checking backend</flag> <flag name="hunspell">Enable the app-text/hunspell spell-checking backend</flag> - <flag name="lto">Enable Link Time Optimization (LTO / IPO)</flag> - <flag name="webrtc">WebRTC based audio/video call support ( via <pkg>media-libs/tg_owt</pkg> )</flag> </use> </pkgmetadata> diff --git a/net-im/telegram-desktop/telegram-desktop-2.4.11.ebuild b/net-im/telegram-desktop/telegram-desktop-2.4.11.ebuild deleted file mode 100644 index c0423ed32f19..000000000000 --- a/net-im/telegram-desktop/telegram-desktop-2.4.11.ebuild +++ /dev/null @@ -1,174 +0,0 @@ -# Copyright 2020-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8,9} ) - -inherit cmake desktop flag-o-matic ninja-utils python-any-r1 xdg-utils - -MY_P="tdesktop-${PV}-full" - -DESCRIPTION="Official desktop client for Telegram" -HOMEPAGE="https://desktop.telegram.org" -SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz" - -LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" -SLOT="0" -KEYWORDS="amd64 ~ppc64" -IUSE="+dbus enchant +gtk +hunspell libressl lto pulseaudio +spell wayland +webrtc +X" - -RDEPEND=" - !net-im/telegram-desktop-bin - app-arch/lz4:= - app-arch/xz-utils - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - dev-libs/xxhash - dev-qt/qtcore:5 - dev-qt/qtgui:5[dbus?,jpeg,png,wayland?,X(-)?] - dev-qt/qtimageformats:5 - dev-qt/qtnetwork:5 - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5[png,X(-)?] - media-fonts/open-sans - media-libs/alsa-lib - media-libs/fontconfig:= - ~media-libs/libtgvoip-2.4.4_p20201030[pulseaudio=] - media-libs/openal[alsa] - media-libs/opus:= - media-video/ffmpeg:=[alsa,opus] - sys-libs/zlib[minizip] - virtual/libiconv - x11-libs/libxcb:= - dbus? ( - dev-qt/qtdbus:5 - dev-libs/libdbusmenu-qt[qt5(+)] - ) - enchant? ( app-text/enchant:= ) - gtk? ( - dev-libs/glib:2 - x11-libs/gdk-pixbuf:2[jpeg] - x11-libs/gtk+:3[X?] - x11-libs/libX11 - ) - hunspell? ( >=app-text/hunspell-1.7:= ) - !pulseaudio? ( media-sound/apulse[sdk] ) - pulseaudio? ( media-sound/pulseaudio ) - webrtc? ( - media-libs/libjpeg-turbo:= - ~media-libs/tg_owt-0_pre20201112[pulseaudio=] - ) -" - -DEPEND=" - ${PYTHON_DEPS} - ${RDEPEND} - dev-cpp/range-v3 - =dev-cpp/ms-gsl-3* -" - -BDEPEND=" - >=dev-util/cmake-3.16 - virtual/pkgconfig - amd64? ( dev-lang/yasm ) -" - -REQUIRED_USE=" - spell? ( - ^^ ( enchant hunspell ) - ) - webrtc? ( !libressl ) -" - -S="${WORKDIR}/${MY_P}" - -pkg_pretend() { - if has ccache ${FEATURES}; then - ewarn - ewarn "ccache does not work with ${PN} out of the box" - ewarn "due to usage of precompiled headers" - ewarn "check bug https://bugs.gentoo.org/715114 for more info" - ewarn - fi -} - -src_prepare() { - # conditional patching is bad, but we want vanilla telegram with webrtc. - use webrtc || local PATCHES=( "${FILESDIR}/no-webrtc-build.patch" ) - - # no explicit toggle #752417 - sed -i 's/DESKTOP_APP_USE_PACKAGED/NO_ONE_WILL_EVER_SET_THIS/' \ - cmake/external/rlottie/CMakeLists.txt || die - - cmake_src_prepare -} - -src_configure() { - local mycxxflags=( - -Wno-deprecated-declarations - -Wno-error=deprecated-declarations - -Wno-switch - -Wno-unknown-warning-option - ) - - append-cxxflags "${mycxxflags[@]}" - - # TODO: unbundle header-only libs, ofc telegram uses git versions... - # it fals with tl-expected-1.0.0, so we use bundled for now to avoid git rev snapshots - # EXPECTED VARIANT - # gtk is really needed for image copy-paste due to https://bugreports.qt.io/browse/QTBUG-56595 - local mycmakeargs=( - -DCMAKE_DISABLE_FIND_PACKAGE_tl-expected=ON # header only lib, some git version. prevents warnings. - -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON - -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF - -DDESKTOP_APP_USE_PACKAGED=ON - -DDESKTOP_APP_USE_PACKAGED_FONTS=ON - -DTDESKTOP_DISABLE_GTK_INTEGRATION="$(usex gtk OFF ON)" - -DTDESKTOP_LAUNCHER_BASENAME="${PN}" - -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)" - -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)" # enables hunspell (recommended) - -DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION="$(usex wayland OFF ON)" - -DDESKTOP_APP_DISABLE_WEBRTC_INTEGRATION="$(usex webrtc OFF ON)" - -DDESKTOP_APP_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell - $(usex lto "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON" '') - ) - - if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then - einfo "Found custom API credentials" - mycmakeargs+=( - -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}" - -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}" - ) - else - # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml - # Building with snapcraft API credentials by default - # Custom API credentials can be obtained here: - # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md - # After getting credentials you can export variables: - # export MY_TDESKTOP_API_ID="17349"" - # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb" - # and restart the build" - # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop - # portage will use custom variable every build automatically - mycmakeargs+=( - -DTDESKTOP_API_ID="611335" - -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c" - ) - fi - - cmake_src_configure -} - -pkg_postinst() { - xdg_desktop_database_update - xdg_icon_cache_update - xdg_mimeinfo_database_update - use gtk || einfo "enable 'gtk' useflag if you have image copy-paste problems" -} - -pkg_postrm() { - xdg_desktop_database_update - xdg_icon_cache_update - xdg_mimeinfo_database_update -} diff --git a/net-im/telegram-desktop/telegram-desktop-2.4.7-r1.ebuild b/net-im/telegram-desktop/telegram-desktop-2.4.7-r1.ebuild deleted file mode 100644 index 57c34aa583f0..000000000000 --- a/net-im/telegram-desktop/telegram-desktop-2.4.7-r1.ebuild +++ /dev/null @@ -1,173 +0,0 @@ -# Copyright 2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{7,8,9} ) - -inherit cmake desktop flag-o-matic ninja-utils python-any-r1 xdg-utils - -MY_P="tdesktop-${PV}-full" - -DESCRIPTION="Official desktop client for Telegram" -HOMEPAGE="https://desktop.telegram.org" -SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz" - -LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" -SLOT="0" -KEYWORDS="amd64 ~ppc64" -IUSE="+dbus enchant +gtk +hunspell libressl lto pulseaudio +spell +webrtc +X" - -RDEPEND=" - !net-im/telegram-desktop-bin - app-arch/lz4:= - app-arch/xz-utils - !libressl? ( dev-libs/openssl:0= ) - libressl? ( dev-libs/libressl:0= ) - dev-libs/xxhash - dev-qt/qtcore:5 - dev-qt/qtgui:5[dbus?,jpeg,png,wayland,X(-)?] - dev-qt/qtimageformats:5 - dev-qt/qtnetwork:5 - dev-qt/qtsvg:5 - dev-qt/qtwidgets:5[png,X(-)?] - media-fonts/open-sans - media-libs/alsa-lib - media-libs/fontconfig:= - ~media-libs/libtgvoip-2.4.4_p20201030[pulseaudio=] - media-libs/openal[alsa] - media-libs/opus:= - media-video/ffmpeg:=[alsa,opus] - sys-libs/zlib[minizip] - virtual/libiconv - x11-libs/libxcb:= - dbus? ( - dev-qt/qtdbus:5 - dev-libs/libdbusmenu-qt[qt5(+)] - ) - enchant? ( app-text/enchant:= ) - gtk? ( - dev-libs/glib:2 - x11-libs/gdk-pixbuf:2[jpeg] - x11-libs/gtk+:3[X?] - x11-libs/libX11 - ) - hunspell? ( >=app-text/hunspell-1.7:= ) - !pulseaudio? ( media-sound/apulse[sdk] ) - pulseaudio? ( media-sound/pulseaudio ) - webrtc? ( - media-libs/libjpeg-turbo:= - ~media-libs/tg_owt-0_pre20201105[pulseaudio=] - ) -" - -DEPEND=" - ${PYTHON_DEPS} - ${RDEPEND} - dev-cpp/range-v3 - =dev-cpp/ms-gsl-3* -" - -BDEPEND=" - >=dev-util/cmake-3.16 - virtual/pkgconfig - amd64? ( dev-lang/yasm ) -" - -REQUIRED_USE=" - spell? ( - ^^ ( enchant hunspell ) - ) - webrtc? ( !libressl ) -" - -S="${WORKDIR}/${MY_P}" - -pkg_pretend() { - if has ccache ${FEATURES}; then - ewarn - ewarn "ccache does not work with ${PN} out of the box" - ewarn "due to usage of precompiled headers" - ewarn "check bug https://bugs.gentoo.org/715114 for more info" - ewarn - fi -} - -src_prepare() { - # conditional patching is bad, but we want vanilla telegram with webrtc. - use webrtc || local PATCHES=( "${FILESDIR}/no-webrtc-build.patch" ) - - # no explicit toggle #752417 - sed -i 's/DESKTOP_APP_USE_PACKAGED/NO_ONE_WILL_EVER_SET_THIS/' \ - cmake/external/rlottie/CMakeLists.txt || die - - cmake_src_prepare -} - -src_configure() { - local mycxxflags=( - -Wno-deprecated-declarations - -Wno-error=deprecated-declarations - -Wno-switch - -Wno-unknown-warning-option - ) - - append-cxxflags "${mycxxflags[@]}" - - # TODO: unbundle header-only libs, ofc telegram uses git versions... - # it fals with tl-expected-1.0.0, so we use bundled for now to avoid git rev snapshots - # EXPECTED VARIANT - # gtk is really needed for image copy-paste due to https://bugreports.qt.io/browse/QTBUG-56595 - local mycmakeargs=( - -DCMAKE_DISABLE_FIND_PACKAGE_tl-expected=ON # header only lib, some git version. prevents warnings. - -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON - -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF - -DDESKTOP_APP_USE_PACKAGED=ON - -DDESKTOP_APP_USE_PACKAGED_FONTS=ON - -DTDESKTOP_DISABLE_GTK_INTEGRATION="$(usex gtk OFF ON)" - -DTDESKTOP_LAUNCHER_BASENAME="${PN}" - -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)" - -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)" # enables hunspell (recommended) - -DDESKTOP_APP_DISABLE_WEBRTC_INTEGRATION="$(usex webrtc OFF ON)" - -DDESKTOP_APP_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell - $(usex lto "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON" '') - ) - - if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then - einfo "Found custom API credentials" - mycmakeargs+=( - -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}" - -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}" - ) - else - # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml - # Building with snapcraft API credentials by default - # Custom API credentials can be obtained here: - # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md - # After getting credentials you can export variables: - # export MY_TDESKTOP_API_ID="17349"" - # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb" - # and restart the build" - # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop - # portage will use custom variable every build automatically - mycmakeargs+=( - -DTDESKTOP_API_ID="611335" - -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c" - ) - fi - - cmake_src_configure -} - -pkg_postinst() { - xdg_desktop_database_update - xdg_icon_cache_update - xdg_mimeinfo_database_update - use gtk || einfo "enable 'gtk' useflag if you have image copy-paste problems" -} - -pkg_postrm() { - xdg_desktop_database_update - xdg_icon_cache_update - xdg_mimeinfo_database_update -} diff --git a/net-im/telegram-desktop/telegram-desktop-2.7.1-r1.ebuild b/net-im/telegram-desktop/telegram-desktop-2.7.1-r2.ebuild index ce5a70e6844a..ee4a0e5a5bfb 100644 --- a/net-im/telegram-desktop/telegram-desktop-2.7.1-r1.ebuild +++ b/net-im/telegram-desktop/telegram-desktop-2.7.1-r2.ebuild @@ -15,7 +15,7 @@ SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${ LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" SLOT="0" -KEYWORDS="~amd64 ~ppc64" +KEYWORDS="amd64 ~ppc64" IUSE="+dbus enchant +gtk +hunspell libressl pulseaudio +spell wayland +X" RDEPEND=" @@ -65,6 +65,10 @@ REQUIRED_USE=" S="${WORKDIR}/${MY_P}" +PATCHES=( + "${FILESDIR}/tdesktop-2.7.1-fix-disable-dbus-integration.patch" +) + pkg_pretend() { if has ccache ${FEATURES}; then ewarn @@ -76,10 +80,10 @@ pkg_pretend() { } src_prepare() { - cd "$S/Telegram/ThirdParty/tgcalls" || die - eapply "$FILESDIR/fix-tgcalls-gcc10.patch" + cd "${S}/Telegram/ThirdParty/tgcalls" || die + eapply "${FILESDIR}/fix-tgcalls-gcc10.patch" - cd "$S" + cd "${S}" || die # no explicit toggle, doesn't build with the system one #752417 sed -i 's/DESKTOP_APP_USE_PACKAGED/NO_ONE_WILL_EVER_SET_THIS/' \ cmake/external/rlottie/CMakeLists.txt || die |