1 |
commit: 99a1ef8729d13a3a7f80feec594608eec634c0ae |
2 |
Author: Esteve Varela Colominas <esteve.varela <AT> gmail <DOT> com> |
3 |
AuthorDate: Sat Feb 25 22:37:25 2023 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Mar 15 05:03:32 2023 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=99a1ef87 |
7 |
|
8 |
net-im/telegram-desktop: Bump to 4.6.5 |
9 |
|
10 |
Signed-off-by: Esteve Varela Colominas <esteve.varela <AT> gmail.com> |
11 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
12 |
|
13 |
net-im/telegram-desktop/Manifest | 1 + |
14 |
net-im/telegram-desktop/metadata.xml | 2 +- |
15 |
.../telegram-desktop/telegram-desktop-4.6.5.ebuild | 206 +++++++++++++++++++++ |
16 |
3 files changed, 208 insertions(+), 1 deletion(-) |
17 |
|
18 |
diff --git a/net-im/telegram-desktop/Manifest b/net-im/telegram-desktop/Manifest |
19 |
index a8767374a5d1..947383072b2a 100644 |
20 |
--- a/net-im/telegram-desktop/Manifest |
21 |
+++ b/net-im/telegram-desktop/Manifest |
22 |
@@ -1,3 +1,4 @@ |
23 |
DIST tdesktop-4.4.1-full.tar.gz 50077498 BLAKE2B 6196c474c0771197c56b386bbfd67e4a014569cb8bd9676990e323005f06cb6938aad0c0dd00fd74cab9fca1ac50c7bf7227f34aa39ae598b4f003199fa8cd00 SHA512 91038f0a615ef7ae1050cbfa614041a3d6a45fdbd26d120ef98cca3c31377612c3bb1e80f9aff58c4853a1726bf2cfb427f752a4f88a796f05b381516c981563 |
24 |
DIST tdesktop-4.5.3-full.tar.gz 63718129 BLAKE2B 85492ad92ea2643dd5e74c831609a4f7be9671648d2b542c24f415dbb19b66521ccecb2a545eadfbf9fa7f934d35d32de085b5b8403dce54bed0b85c54ea98fe SHA512 58a9c5d096e236090347388e1ed480527f841045a80771079dc0c3e35e12ce8ac11753987e87bb57870d9bd8488fc6a4734114648ecec7823d8544744b06c6b1 |
25 |
DIST tdesktop-4.6.3-full.tar.gz 63791674 BLAKE2B 291ed09dc96bb419c38d6c679c14ac5db1a361114c363ed4cfcbbab8e81927a75e87c5c8839bb348cf3395ff167e8e1eae9d6e499b4448e54e705b34ce997e59 SHA512 c01a1b57c71d8e3509664f8dfb8f7aa932e830732ea75211718150c8e4eafaf501f4271e5cb9e0c3348cd398091bc8236ff0cf79c0c6a45e5f897f9e3610566a |
26 |
+DIST tdesktop-4.6.5-full.tar.gz 63793549 BLAKE2B a425aaf8d1f1c633b3b8ddacff5bb7cc26e6063d4238413fea76db6a4608497d229061a614c79464373e7f1aa3bb854d9718083638e119538e989a202741b3d6 SHA512 4a337e375d7746cb1fa652f5851f8be5718b7b9d9676bba8ab040489b8492b2a665a51848adba28117a910789aa942c386318a01f6c99b4caa12a1eac682c780 |
27 |
|
28 |
diff --git a/net-im/telegram-desktop/metadata.xml b/net-im/telegram-desktop/metadata.xml |
29 |
index 059c51b94001..cd141868ce56 100644 |
30 |
--- a/net-im/telegram-desktop/metadata.xml |
31 |
+++ b/net-im/telegram-desktop/metadata.xml |
32 |
@@ -11,7 +11,7 @@ |
33 |
</maintainer> |
34 |
<use> |
35 |
<flag name="enchant">Use the <pkg>app-text/aspell</pkg> spell-checking backend instead of <pkg>app-text/hunspell</pkg></flag> |
36 |
- <flag name="hunspell">Enable the <pkg>app-text/hunspell</pkg> spell-checking backend (deprecated)</flag> |
37 |
+ <flag name="hunspell">Enable the <pkg>app-text/hunspell</pkg> spell-checking backend (old flag)</flag> |
38 |
<flag name="fonts">Use builtin patched copy of open-sans fonts (overrides fontconfig)</flag> |
39 |
<flag name="qt6">Build with Qt6 support</flag> |
40 |
<flag name="qt6-imageformats">Add support for HEIF, AVIF and JpegXL by bundling kde-frameworks/kimageformats</flag> |
41 |
|
42 |
diff --git a/net-im/telegram-desktop/telegram-desktop-4.6.5.ebuild b/net-im/telegram-desktop/telegram-desktop-4.6.5.ebuild |
43 |
new file mode 100644 |
44 |
index 000000000000..cf71ac36b019 |
45 |
--- /dev/null |
46 |
+++ b/net-im/telegram-desktop/telegram-desktop-4.6.5.ebuild |
47 |
@@ -0,0 +1,206 @@ |
48 |
+# Copyright 2020-2023 Gentoo Authors |
49 |
+# Distributed under the terms of the GNU General Public License v2 |
50 |
+ |
51 |
+EAPI=8 |
52 |
+ |
53 |
+PYTHON_COMPAT=( python3_{9..11} ) |
54 |
+ |
55 |
+inherit xdg cmake python-any-r1 optfeature flag-o-matic |
56 |
+ |
57 |
+DESCRIPTION="Official desktop client for Telegram" |
58 |
+HOMEPAGE="https://desktop.telegram.org" |
59 |
+ |
60 |
+MY_P="tdesktop-${PV}-full" |
61 |
+SRC_URI="https://github.com/telegramdesktop/tdesktop/releases/download/v${PV}/${MY_P}.tar.gz" |
62 |
+S="${WORKDIR}/${MY_P}" |
63 |
+ |
64 |
+LICENSE="BSD GPL-3-with-openssl-exception LGPL-2+" |
65 |
+SLOT="0" |
66 |
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv" |
67 |
+IUSE="+dbus enchant +fonts +jemalloc screencast qt6 qt6-imageformats wayland +X" |
68 |
+REQUIRED_USE=" |
69 |
+ qt6-imageformats? ( qt6 ) |
70 |
+" |
71 |
+ |
72 |
+KIMAGEFORMATS_RDEPEND=" |
73 |
+ media-libs/libavif:= |
74 |
+ media-libs/libheif:= |
75 |
+ media-libs/libjxl |
76 |
+" |
77 |
+RDEPEND=" |
78 |
+ !net-im/telegram-desktop-bin |
79 |
+ app-arch/lz4:= |
80 |
+ dev-cpp/abseil-cpp:= |
81 |
+ dev-libs/glib:2 |
82 |
+ dev-libs/libdispatch |
83 |
+ dev-libs/libsigc++:2 |
84 |
+ dev-libs/openssl:= |
85 |
+ dev-libs/xxhash |
86 |
+ media-libs/fontconfig:= |
87 |
+ media-libs/libjpeg-turbo:= |
88 |
+ ~media-libs/libtgvoip-2.4.4_p20221208 |
89 |
+ media-libs/openal |
90 |
+ media-libs/opus:= |
91 |
+ media-libs/rnnoise |
92 |
+ ~media-libs/tg_owt-0_pre20230105:=[screencast=,X=] |
93 |
+ media-video/ffmpeg:=[opus,vpx] |
94 |
+ sys-libs/zlib:=[minizip] |
95 |
+ virtual/opengl |
96 |
+ dbus? ( dev-cpp/glibmm:2.68 ) |
97 |
+ !enchant? ( >=app-text/hunspell-1.7:= ) |
98 |
+ enchant? ( app-text/enchant:= ) |
99 |
+ jemalloc? ( dev-libs/jemalloc:=[-lazy-lock] ) |
100 |
+ !qt6? ( |
101 |
+ >=dev-qt/qtcore-5.15:5 |
102 |
+ >=dev-qt/qtgui-5.15:5[dbus?,jpeg,png,wayland?,X?] |
103 |
+ >=dev-qt/qtimageformats-5.15:5 |
104 |
+ >=dev-qt/qtnetwork-5.15:5[ssl] |
105 |
+ >=dev-qt/qtsvg-5.15:5 |
106 |
+ >=dev-qt/qtwidgets-5.15:5[png,X?] |
107 |
+ kde-frameworks/kcoreaddons:= |
108 |
+ ) |
109 |
+ qt6? ( |
110 |
+ dev-qt/qt5compat:6 |
111 |
+ dev-qt/qtbase:6[dbus?,gui,network,opengl,widgets,X?] |
112 |
+ dev-qt/qtimageformats:6 |
113 |
+ dev-qt/qtsvg:6 |
114 |
+ wayland? ( dev-qt/qtwayland:6 ) |
115 |
+ qt6-imageformats? ( ${KIMAGEFORMATS_RDEPEND} ) |
116 |
+ ) |
117 |
+ X? ( |
118 |
+ x11-libs/libxcb:= |
119 |
+ x11-libs/xcb-util-keysyms |
120 |
+ ) |
121 |
+" |
122 |
+DEPEND="${RDEPEND} |
123 |
+ dev-cpp/range-v3 |
124 |
+ >=dev-cpp/ms-gsl-4 |
125 |
+" |
126 |
+BDEPEND=" |
127 |
+ ${PYTHON_DEPS} |
128 |
+ >=dev-util/cmake-3.16 |
129 |
+ virtual/pkgconfig |
130 |
+" |
131 |
+# dev-libs/jemalloc:=[-lazy-lock] -> https://bugs.gentoo.org/803233 |
132 |
+ |
133 |
+PATCHES=( |
134 |
+ "${FILESDIR}/tdesktop-4.2.4-jemalloc-only-telegram.patch" |
135 |
+ "${FILESDIR}/tdesktop-4.4.1-fix-dupe-main-decl.patch" |
136 |
+) |
137 |
+ |
138 |
+# Current desktop-file-utils-0.26 does not understand Version=1.5 |
139 |
+QA_DESKTOP_FILE="usr/share/applications/${PN}.desktop" |
140 |
+ |
141 |
+pkg_pretend() { |
142 |
+ if has ccache ${FEATURES}; then |
143 |
+ ewarn "ccache does not work with ${PN} out of the box" |
144 |
+ ewarn "due to usage of precompiled headers" |
145 |
+ ewarn "check bug https://bugs.gentoo.org/715114 for more info" |
146 |
+ ewarn |
147 |
+ fi |
148 |
+} |
149 |
+ |
150 |
+src_prepare() { |
151 |
+ # Bundle kde-frameworks/kimageformats for qt6, since it's impossible to |
152 |
+ # build in gentoo right now. |
153 |
+ if use qt6-imageformats; then |
154 |
+ sed -e 's/DESKTOP_APP_USE_PACKAGED_LAZY/TRUE/' -i \ |
155 |
+ cmake/external/kimageformats/CMakeLists.txt || die |
156 |
+ printf "%s\n" \ |
157 |
+ 'Q_IMPORT_PLUGIN(QAVIFPlugin)' \ |
158 |
+ 'Q_IMPORT_PLUGIN(HEIFPlugin)' \ |
159 |
+ 'Q_IMPORT_PLUGIN(QJpegXLPlugin)' \ |
160 |
+ >> cmake/external/qt/qt_static_plugins/qt_static_plugins.cpp || die |
161 |
+ fi |
162 |
+ |
163 |
+ # kde-frameworks/kcoreaddons is bundled when using qt6, see: |
164 |
+ # cmake/external/kcoreaddons/CMakeLists.txt |
165 |
+ |
166 |
+ cmake_src_prepare |
167 |
+} |
168 |
+ |
169 |
+src_configure() { |
170 |
+ # The ABI of media-libs/tg_owt breaks if the -DNDEBUG flag doesn't keep |
171 |
+ # the same state across both projects. |
172 |
+ # See https://bugs.gentoo.org/866055 |
173 |
+ append-cppflags '-DNDEBUG' |
174 |
+ |
175 |
+ local mycmakeargs=( |
176 |
+ -DCMAKE_DISABLE_FIND_PACKAGE_tl-expected=ON # header only lib, some git version. prevents warnings. |
177 |
+ -DQT_VERSION_MAJOR=$(usex qt6 6 5) |
178 |
+ |
179 |
+ -DDESKTOP_APP_DISABLE_DBUS_INTEGRATION=$(usex !dbus) |
180 |
+ -DDESKTOP_APP_DISABLE_X11_INTEGRATION=$(usex !X) |
181 |
+ -DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION=$(usex !wayland) |
182 |
+ -DDESKTOP_APP_DISABLE_JEMALLOC=$(usex !jemalloc) |
183 |
+ -DDESKTOP_APP_USE_ENCHANT=$(usex enchant) # enables enchant and disables hunspell |
184 |
+ -DDESKTOP_APP_USE_PACKAGED_FONTS=$(usex !fonts) # use system fonts instead of bundled ones |
185 |
+ ) |
186 |
+ |
187 |
+ if [[ -n ${MY_TDESKTOP_API_ID} && -n ${MY_TDESKTOP_API_HASH} ]]; then |
188 |
+ einfo "Found custom API credentials" |
189 |
+ mycmakeargs+=( |
190 |
+ -DTDESKTOP_API_ID="${MY_TDESKTOP_API_ID}" |
191 |
+ -DTDESKTOP_API_HASH="${MY_TDESKTOP_API_HASH}" |
192 |
+ ) |
193 |
+ else |
194 |
+ # https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml |
195 |
+ # Building with snapcraft API credentials by default |
196 |
+ # Custom API credentials can be obtained here: |
197 |
+ # https://github.com/telegramdesktop/tdesktop/blob/dev/docs/api_credentials.md |
198 |
+ # After getting credentials you can export variables: |
199 |
+ # export MY_TDESKTOP_API_ID="17349"" |
200 |
+ # export MY_TDESKTOP_API_HASH="344583e45741c457fe1862106095a5eb" |
201 |
+ # and restart the build" |
202 |
+ # you can set above variables (without export) in /etc/portage/env/net-im/telegram-desktop |
203 |
+ # portage will use custom variable every build automatically |
204 |
+ mycmakeargs+=( |
205 |
+ -DTDESKTOP_API_ID="611335" |
206 |
+ -DTDESKTOP_API_HASH="d524b414d21f4d37f08684c1df41ac9c" |
207 |
+ ) |
208 |
+ fi |
209 |
+ |
210 |
+ cmake_src_configure |
211 |
+} |
212 |
+ |
213 |
+pkg_postinst() { |
214 |
+ xdg_pkg_postinst |
215 |
+ if ! use X && ! use screencast; then |
216 |
+ ewarn "both the 'X' and 'screencast' USE flags are disabled, screen sharing won't work!" |
217 |
+ ewarn |
218 |
+ fi |
219 |
+ if has_version '<dev-qt/qtcore-5.15.2-r10'; then |
220 |
+ ewarn "Versions of dev-qt/qtcore lower than 5.15.2-r10 might cause telegram" |
221 |
+ ewarn "to crash when pasting big images from the clipboard." |
222 |
+ ewarn |
223 |
+ fi |
224 |
+ if ! use jemalloc && use elibc_glibc; then |
225 |
+ # https://github.com/telegramdesktop/tdesktop/issues/16084 |
226 |
+ # https://github.com/desktop-app/cmake_helpers/pull/91#issuecomment-881788003 |
227 |
+ ewarn "Disabling USE=jemalloc on glibc systems may cause very high RAM usage!" |
228 |
+ ewarn "Do NOT report issues about RAM usage without enabling this flag first." |
229 |
+ ewarn |
230 |
+ fi |
231 |
+ if use qt6; then |
232 |
+ ewarn "Qt6 support in gentoo is experimental." |
233 |
+ ewarn "Please report any issues you may find, but don't expect" |
234 |
+ ewarn "everything to work correctly as of yet." |
235 |
+ ewarn |
236 |
+ fi |
237 |
+ if use wayland && ! use qt6; then |
238 |
+ ewarn "Wayland-specific integrations have been deprecated with Qt5." |
239 |
+ ewarn "The app will continue to function under wayland, but some" |
240 |
+ ewarn "functionality may be reduced." |
241 |
+ ewarn "These integrations are only supported when built with Qt6." |
242 |
+ ewarn |
243 |
+ fi |
244 |
+ if use qt6 && ! use qt6-imageformats; then |
245 |
+ elog "Enable USE=qt6-imageformats for AVIF, HEIF and JpegXL support" |
246 |
+ elog |
247 |
+ fi |
248 |
+ optfeature_header |
249 |
+ optfeature "shop payment support (requires USE=dbus enabled)" net-libs/webkit-gtk:4 |
250 |
+ if ! use qt6; then |
251 |
+ optfeature "AVIF, HEIF and JpegXL image support" kde-frameworks/kimageformats[avif,heif,jpegxl] |
252 |
+ fi |
253 |
+} |