# Maintainer: Leo # Contributor: Leo # TODO(Leo): remove pulseaudio dep pkgname=telegram-desktop pkgver=1.9.3 pkgrel=2 _breakpad_commit=dbd454dbe47e584571388fc3533193416bdce67f pkgdesc="Telegram Desktop messaging app" options="!check" # Requires Catch2 to be packaged. url="https://desktop.telegram.org/" arch="all !s390x" # Need support on lib_base license="GPL-3.0-or-later WITH OpenSSL" depends="qt5-qtimageformats libappindicator" makedepends=" cmake zlib-dev opus-dev libva-dev libvdpau-dev ffmpeg-dev portaudio-dev openal-soft-dev openssl-dev libxkbcommon-dev qt5-qtbase-dev libexif-dev xz-dev minizip-dev alsa-lib-dev libexecinfo-dev rapidjson-dev lz4-dev qtchooser pulseaudio-dev libdbusmenu-glib-dev libappindicator-dev xxhash-dev enchant2-dev range-v3-dev python " source=" https://github.com/telegramdesktop/tdesktop/releases/download/v$pkgver/tdesktop-$pkgver-full.tar.gz breakpad-$_breakpad_commit.tar.gz::https://github.com/google/breakpad/archive/$_breakpad_commit.tar.gz xdg.patch lz4.cmake zlib.cmake opus.cmake openal.cmake openssl.cmake ffmpeg.cmake qt.cmake range-v3.cmake breakpad.cmake musl-basename.patch updater.patch default-shared.patch check-sizeof-void-p.patch werror-lto.patch qt_functions.patch ppc.patch qt-plugin-path.patch guard-msse2.patch variables-after-project.patch qt_functions.cpp " builddir="$srcdir/tdesktop-$pkgver-full" prepare() { # we have these system-wide rm -rf Telegram/ThirdParty/minizip Telegram/ThirdParty/lz4 mv "$srcdir"/breakpad-$_breakpad_commit "$builddir"/Telegram/ThirdParty/breakpad # Copy our file over cp -L "$srcdir"/qt_functions.cpp "$builddir"/Telegram/SourceFiles # Install our cmake files mv "$srcdir"/lz4.cmake "$builddir"/cmake/external/lz4/CMakeLists.txt mv "$srcdir"/zlib.cmake "$builddir"/cmake/external/zlib/CMakeLists.txt mv "$srcdir"/opus.cmake "$builddir"/cmake/external/opus/CMakeLists.txt mv "$srcdir"/openal.cmake "$builddir"/cmake/external/openal/CMakeLists.txt mv "$srcdir"/openssl.cmake "$builddir"/cmake/external/openssl/CMakeLists.txt mv "$srcdir"/ffmpeg.cmake "$builddir"/cmake/external/ffmpeg/CMakeLists.txt mv "$srcdir"/qt.cmake "$builddir"/cmake/external/qt/CMakeLists.txt mv "$srcdir"/range-v3.cmake "$builddir"/cmake/external/ranges/CMakeLists.txt mv "$srcdir"/breakpad.cmake "$builddir"/cmake/external/crash_reports/breakpad/CMakeLists.txt default_prepare mkdir "$builddir"/build } build() { if [ "$CBUILD" != "$CHOST" ]; then CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" fi cd build cmake \ -DCMAKE_INSTALL_PREFIX=/usr \ -DBUILD_SHARED_LIBS=True \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DDESKTOP_APP_DISABLE_CRASH_REPORTS=True \ -DDESKTOP_APP_DISABLE_SPELLCHECK=OFF \ -DDESKTOP_APP_LOTTIE_USE_CACHE=ON \ -DDESKTOP_APP_USE_GLIBC_WRAPS=OFF \ -DDESKTOP_APP_USE_PACKAGED=ON \ -DTDESKTOP_API_ID=17349 \ -DTDESKTOP_API_HASH=344583e45741c457fe1862106095a5eb \ -DTDESKTOP_DISABLE_GTK_INTEGRATION=ON \ ${CMAKE_CROSSOPTS} .. make } package() { install -d "$pkgdir"/usr/bin \ "$pkgdir"/usr/share/applications \ "$pkgdir"/usr/share/appdata \ "$pkgdir"/usr/share/kservices5 \ strip -s build/bin/Telegram install -m755 build/bin/Telegram "$pkgdir"/usr/bin/telegram-desktop install -m644 lib/xdg/telegramdesktop.desktop -t "$pkgdir"/usr/share/applications install -m644 lib/xdg/telegramdesktop.appdata.xml -t "$pkgdir"/usr/share/appdata install -m644 lib/xdg/tg.protocol -t "$pkgdir"/usr/share/kservices5 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 "$builddir/Telegram/Resources/art/icon$icon_size.png" \ "$icon_dir/telegram.png" done } sha512sums="af8e5d2c74d0b990958edd75a01f40b70bc21c0f69074acfb943f44fdb1f1e84465b461765a1a584513e54ab30045817b42b6839ad16cb4c1043fda89ea600f7 tdesktop-1.9.3-full.tar.gz af8c9e8cf151b6aaa94a11b1f3f4d73c117fa25d7ba3b603c25170278bb0a99a9da10facc3b140fa0e3c2c0747a1f5bdcfb1120dfd48913a0d84f78701abb9fc breakpad-dbd454dbe47e584571388fc3533193416bdce67f.tar.gz 8de8c0508177da5fcac4f2dcee4d8baef4b99f74f1dca296567bc3689a6bd17a47c1c945df504abc8811b82a687010d0709503c7c32e47d2ebb1cf0e374c80c5 xdg.patch 15e7328bdfb1ddae0357d30ded5448fb785f3ef0e148f47df8e66d5716999afb73bbc1caed21c5babd283db40017d1939066ae4d7d5989053cd41088ee7d5c91 lz4.cmake f53c7194e62e22e0e197599ceffb37f1d742da83402257503c8f529e00187ed59d241d7880aa410ddbeac0540dc1ec6809700cf2c94c0c41db73809c712b1624 zlib.cmake 0149ed6db6d92ed933f83ca385d2a06d4d6a960a2768134b3967a5e0a9bd58af83ac93fe45b3033e3da6767f90fea26037f6db17ba219dbe09f8942ba4903a84 opus.cmake 48a6f5de0a03357d5f13a065c06b279021e8ebb872ea96d59f5ccb2bc8efd5e1f2d2850dddc22cdc0da0ac53cf0eb407ca0f53eebba8f68cf51224bb624c1b23 openal.cmake f3c13e996b8456a79a418380c9e78c8d871f53c9da6dbe030ebb25817f232c7b511255a6c618aabc6afe6aba3b636b1058986d8fede9d06ad354bf6c1e46bb9f openssl.cmake c0afecd5d75d385e4e3d3d3e1273b12afebaaec38375a72edb17cb4c17666b3c45301cb0f06806a264798909ffd15517b7ed4d698cb00aa5c2d10bd6bd6ad12a ffmpeg.cmake c15a8da42d5248ee48fd3663913c010476cedd0fde86c6b133770c41ee6cdab33637732ac24bcc34d9b3a9e2a202147eed08fbfa7bffcf0ca4a2681f519a52bb qt.cmake f99017a119efb1b534cece9580d2b6cf4d88c0c3285eac8ac826008eec25a4fe43c846a9e1523f5af2aec57c13cf6abc549cdd8242ce266e43c3e61928e61d2a range-v3.cmake bcb1ed7ecc7ca5c0282337fad9c341d7468537d0f1ae2dc296d63c34508c9768cd7120a135fea27a752a9e8c9e6eaa223fa661f488c7f8a565d9cc2b2eab7be4 breakpad.cmake 6062602d02e20917c06f17d12bb21bd4a94b23c2a6744a8a05c2c93d41747ba413e110edd344ecd130c28ebaf997ae46b347d239e69f5856ead42318bd5b01cd musl-basename.patch 3182d2da588fd50c771047550e0d4805cce404836ecc6a4f9ccc95b21c6915391ab3f4d75cd745737836d6c483eac84974659b97e9514384efd032ef33044125 updater.patch 4fb0f0a8c0a57436a10a79d7d1a45c1045d3ac30b9437e65025a4867400b52e52b38c61d447b1392bdf2bd6b241ed25a2c73851c67e08b9198a922c22a316345 default-shared.patch d76f218f65aa33f425da0b2174bb177384aa9dded21869f33bcd97c3f4fdd06977552a46b64d15124b78dece8e192d5193b53cf5c240f44b65407d036f96618b check-sizeof-void-p.patch 447c2f29d5527b934c70c39b7f6bdd15760e53dcb08ee516dd72a5bba6f2884958be31c86ed917109661a59e65a7b42b656ca8a81430e0b5e7ca5507f4ccd053 werror-lto.patch 835f5735d6fc52ad0a3b99f21a0a06cb310f21981a6036f4c9b76312eb947af7fa065ef7f530bcd63ee9271d293778cc8ddf098764c2878a8500aa04ee05c2b1 qt_functions.patch 9a3e491e2b2a9ea3f15da3766a2d743bafead7ae1e6a6ca3e6e9c7352dc268221311acd73664e5452622e2bc91cc88a2a7d3b4ebe6634b4da74c54b3bde0bb7f ppc.patch 183767e9a291dd605797cdc46382d8cb6a73a342348a40df7d52864ea27b3aa8709808cd51c46f5e611c247229ed336cb569bed1185c4c97b03171b56bbe5653 qt-plugin-path.patch 6ec05a4b2d4cdee79eb4a985060c94174f5bd47ca99c8de30ebf8244e2f6bd97fcc56a132fd4e557f1e91f79ced796d149be950dd0b975227865a864542fdbee guard-msse2.patch 952570fe403727554b977e923d54b7a61aeaefc411a24d338196c28ad226b025c9005fdfab9f7c191ad2e43105a6aa42dbb059bf0984e7573a423bde6c041a7c variables-after-project.patch edb5e7b1492c4913d2669610c7666a90fd94a615b7e3fc0c84e82bfd56fc61515b0e8ce14b35232a2f60f69db02769b8a05a4d11ccffec771d767cb600c92340 qt_functions.cpp"