0
0
Fork 0
haikuports/net-im/kotatogram-desktop/kotatogram_desktop-1.4.4.re...

327 lines
14 KiB
Bash

SUMMARY="Experimental Telegram Desktop fork"
DESCRIPTION="Kotatogram Desktop, being based on Telegram Desktop, has all \
its features, but it also has some more useful and cosmetic features."
HOMEPAGE="https://kotatogram.github.io/"
COPYRIGHT="2013-2021 Telegram
2021 Kotatogram Team"
LICENSE="GNU GPL v3"
REVISION="1"
SOURCE_URI="https://github.com/kotatogram/kotatogram-desktop/archive/refs/tags/k$portVersion.tar.gz"
CHECKSUM_SHA256="453b1fb7ed280fd4c05d922553343cef7f06b408bfd1cfb24e7e7d1faf5d82ba"
SOURCE_FILENAME="kotatogram-$portVersion.tar.gz"
SOURCE_DIR="kotatogram-desktop-k$portVersion"
#libtgvoip
srcGitRev_2="373e41668b265864f8976b83bb66dd6e9a583915"
SOURCE_URI_2="https://github.com/telegramdesktop/libtgvoip/archive/$srcGitRev_2.tar.gz"
CHECKSUM_SHA256_2="6bdf3af434004617018988decd47e0eeb839fbff26574f5adaf129410d5463ce"
SOURCE_FILENAME_2="libtgvoip-$srcGitRev_2.tar.gz"
SOURCE_DIR_2="libtgvoip-$srcGitRev_2"
#rlottie
srcGitRev_3="cbd43984ebdf783e94c8303c41385bf82aa36d5b"
SOURCE_URI_3="https://github.com/desktop-app/rlottie/archive/$srcGitRev_3.tar.gz"
CHECKSUM_SHA256_3="0946541630edf1b4172a59b1fb167468f52945a9c0d5076a698c916c8488e5bd"
SOURCE_FILENAME_3="rlottie-$srcGitRev_3.tar.gz"
SOURCE_DIR_3="rlottie-$srcGitRev_3"
#lib_crl
srcGitRev_4="ec103d6bccaa59b56537c8658c9e41415bb9ccaf"
SOURCE_URI_4="https://github.com/desktop-app/lib_crl/archive/$srcGitRev_4.tar.gz"
CHECKSUM_SHA256_4="64edbf9083c9ce7f6e98e741596e47dafc9dbcc818e45b3288186c9668fad153"
SOURCE_FILENAME_4="lib_crl-$srcGitRev_4.tar.gz"
SOURCE_DIR_4="lib_crl-$srcGitRev_4"
#lib_rpl
srcGitRev_5="df721be3fa14a27dfc230d2e3c42bb1a7c9d0617"
SOURCE_URI_5="https://github.com/desktop-app/lib_rpl/archive/$srcGitRev_5.tar.gz"
CHECKSUM_SHA256_5="574a680d488bb25402463c3ef5f263df76635a805cfb00da87b59ab8c39c198d"
SOURCE_FILENAME_5="lib_rpl-$srcGitRev_5.tar.gz"
SOURCE_DIR_5="lib_rpl-$srcGitRev_5"
#lib_base
srcGitRev_6="e5a3b470d6524cdeb3e2deb92f04b0d290ceec24"
SOURCE_URI_6="https://github.com/desktop-app/lib_base/archive/$srcGitRev_6.tar.gz"
CHECKSUM_SHA256_6="579b60f2ea4c0a6874b7d0c383ec46896e56e4dc2d44156a5eb7c75187924313"
SOURCE_FILENAME_6="lib_base-$srcGitRev_6.tar.gz"
SOURCE_DIR_6="lib_base-$srcGitRev_6"
#codegen
srcGitRev_7="15026c5b6c5be43edae5c7737dbc011eec486e16"
SOURCE_URI_7="https://github.com/desktop-app/codegen/archive/$srcGitRev_7.tar.gz"
CHECKSUM_SHA256_7="435f2d18ec0916028a1611b4439ad7f69f2df16c6ea0d5303ba84227d7ec0af2"
SOURCE_FILENAME_7="codegen-$srcGitRev_7.tar.gz"
SOURCE_DIR_7="codegen-$srcGitRev_7"
#lib_ui
srcGitRev_8="eb86d2dc51aedc0a53188f1f2beb932e19442f9b"
SOURCE_URI_8="https://github.com/kotatogram/lib_ui/archive/$srcGitRev_8.tar.gz"
CHECKSUM_SHA256_8="c4e9eab8d179ef5a9304e863877f5e5b35121826d1eff862a14777dec652eea9"
SOURCE_FILENAME_8="lib_ui-$srcGitRev_8.tar.gz"
SOURCE_DIR_8="lib_ui-$srcGitRev_8"
#lib_rlottie
srcGitRev_9="0671bf70547381effcf442ec9618e04502a8adbc"
SOURCE_URI_9="https://github.com/desktop-app/lib_rlottie/archive/$srcGitRev_9.tar.gz"
CHECKSUM_SHA256_9="28b68af080b03bf0dd66bab5f9dceb712e0b3203fd5ad7f8096050272234941b"
SOURCE_FILENAME_9="lib_rlottie-$srcGitRev_9.tar.gz"
SOURCE_DIR_9="lib_rlottie-$srcGitRev_9"
#lib_lottie
srcGitRev_10="6fe29a2dfe8904559d31e3c9df5d51e9ed123011"
SOURCE_URI_10="https://github.com/desktop-app/lib_lottie/archive/$srcGitRev_10.tar.gz"
CHECKSUM_SHA256_10="f14a09b03a7d2402a531790cab01b601c80e4ab3dd6ce6eafd4a03614e6114bb"
SOURCE_FILENAME_10="lib_lottie-$srcGitRev_10.tar.gz"
SOURCE_DIR_10="lib_lottie-$srcGitRev_10"
#lib_tl
srcGitRev_11="45faed44e7f4d11fec79b7a70e4a35dc91ef3fdb"
SOURCE_URI_11="https://github.com/desktop-app/lib_tl/archive/$srcGitRev_11.tar.gz"
CHECKSUM_SHA256_11="1db86a372f9c5d87b836a60ee16bf6a69dd343840498bc0121118ac9fc2b80e1"
SOURCE_FILENAME_11="lib_tl-$srcGitRev_11.tar.gz"
SOURCE_DIR_11="lib_tl-$srcGitRev_11"
#lib_spellcheck
srcGitRev_12="212d660cbbb49592103de7a98fcb1c0f16efc36b"
SOURCE_URI_12="https://github.com/desktop-app/lib_spellcheck/archive/$srcGitRev_12.tar.gz"
CHECKSUM_SHA256_12="29b76026b4da7f146b238f25909b5f6acbbc6e233ecd861b1d98f3974e065ab8"
SOURCE_FILENAME_12="lib_spellcheck-$srcGitRev_12.tar.gz"
SOURCE_DIR_12="lib_spellcheck-$srcGitRev_12"
#lib_storage
srcGitRev_13="73d57840ac603107381e0e6b22d5b3bdcae492c6"
SOURCE_URI_13="https://github.com/desktop-app/lib_storage/archive/$srcGitRev_13.tar.gz"
CHECKSUM_SHA256_13="ce440ae1cbfc35a4e1f04adfe14497991a9347045970620b199abfd3f162b65b"
SOURCE_FILENAME_13="lib_storage-$srcGitRev_13.tar.gz"
SOURCE_DIR_13="lib_storage-$srcGitRev_13"
#cmake_helpers
srcGitRev_14="dfd1ab4b4959b943bb0236046d8f89bdacaaa266"
SOURCE_URI_14="https://github.com/kotatogram/cmake_helpers/archive/$srcGitRev_14.tar.gz"
CHECKSUM_SHA256_14="4ef8882f6575a2dbcc9c56cc45de63dc48cb186946419e71df372f36ae0bd342"
SOURCE_FILENAME_14="cmake_helpers-$srcGitRev_14.tar.gz"
SOURCE_DIR_14="cmake_helpers-$srcGitRev_14"
#QR-Code-generator
srcGitRev_15="67c62461d380352500fc39557fd9f046b7fe1d18"
SOURCE_URI_15="https://github.com/nayuki/QR-Code-generator/archive/$srcGitRev_15.tar.gz"
CHECKSUM_SHA256_15="1f1218c0a0abfc420cbc651675434d971b5e672b54428860339c51ecdf1958fc"
SOURCE_FILENAME_15="QR-Code-generator-$srcGitRev_15.tar.gz"
SOURCE_DIR_15="QR-Code-generator-$srcGitRev_15"
#lib_qr
srcGitRev_16="2b08c71c6edcfc3e31f7d7f518cc963493b6e189"
SOURCE_URI_16="https://github.com/desktop-app/lib_qr/archive/$srcGitRev_16.tar.gz"
CHECKSUM_SHA256_16="f1aee181ebbcec2e8b8f4d8321d966f8a51ee0f015153602987e88113d6816e9"
SOURCE_FILENAME_16="lib_qr-$srcGitRev_16.tar.gz"
SOURCE_DIR_16="lib_qr-$srcGitRev_16"
#lib_webrtc
srcGitRev_17="29d51317915ca43db45d436cba8eac3f40dea36b"
SOURCE_URI_17="https://github.com/desktop-app/lib_webrtc/archive/$srcGitRev_17.tar.gz"
CHECKSUM_SHA256_17="c5488b1d32d8509df2053413388f3b4e3adeb6da573552ac540d83a1edb6a63c"
SOURCE_FILENAME_17="lib_webrtc-$srcGitRev_17.tar.gz"
SOURCE_DIR_17="lib_webrtc-$srcGitRev_17"
#tgcalls
srcGitRev_18="f76a9290fa502a8df473dd872aedf9a553b089cc"
SOURCE_URI_18="https://github.com/TelegramMessenger/tgcalls/archive/$srcGitRev_18.tar.gz"
CHECKSUM_SHA256_18="6d5e4505e10c1be5ed1674ddb3a314bc8274cd216090a5f02cdc86c3c276a1b1"
SOURCE_FILENAME_18="tgcalls-$srcGitRev_18.tar.gz"
SOURCE_DIR_18="tgcalls-$srcGitRev_18"
#lib_webview
srcGitRev_19="0a3584b8d8e37f9745a0cb0fae725e8e8ea0d989"
SOURCE_URI_19="https://github.com/desktop-app/lib_webview/archive/$srcGitRev_19.tar.gz"
CHECKSUM_SHA256_19="16122bd4c13fc47ae19c10b7a2af6c9138b4cdd8a0b6e472148d7ce659d88b33"
SOURCE_FILENAME_19="lib_webview-$srcGitRev_19.tar.gz"
SOURCE_DIR_19="lib_webview-$srcGitRev_19"
#expected
srcGitRev_20="1d9c5d8c0da84b8ddc54bd3d90d632eec95c1f13"
SOURCE_URI_20="https://github.com/TartanLlama/expected/archive/$srcGitRev_20.tar.gz"
CHECKSUM_SHA256_20="95b82e57a6214ca84105016670eb7f080ad54f71290d8169fcaa969cb6dfc6c8"
SOURCE_FILENAME_20="expected-$srcGitRev_20.tar.gz"
SOURCE_DIR_20="expected-$srcGitRev_20"
#GSL
srcGitRev_21="1999b48a519196711f0d03af3b7eedd49fcc6db3"
SOURCE_URI_21="https://github.com/Microsoft/GSL/archive/$srcGitRev_21.tar.gz"
CHECKSUM_SHA256_21="486d9c18da2303e212165bee7e14fbe5565084b30b1ad7810e26a8a64059492f"
SOURCE_FILENAME_21="GSL-$srcGitRev_21.tar.gz"
SOURCE_DIR_21="GSL-$srcGitRev_21"
#APIKEY
srcGitRev_22="2b383fe05f8ae78ac99470b9a2b9ea22b3ee5a92"
SOURCE_URI_22="https://salsa.debian.org/debian/telegram-desktop/-/raw/$srcGitRev_22/debian/rules#noarchive"
CHECKSUM_SHA256_22="613e7e357518739e1f7d035337f37c344b248283fd4d916ddc95df73c2ff84ad"
PATCHES="kotatogram_desktop-$portVersion.patchset"
PATCHES_2="libtgvoip-$portVersion.patchset"
PATCHES_6="lib_base-$portVersion.patchset"
PATCHES_8="lib_ui-$portVersion.patchset"
PATCHES_14="cmake_helpers-$portVersion.patchset"
PATCHES_17="lib_webrtc-$portVersion.patchset"
PATCHES_18="tgcalls-$portVersion.patchset"
ADDITIONAL_FILES="kotatogram_desktop.rdef.in"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
kotatogram_desktop$secondaryArchSuffix = $portVersion
app:Kotatogram
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libabsl_strings$secondaryArchSuffix
lib:libabsl_throw_delegate$secondaryArchSuffix
lib:libatomic$secondaryArchSuffix
lib:libavcodec$secondaryArchSuffix
lib:libavformat$secondaryArchSuffix
lib:libavutil$secondaryArchSuffix
lib:libcrypto$secondaryArchSuffix
lib:libgiomm_2.4$secondaryArchSuffix
lib:libglib_2.0$secondaryArchSuffix
lib:libglibmm_2.4$secondaryArchSuffix
lib:libgthread_2.0$secondaryArchSuffix
lib:libhunspell_1.7$secondaryArchSuffix
lib:libintl$secondaryArchSuffix
lib:libjpeg$secondaryArchSuffix
lib:liblz4$secondaryArchSuffix
lib:liblzma$secondaryArchSuffix
lib:libminizip$secondaryArchSuffix
lib:libopenal$secondaryArchSuffix
lib:libopus$secondaryArchSuffix
lib:libQt5Core$secondaryArchSuffix
lib:libQt5Gui$secondaryArchSuffix
lib:libQt5Network$secondaryArchSuffix
lib:libQt5Widgets$secondaryArchSuffix
lib:librnnoise$secondaryArchSuffix
lib:libsigc_2.0$secondaryArchSuffix
lib:libswresample$secondaryArchSuffix
lib:libswscale$secondaryArchSuffix
lib:libxxhash$secondaryArchSuffix
lib:libz$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libabsl_strings$secondaryArchSuffix
devel:libabsl_throw_delegate$secondaryArchSuffix
devel:libavcodec$secondaryArchSuffix
devel:libavformat$secondaryArchSuffix
devel:libavutil$secondaryArchSuffix
devel:libcrypto$secondaryArchSuffix
devel:libglib_2.0$secondaryArchSuffix
devel:libglibmm_2.4$secondaryArchSuffix
devel:libgthread_2.0$secondaryArchSuffix
devel:libhunspell_1.7$secondaryArchSuffix
devel:libjpeg$secondaryArchSuffix
devel:liblz4$secondaryArchSuffix
devel:liblzma$secondaryArchSuffix
devel:libminizip$secondaryArchSuffix
devel:libopenal$secondaryArchSuffix
devel:libopus$secondaryArchSuffix
devel:libqrcodegen$secondaryArchSuffix
devel:libQt5Core$secondaryArchSuffix
devel:libQt5Gui$secondaryArchSuffix
devel:libQt5Network$secondaryArchSuffix
devel:libQt5Widgets$secondaryArchSuffix
devel:librapidjson$secondaryArchSuffix
devel:librnnoise$secondaryArchSuffix
devel:libswresample$secondaryArchSuffix
devel:libswscale$secondaryArchSuffix
devel:libtg_owt$secondaryArchSuffix
devel:libxxhash$secondaryArchSuffix
devel:libz$secondaryArchSuffix
devel:range_v3$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gawk
cmd:gcc$secondaryArchSuffix
cmd:lrelease$secondaryArchSuffix >= 5
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:python
cmd:sed
cmd:yasm
"
BUILD()
{
export DISABLE_ASLR=1
# get API_ID and API_HASH from Debian
local TELEGRAM_API_ID=`sed -n "/TDESKTOP_API_ID/p" $sourceDir22/rules | cut -d'=' -f2 | cut -d' ' -f1`
local TELEGRAM_API_HASH=`sed -n "/TDESKTOP_API_HASH/p" $sourceDir22/rules | cut -d'=' -f2 | cut -d' ' -f1`
if [ -z $TELEGRAM_API_ID ] || [ -z $TELEGRAM_API_HASH ]; then
TELEGRAM_API_ID="17349"
TELEGRAM_API_HASH="344583e45741c457fe1862106095a5eb"
echo -e "\e[91m***************************************************************************\e[39m"
echo -e "\e[91m Use demo API_ID = $TELEGRAM_API_ID and API_HASH = $TELEGRAM_API_HASH \e[39m"
echo -e "\e[91m***************************************************************************\e[39m"
else
echo -e "\e[32m***************************************************************************\e[39m"
echo -e "\e[32m Use custom API_ID = $TELEGRAM_API_ID and API_HASH = $TELEGRAM_API_HASH \e[39m"
echo -e "\e[32m***************************************************************************\e[39m"
fi
# link submodules
rm -rf $sourceDir/cmake
rm -rf $sourceDir/Telegram/ThirdParty/{libtgvoip,rlottie,QR,tgcalls,expected,GSL}
rm -rf $sourceDir/Telegram/{lib_crl,lib_rpl,lib_base,codegen,lib_ui,lib_lottie,lib_rlottie}
rm -rf $sourceDir/Telegram/{lib_tl,lib_spellcheck,lib_storage,lib_qr,lib_webrtc,lib_webview}
ln -sf $sourceDir2 $sourceDir/Telegram/ThirdParty/libtgvoip
ln -sf $sourceDir3 $sourceDir/Telegram/ThirdParty/rlottie
ln -sf $sourceDir4 $sourceDir/Telegram/lib_crl
ln -sf $sourceDir5 $sourceDir/Telegram/lib_rpl
ln -sf $sourceDir6 $sourceDir/Telegram/lib_base
ln -sf $sourceDir7 $sourceDir/Telegram/codegen
ln -sf $sourceDir8 $sourceDir/Telegram/lib_ui
ln -sf $sourceDir9 $sourceDir/Telegram/lib_rlottie
ln -sf $sourceDir10 $sourceDir/Telegram/lib_lottie
ln -sf $sourceDir11 $sourceDir/Telegram/lib_tl
ln -sf $sourceDir12 $sourceDir/Telegram/lib_spellcheck
ln -sf $sourceDir13 $sourceDir/Telegram/lib_storage
ln -sf $sourceDir14 $sourceDir/cmake
ln -sf $sourceDir15 $sourceDir/Telegram/ThirdParty/QR
ln -sf $sourceDir16 $sourceDir/Telegram/lib_qr
ln -sf $sourceDir17 $sourceDir/Telegram/lib_webrtc
ln -sf $sourceDir18 $sourceDir/Telegram/ThirdParty/tgcalls
ln -sf $sourceDir19 $sourceDir/Telegram/lib_webview
ln -sf $sourceDir20 $sourceDir/Telegram/ThirdParty/expected
ln -sf $sourceDir21 $sourceDir/Telegram/ThirdParty/GSL
# build telegram
mkdir -p build
cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DTDESKTOP_API_TEST=OFF \
-DTDESKTOP_DISABLE_GTK_INTEGRATION=ON \
-DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON \
-DDESKTOP_APP_DISABLE_DBUS_INTEGRATION=ON \
-DDESKTOP_APP_DISABLE_GTK_INTEGRATION=ON \
-DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION=ON \
-DDESKTOP_APP_DISABLE_X11_INTEGRATION=ON \
-DDESKTOP_APP_DISABLE_AUTOUPDATE=ON \
-DDESKTOP_APP_DISABLE_WEBKITGTK=ON \
-DDESKTOP_APP_USE_PACKAGED_FONTS=OFF \
-DDESKTOP_APP_USE_HUNSPELL_ONLY=ON \
-DTDESKTOP_USE_PACKAGED_TGVOIP=OFF \
-DLIBTGVOIP_DISABLE_ALSA=ON \
-DLIBTGVOIP_DISABLE_PULSEAUDIO=ON \
-DTDESKTOP_API_ID=$TELEGRAM_API_ID \
-DTDESKTOP_API_HASH=$TELEGRAM_API_HASH
make $jobArgs
}
INSTALL()
{
mkdir -p $appsDir
cp build/bin/Kotatogram $appsDir
strip $appsDir/Kotatogram
local APP_SIGNATURE="application/x-vnd.kotatogram"
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
local MINOR="`echo "$portVersion" | cut -d. -f3`"
local LONG_INFO="$SUMMARY"
sed \
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
-e "s|@MAJOR@|$MAJOR|" \
-e "s|@MIDDLE@|$MIDDLE|" \
-e "s|@MINOR@|$MINOR|" \
-e "s|@LONG_INFO@|$LONG_INFO|" \
$portDir/additional-files/kotatogram_desktop.rdef.in > build/kotatogram_desktop.rdef
addResourcesToBinaries build/kotatogram_desktop.rdef $appsDir/Kotatogram
addAppDeskbarSymlink $appsDir/Kotatogram
}