summaryrefslogtreecommitdiff
path: root/net-im/telegram-desktop
diff options
context:
space:
mode:
Diffstat (limited to 'net-im/telegram-desktop')
-rw-r--r--net-im/telegram-desktop/Manifest6
-rw-r--r--net-im/telegram-desktop/files/0002-PPC-big-endian.patch25
-rw-r--r--net-im/telegram-desktop/files/0003-PPC-config.patch28
-rw-r--r--net-im/telegram-desktop/files/musl.patch12
-rw-r--r--net-im/telegram-desktop/metadata.xml11
-rw-r--r--net-im/telegram-desktop/telegram-desktop-1.9.8.ebuild142
6 files changed, 224 insertions, 0 deletions
diff --git a/net-im/telegram-desktop/Manifest b/net-im/telegram-desktop/Manifest
new file mode 100644
index 000000000000..600bf2143b61
--- /dev/null
+++ b/net-im/telegram-desktop/Manifest
@@ -0,0 +1,6 @@
+AUX 0002-PPC-big-endian.patch 791 BLAKE2B f24d1f799eb23f4aa0ed3324996027014c790ef3ed249ef1b48748529b7e7af622d7db34fbe0cae06539913b5e20512f490e7a609b952273aa990baef20de374 SHA512 26aab35d254bdeb89aff05fa5ec84c405e2c939f300f923c0e7adb452e50442d140104fe74f6bd39ab533493314118de3bfed7f3a931c2c5442da6fccdb6e390
+AUX 0003-PPC-config.patch 907 BLAKE2B 3d7a74ea4ee52f3b07ec11bf6c30425bd6555e57c99de931e6e029f4dd70c1bf8a6c3a5678b671c5060a47c0ed44b3ce4d175ef0ef79b40aabbc902d8ddf9d62 SHA512 3f0b214ea6510609f2c312b057e926239fa404d4d834bce0688fa5756768e996fd6a89b03a8a11f106ea744daafcea71d35211761bb772400274084618d78e9a
+AUX musl.patch 493 BLAKE2B fa27c9442075c6adcc48a7d282c1ba1e143cb1da05dd8b9fbd4317a7a3fc485112a98db54ffe947366913c4e18c54208d29045f0660525f2c65d91caaa032436 SHA512 9b9a9b623edcce37339e52e3e306a7106b6289749fca1b2dc7450c299da1a6f8d3f3f12b4973ecfbf3797f75ba88cf7f644adee896b053a683df4e4754d5d057
+DIST tdesktop-1.9.8-full.tar.gz 25225784 BLAKE2B d938dc5d82740f93c575f621697e4bae430dc045c18437957bead6cc949ad0643b0422d8fd2a1695af921ea7f259ca323094a4a7821855d842edfaf4f328c840 SHA512 5562eb99812a8faec74fe073323d6e04e36311c1e4ce984035212ecfed8bd5d12df92cd0f0022401201136315fb5556971b267b4bf47edf4eeddc9926c7969dc
+EBUILD telegram-desktop-1.9.8.ebuild 3533 BLAKE2B d38a9edec14a3acbccac511355941d2efd17fc38c59b109d39eab5aafa53ab70f6542ffe06b33e287acab3fc628499bc5593967e847a4e0c37388f5c80f17f5f SHA512 d0761c5d5a485ae5a2d0b9509a05c89caad09c424f24d4e0772cd3956af488057b9e67afd455c3122e3de683a592312c2c83bc0320d6b1d29aa5835f7cec2290
+MISC metadata.xml 348 BLAKE2B 57a3aaf9f66d41173fffd5d7c40d1d25beda8eb6e46c3259c253c1d644fa2ec22fd2725ef61ca38a7338caba1da5e7abba73d363448c1c5f6e7b7767f1e8d897 SHA512 8d7efddbb9a62b78f4bac0b00a92e588b527d7914b84b7c8b73d654d35893f2c26f31b8d5ccbde2e0020f2e420816b691cf77cc902eefe9f4375b4a82c2a328d
diff --git a/net-im/telegram-desktop/files/0002-PPC-big-endian.patch b/net-im/telegram-desktop/files/0002-PPC-big-endian.patch
new file mode 100644
index 000000000000..b1af3deb5878
--- /dev/null
+++ b/net-im/telegram-desktop/files/0002-PPC-big-endian.patch
@@ -0,0 +1,25 @@
+From d4c11502175e2a7821dbd92e029a90d54498e3e8 Mon Sep 17 00:00:00 2001
+From: John Zimmermann <johnz@posteo.net>
+Date: Thu, 2 Jan 2020 12:57:33 +0100
+Subject: [PATCH] PPC big endian
+
+---
+ Telegram/SourceFiles/config.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git Telegram/SourceFiles/config.h Telegram/SourceFiles/config.h
+index fb7b54e4d..6a873fbd7 100644
+--- a/Telegram/SourceFiles/config.h
++++ b/Telegram/SourceFiles/config.h
+@@ -177,7 +177,7 @@ constexpr auto ApiHash = "344583e45741c457fe1862106095a5eb";
+ #endif // TDESKTOP_API_ID && TDESKTOP_API_HASH
+
+ #if Q_BYTE_ORDER == Q_BIG_ENDIAN
+-#error "Only little endian is supported!"
++#warning "Only little endian is supported!"
+ #endif // Q_BYTE_ORDER == Q_BIG_ENDIAN
+
+ #if (TDESKTOP_ALPHA_VERSION != 0)
+--
+2.24.1
+
diff --git a/net-im/telegram-desktop/files/0003-PPC-config.patch b/net-im/telegram-desktop/files/0003-PPC-config.patch
new file mode 100644
index 000000000000..95b7b639d58e
--- /dev/null
+++ b/net-im/telegram-desktop/files/0003-PPC-config.patch
@@ -0,0 +1,28 @@
+From af5f8d19f0fdded987beee4568f02cc8dcbd20f4 Mon Sep 17 00:00:00 2001
+From: John Zimmermann <johnz@posteo.net>
+Date: Thu, 2 Jan 2020 12:58:45 +0100
+Subject: [PATCH] PPC config
+
+---
+ base/build_config.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git Telegram/lib_base/base/build_config.h Telegram/lib_base/base/build_config.h
+index a02c9b0..b3f4860 100644
+--- a/Telegram/lib_base/base/build_config.h
++++ b/Telegram/lib_base/base/build_config.h
+@@ -46,9 +46,9 @@
+ #define ARCH_CPU_X86_FAMILY 1
+ #define ARCH_CPU_X86 1
+ #define ARCH_CPU_32_BITS 1
+-#elif defined(__aarch64__)
++#elif defined(__aarch64__) || defined(__powerpc64__)
+ #define ARCH_CPU_64_BITS 1
+-#elif defined(_M_ARM) || defined(__arm__)
++#elif defined(_M_ARM) || defined(__arm__) || defined(__powerpc__)
+ #define ARCH_CPU_32_BITS 1
+ #else
+ #error Please add support for your architecture in base/build_config.h
+--
+2.24.1
+
diff --git a/net-im/telegram-desktop/files/musl.patch b/net-im/telegram-desktop/files/musl.patch
new file mode 100644
index 000000000000..dece8ec216f0
--- /dev/null
+++ b/net-im/telegram-desktop/files/musl.patch
@@ -0,0 +1,12 @@
+Should send this one upstream; it would work with glibc as well.
+
+--- tdesktop-1.9.6-full/Telegram/ThirdParty/libtgvoip/os/linux/AudioPulse.cpp.old 2020-01-21 12:16:27.000000000 +0000
++++ tdesktop-1.9.6-full/Telegram/ThirdParty/libtgvoip/os/linux/AudioPulse.cpp 2020-01-22 17:44:42.185530350 +0000
+@@ -6,6 +6,7 @@
+
+ #include "AudioPulse.h"
+ #include <dlfcn.h>
++#include <libgen.h>
+ #include "../../logging.h"
+
+ #define DECLARE_DL_FUNCTION(name) typeof(name)* AudioPulse::_import_##name=NULL
diff --git a/net-im/telegram-desktop/metadata.xml b/net-im/telegram-desktop/metadata.xml
new file mode 100644
index 000000000000..36b8a035d4c6
--- /dev/null
+++ b/net-im/telegram-desktop/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gyakovlev@gentoo.org</email>
+ <name>Georgy Yakovlev</name>
+ </maintainer>
+ <use>
+ <flag name="gtk3">Enable GTK3 integration (tray, theme, filepicker, etc)</flag>
+ </use>
+</pkgmetadata>
diff --git a/net-im/telegram-desktop/telegram-desktop-1.9.8.ebuild b/net-im/telegram-desktop/telegram-desktop-1.9.8.ebuild
new file mode 100644
index 000000000000..a5baf8e9c570
--- /dev/null
+++ b/net-im/telegram-desktop/telegram-desktop-1.9.8.ebuild
@@ -0,0 +1,142 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7} )
+
+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 Unlicense"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64"
+IUSE="dbus gtk3 spell"
+
+RDEPEND="!net-im/telegram-desktop-bin
+ app-arch/lz4
+ app-arch/xz-utils
+ dev-libs/openssl:0
+ dev-libs/xxhash
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5[png,X(-)]
+ dev-qt/qtimageformats:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtwidgets:5[png,X(-)]
+ media-libs/openal[pulseaudio]
+ media-libs/opus
+ media-sound/pulseaudio
+ sys-libs/zlib[minizip]
+ virtual/ffmpeg
+ x11-libs/libva[X,drm]
+ x11-libs/libX11
+ dbus? ( dev-qt/qtdbus:5 )
+ gtk3? (
+ dev-libs/libappindicator:3
+ x11-libs/gtk+:3
+ )
+ spell? ( app-text/enchant )
+"
+
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}"
+
+BDEPEND="
+ >=dev-util/cmake-3.16
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}/0002-PPC-big-endian.patch"
+ "${FILESDIR}/0003-PPC-config.patch"
+ "${FILESDIR}/musl.patch"
+)
+
+S="${WORKDIR}/${MY_P}"
+
+src_configure() {
+ local mycxxflags=(
+ -Wno-deprecated-declarations
+ -Wno-error=deprecated-declarations
+ -Wno-switch
+ )
+
+ append-cxxflags "${mycxxflags[@]}"
+
+ local mycmakeargs=(
+ -Ddisable_autoupdate=1
+ -DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
+ -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF
+ -DDESKTOP_APP_USE_PACKAGED=ON
+ -DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF
+ -DTDESKTOP_DISABLE_DESKTOP_FILE_GENERATION=ON
+ -DTDESKTOP_LAUNCHER_BASENAME="${PN}"
+ -DTDESKTOP_USE_PACKAGED_TGVOIP=OFF
+ -DDESKTOP_APP_DISABLE_SPELLCHECK="$(usex spell OFF ON)"
+ -DTDESKTOP_DISABLE_GTK_INTEGRATION="$(usex gtk3 OFF ON)"
+ -DTDESKTOP_DISABLE_DBUS_INTEGRATION="$(usex dbus OFF ON)"
+ -DTDESKTOP_FORCE_GTK_FILE_DIALOG="$(usex gtk3)"
+ )
+
+ 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
+ mycmakeargs+=( -DTDESKTOP_API_TEST=ON )
+ ewarn
+ ewarn "Building ${PN} with test API credentials."
+ ewarn "Connectivity to API servers will be throttled."
+ ewarn "To build ${PN} custom API credentials cancel build now and obtain"
+ ewarn "credentials here: https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md"
+ ewarn "After getting credentials you can export variables:"
+ ewarn "export MY_TDESKTOP_API_ID=\"17349\""
+ ewarn "export MY_TDESKTOP_API_HASH=\"344583e45741c457fe1862106095a5eb\""
+ ewarn "and restart the build"
+ ewarn "you can save variables in /etc/portage/env/${CATEGORY}/${PN}"
+ ewarn "portage will use the file every build automatically"
+ ewarn
+ fi
+
+ cmake_src_configure
+}
+
+src_install() {
+ dobin "${BUILD_DIR}/bin/${PN}"
+
+ newmenu lib/xdg/telegramdesktop.desktop "${PN}.desktop"
+
+ local icon_size
+ for icon_size in 16 32 48 64 128 256 512
+ do
+ newicon -s ${icon_size} \
+ Telegram/Resources/art/icon${icon_size}.png telegram.png
+ done
+
+ insinto /usr/share/appdata
+ doins lib/xdg/telegramdesktop.appdata.xml
+
+ insinto /usr/share/kservices5
+ doins lib/xdg/tg.protocol
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+}