Исправление запуска Telegram-desktop-bin 4.10.3 с ярлыка

master
serg-sg 7 months ago
parent 3bb815ce57
commit 10540cbec4

@ -15,6 +15,7 @@ DIST icon64.png 5613 BLAKE2B a203662cba66981c6b940716bf45338ae93d79a9b720b2fccbb
DIST org.telegram.desktop.desktop 562 BLAKE2B 041c892431dfa4960faf77dde586dfcb9a84a9333671e2395e5c14759db0b6a0285e7561f5dd4529f06f0262551d0626d758e56d48d43d0c22ebbcb1c40b6589 SHA512 3835d3ed408988e5db21e603df9ec69cac1d732ec162e2789a3adc62ca99311c6f874ba55b34125b324b39c23dee6dad48542596db48687fa076f9ea442217cd
DIST org.telegram.desktop.metainfo.xml 6667 BLAKE2B f42191074369eb8fa47de486c950f7a855d9f17baf83e1741b2a840b58387efa6bb463ef693f312ab6db13e358ec04a9c98b4fc791e966c5c6aa54ebc5862945 SHA512 5be89f84ed9eb1fbccd0998d657b46ea5bd2efaf72cd5949b59f22691ec65a79c7ac794c89c4dce19fad5cf43f7db68571eaeb5ff8d694d658d0314e3d9cd082
DIST org.telegram.desktop.service 92 BLAKE2B 97e586db29055cdbab769fb2d6a331883c01006b58b792c5fa5466878d1667ab281b9dcc54b5732538a18baa78ad5bec22ceb30ead56058aa826e1a7bd81b512 SHA512 b1657103708b2591a3efdf93928bbd0d8f8b7afa2b693340957a37b80c1624f2bffbee7335f5c033f0ec85c32c076031c16a24fd6f972dd5f9016f3bcf5a499e
DIST tdesktop-4.10.3.tar.gz 18112345 BLAKE2B d64e9bd897295917ee9875565c571de954d7b57b40fd37c542e5d27b4799c4c55b1c9e7afe27bcadc3a7d2012188f9e95eed9a39073b758ee46b4f8b35de416c SHA512 60d819208cb003f4b1716bbf279e3cb29c8925af9c21e149b611dbb66f06ed8638a4113db4cd603708c53afe67e6bf3649fa9044195885fbf46e34e306afce0e
DIST tdesktop-4.8.1.tar.gz 17647125 BLAKE2B 154bce8111532f583cb27eb92d59a8218840fb65a2be479ece9f79824ed9ec364a76d97989513d9850a61c1a763b90c55cefbe9216a690a7bbffd8f85cca2bd9 SHA512 5a84eb49408e6e345cde330f4d969f1d22bc3849812b88a2199f1ac551198f58d21395150d64f86460d3e79682cbe41978495948caea66801e895c2b80257ff0
DIST tsetup.4.10.0.tar.xz 52141092 BLAKE2B f97da8b07730845a87ece5954eb3942dd834fa7a7a41dd504735235f7cc76e4eb73f84a0b7d8b7ab98fe9b174e49ce5f62e1bc0bbe5192a49ee908297ba65727 SHA512 3e211a7de811ef1143e724b4badac52a5d5142080463eaae030c6649dd8e670673655031f812961931189a4e79376e9700e751ee9918e726b35632a018250499
DIST tsetup.4.10.3.tar.xz 52239308 BLAKE2B 8d028c964e5d60788dcf35c370d942a5bc4c5f1682b7edf9787ce6ca60b363d58267cc71d1916092d90d0a4b8baf8d4ac09cede8651db8b5786292a1f8060b66 SHA512 27260d01c5b1bf1ae7120b9d4f95168b4335c8f803b21637af967d534cb9e538484b7c6e2782e79fa0a50b209ce489143546fd648cbc6d209a144ab5bd3f2ca1

@ -0,0 +1,86 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit desktop optfeature xdg
DESCRIPTION="Official desktop client for Telegram (binary package)"
HOMEPAGE="https://desktop.telegram.org"
hashbin="_ebde341c008dbbf9f7d6014b3e11f494"
SRC_URI="
https://github.com/telegramdesktop/tdesktop/archive/v${PV}.tar.gz -> tdesktop-${PV}.tar.gz
amd64? ( https://github.com/telegramdesktop/tdesktop/archive/v${PV}.tar.xz -> tsetup.${PV}.tar.xz )
"
LICENSE="GPL-3-with-openssl-exception"
SLOT="0"
KEYWORDS="-* ~amd64"
QA_PREBUILT="usr/bin/telegram-desktop"
RDEPEND="
!net-im/telegram-desktop
sys-libs/glibc
dev-libs/glib:2
>=media-libs/fontconfig-2.13
media-libs/freetype:2
virtual/opengl
x11-libs/libX11
>=x11-libs/libxcb-1.10[xkb]
"
RESTRICT="bindist mirror strip"
S="${WORKDIR}/Telegram"
src_prepare() {
default
mkdir -p "${WORKDIR}/usr/share/mime/packages/" || die
cp -r "${WORKDIR}/tdesktop-${PV}/lib/xdg/"*.xml "${WORKDIR}/usr/share/mime/packages/" || die
sed -i -E -e 's/^Exec=.*telegram-desktop/Exec=\/usr\/bin\/telegram-desktop/' \
"${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.service || die
#Добавим HASH для desktop-файла, иначе при запуске с ярлыка будет падать с ошибкой. У каждого бинарного файла HASH свой.
#Чтобы узнать HASH, необходимо создать папку TelegramForcePortable рядом с бинарным файлом Telegram. При запуске содаётся журнал
#где можно подсмотреть HASH командой: grep "] App ID:" TelegramForcePortable/log.txt
mv "${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.desktop \
"${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.desktop.${hashbin} || die
}
src_install() {
newbin Telegram telegram-desktop
insinto /etc/tdesktop
newins - externalupdater <<<"${EPREFIX}/usr/bin/telegram-desktop"
for icon in "${WORKDIR}/tdesktop-${PV}/Telegram/Resources/art/"icon*.png; do
if [[ ${icon} =~ "^_" ]] ; then
size=${icon##*/icon}
size=${size%.png}
size=${size%\@2x}
dodir "/usr/share/icons/hicolor/${size}/apps"
if [[ ${icon} =~ "@2x" ]] ; then
newicon -s ${size%%x*} "$icon" ${PN}@2x.png
else newicon -s ${size%%x*} "$icon" ${PN}.png
fi
fi
done
dosym ../icons/hicolor/512x512/apps/${PN}.png \
/usr/share/pixmaps/${PN}.png
domenu "${WORKDIR}/tdesktop-${PV}"/lib/xdg/*.desktop.${hashbin}
insinto /usr/share/dbus-1/services
doins "${WORKDIR}/tdesktop-${PV}"/lib/xdg/*.service
cp -Lr ${WORKDIR}/usr/* "${D}/usr/"
}
pkg_postinst() {
xdg_pkg_postinst
optfeature "spell checker support" app-text/enchant
}

@ -1,104 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit desktop optfeature xdg
DESCRIPTION="Official desktop client for Telegram (binary package)"
HOMEPAGE="https://desktop.telegram.org"
SRC_URI="
https://github.com/telegramdesktop/tdesktop/archive/v${PV}.tar.xz -> tsetup.${PV}.tar.xz
amd64? ( https://updates.tdesktop.com/tlinux/tsetup.${PV}.tar.xz )
https://github.com/telegramdesktop/tdesktop/raw/dev/lib/xdg/org.telegram.desktop.desktop
https://github.com/telegramdesktop/tdesktop/raw/dev/lib/xdg/org.telegram.desktop.metainfo.xml
https://github.com/telegramdesktop/tdesktop/raw/dev/lib/xdg/org.telegram.desktop.service
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon16.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon16%402x.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon32.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon32%402x.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon48.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon48%402x.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon64.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon64%402x.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon128.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon128%402x.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon256.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon256%402x.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon512.png
https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon512%402x.png
"
#https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon_round512%402x.png
#https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/icon_green.png
#https://github.com/telegramdesktop/tdesktop/raw/dev/Telegram/Resources/art/iconbig_green.png
LICENSE="GPL-3-with-openssl-exception"
SLOT="0"
KEYWORDS="-* ~amd64"
QA_PREBUILT="usr/bin/telegram-desktop"
RDEPEND="
!net-im/telegram-desktop
sys-libs/glibc
dev-libs/glib:2
>=media-libs/fontconfig-2.13
media-libs/freetype:2
virtual/opengl
x11-libs/libX11
>=x11-libs/libxcb-1.10[xkb]
"
RESTRICT="bindist mirror strip"
S="${WORKDIR}/Telegram"
src_unpack() {
unpack tsetup.${PV}.tar.xz
}
src_prepare() {
mkdir -p "${WORKDIR}/tdesktop-${PV}/lib/xdg/"
mkdir -p "${WORKDIR}/tdesktop-${PV}/Telegram/Resources/art/"
mkdir -p "${WORKDIR}/usr/share/mime/packages/"
cp -r ${DISTDIR}/*.desktop "${WORKDIR}/tdesktop-${PV}/lib/xdg/"
cp -r ${DISTDIR}/*.service "${WORKDIR}/tdesktop-${PV}/lib/xdg/"
cp -r ${DISTDIR}/*.xml "${WORKDIR}/usr/share/mime/packages/"
cp -r ${DISTDIR}/icon* "${WORKDIR}/tdesktop-${PV}/Telegram/Resources/art/"
sed -i -E -e 's/^Exec=.*telegram-desktop/Exec=\/usr\/bin\/telegram-desktop/' \
"${WORKDIR}/tdesktop-${PV}"/lib/xdg/org.telegram.desktop.service || die
default
}
src_install() {
newbin Telegram telegram-desktop
insinto /etc/tdesktop
newins - externalupdater <<<"${EPREFIX}/usr/bin/telegram-desktop"
for icon in "${WORKDIR}/tdesktop-${PV}/Telegram/Resources/art/"*.png; do
size=${icon##*/icon}
size=${size%.png}
size=${size%\%402x}
dodir "/usr/share/icons/hicolor/${size}/apps"
if [[ ${icon} =~ "%402x" ]] ; then
newicon -s ${size%%x*} "$icon" ${PN}@2x.png
else newicon -s ${size%%x*} "$icon" ${PN}.png
fi
done
dosym ../icons/hicolor/512x512/apps/${PN}.png \
/usr/share/pixmaps/${PN}.png
domenu "${WORKDIR}/tdesktop-${PV}"/lib/xdg/*.desktop
insinto /usr/share/dbus-1/services
doins "${WORKDIR}/tdesktop-${PV}"/lib/xdg/*.service
cp -Lr ${WORKDIR}/usr/* "${D}/usr/"
}
pkg_postinst() {
xdg_pkg_postinst
optfeature "spell checker support" app-text/enchant
}
Loading…
Cancel
Save