summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorgy Yakovlev <gyakovlev@gentoo.org>2020-06-29 14:48:56 -0700
committerGeorgy Yakovlev <gyakovlev@gentoo.org>2020-06-29 16:39:38 -0700
commit083a373e66379c9f2d82a701cb21889186e47766 (patch)
treecb2ecf373940c75d7209db5c5e16dba7328d7dc3
parentmedia-libs/libtgvoip: bump to 2.4.4_p20200627 (diff)
downloadgentoo-083a373e.tar.gz
gentoo-083a373e.tar.bz2
gentoo-083a373e.zip
net-im/telegram-desktop: bump to 2.1.14
Package-Manager: Portage-2.3.103, Repoman-2.3.23 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
-rw-r--r--net-im/telegram-desktop/Manifest1
-rw-r--r--net-im/telegram-desktop/files/2.1.14-no-gtk.patch21
-rw-r--r--net-im/telegram-desktop/telegram-desktop-2.1.14.ebuild155
3 files changed, 177 insertions, 0 deletions
diff --git a/net-im/telegram-desktop/Manifest b/net-im/telegram-desktop/Manifest
index 64596b04aa6b..7305e795f3e5 100644
--- a/net-im/telegram-desktop/Manifest
+++ b/net-im/telegram-desktop/Manifest
@@ -2,3 +2,4 @@ DIST tdesktop-2.1.0-full.tar.gz 26133964 BLAKE2B c5eb476ea3ed02c2618e5b770bdce36
DIST tdesktop-2.1.11-full.tar.gz 36548657 BLAKE2B 969ee0b680cb225c86bbab25e792b9fa21182227d73f062700ac56f08de83b249cca41d661c711e1a7dbcbeeeda70ddb13535403bee6f001ea10c4864b995c67 SHA512 9f2fba2814a5ab64f946913e32fce66dbc842d9607cbaee00994689ef6a661a04c2a8de5e075fc532e7d8926b51432c06c2b1510b019d729eef40da373d91d42
DIST tdesktop-2.1.12-full.tar.gz 36549678 BLAKE2B 0a973f8f560ccd30a35f172d4a63af9b4d16601af47f2ed71f37f6c3845e328501a79062f2917f37842248646b60ff3d88f8444d75df8bbae967969907cd3a83 SHA512 961f7e4900f782d58d5d1b1045590a7029777c3daa8d26f47a61663de9ab0c3c3cdfa7507c0710af2fb231e480ffe67de0bcbd61b72acb751ae8133b73d86cff
DIST tdesktop-2.1.13-full.tar.gz 36549505 BLAKE2B 48514be8add4ad4491c8e81a868f140228787ee489de7cd90faf31dbee959b0fb87cf2c844bf98c5b62fd6de8e32f504a6d19b071c56e6a4c0cd489d7b283818 SHA512 f28ae7c8c9a9eb8094fc52784742b470235234a3df7487902152858bc7c297b2dcfe5c8b939cdb9653a356b3835609e7289f53cdf7d5fb3f009823d3dbeb1bd8
+DIST tdesktop-2.1.14-full.tar.gz 36578245 BLAKE2B 0ec3e5e4d696544975a95a6ab70f240b2ab172ab5135ad037d1537d57b0aef2ce9f479cdfae89a6499ef31e391ac65e3d40476918beadac11d4541f4a52e7ead SHA512 4c48e235ac790ecd2d5e7344de9641d0e843e7d2e46a3883f8016587034bc7f5aebd4e1b26c701a225dfb3777b610d69a2ccc685aaa5ee08a163fdd49fee1e9e
diff --git a/net-im/telegram-desktop/files/2.1.14-no-gtk.patch b/net-im/telegram-desktop/files/2.1.14-no-gtk.patch
new file mode 100644
index 000000000000..365b7f2967e3
--- /dev/null
+++ b/net-im/telegram-desktop/files/2.1.14-no-gtk.patch
@@ -0,0 +1,21 @@
+diff --git a/Telegram/SourceFiles/platform/linux/specific_linux.cpp b/Telegram/SourceFiles/platform/linux/specific_linux.cpp
+index eb23796..3424bab 100644
+--- a/Telegram/SourceFiles/platform/linux/specific_linux.cpp
++++ b/Telegram/SourceFiles/platform/linux/specific_linux.cpp
+@@ -521,6 +521,7 @@ QString GetIconName() {
+ }
+
+ bool GtkClipboardSupported() {
++#ifndef TDESKTOP_DISABLE_GTK_INTEGRATION
+ return (Libs::gtk_clipboard_get != nullptr)
+ && (Libs::gtk_clipboard_wait_for_contents != nullptr)
+ && (Libs::gtk_clipboard_wait_for_image != nullptr)
+@@ -532,6 +533,8 @@ bool GtkClipboardSupported() {
+ && (Libs::gdk_pixbuf_get_rowstride != nullptr)
+ && (Libs::gdk_pixbuf_get_has_alpha != nullptr)
+ && (Libs::gdk_atom_intern != nullptr);
++#endif // !TDESKTOP_DISABLE_GTK_INTEGRATION
++ return false;
+ }
+
+ QImage GetImageFromClipboard() {
diff --git a/net-im/telegram-desktop/telegram-desktop-2.1.14.ebuild b/net-im/telegram-desktop/telegram-desktop-2.1.14.ebuild
new file mode 100644
index 000000000000..c8c7b4eb6686
--- /dev/null
+++ b/net-im/telegram-desktop/telegram-desktop-2.1.14.ebuild
@@ -0,0 +1,155 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit cmake desktop flag-o-matic 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="GPL-3-with-openssl-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64"
+IUSE="+alsa +dbus enchant +gtk +hunspell libressl pulseaudio +spell wayland +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/fontconfig:=
+ ~media-libs/libtgvoip-2.4.4_p20200627[alsa?,pulseaudio?]
+ media-libs/openal[alsa?,pulseaudio?]
+ media-libs/opus:=
+ media-video/ffmpeg:=[alsa?,opus,pulseaudio?]
+ sys-libs/zlib[minizip]
+ virtual/libiconv
+ 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,X?]
+ x11-libs/gtk+:3[X?,wayland?]
+ x11-libs/libX11
+ )
+ hunspell? ( >=app-text/hunspell-1.7:= )
+ pulseaudio? ( media-sound/pulseaudio )
+"
+
+DEPEND="
+ ${PYTHON_DEPS}
+ ${RDEPEND}
+ dev-cpp/range-v3
+ =dev-cpp/ms-gsl-3*
+"
+
+BDEPEND="
+ >=dev-util/cmake-3.16
+ virtual/pkgconfig
+"
+
+REQUIRED_USE="
+ || ( alsa pulseaudio )
+ || ( X wayland )
+ spell? (
+ ^^ ( enchant hunspell )
+ )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=( "${FILESDIR}/${PV}-no-gtk.patch" )
+
+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_configure() {
+ local mycxxflags=(
+ -Wno-deprecated-declarations
+ -Wno-error=deprecated-declarations
+ -Wno-switch
+ )
+
+ 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=(
+ -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
+ -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF
+ -DDESKTOP_APP_USE_PACKAGED=ON
+ -DDESKTOP_APP_USE_PACKAGED_EXPECTED=OFF
+ -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF
+ -DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF
+ -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_USE_ENCHANT="$(usex enchant ON OFF)" # enables enchant and disables hunspell
+ )
+
+ 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
+}