Добавление rudesktop 2.0.3

master
serg-sg 10 months ago
parent 37f557178f
commit c8ff1f2d7a

@ -0,0 +1 @@
DIST rudesktop-amd64.deb 7583664 BLAKE2B 01c46799c5c99ef603c7faa4e945aef12eafb8819c220fd53f18a3887fb2f1391f0c3dc80a7a52bef8e4dd5ffe4178bf78f933f1ea873fa5fa5cf9bdd5d75905 SHA512 3a912ad26f94f16100c13f7d50973c1ff167e955c81dcdc436a10b3feedc6724c80756247c96c394031832ad56d50c7150e5b4d02836f5af0e8a98294e3cbaeb

@ -0,0 +1,131 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
inherit desktop xdg unpacker
DESCRIPTION="A remote control software."
HOMEPAGE="https://rudesktop.ru/"
SRC_URI="https://rudesktop.ru/download/rudesktop-amd64.deb"
LICENSE=""
SLOT="0"
KEYWORDS="~amd64"
# Зависимости для запуска этой программы
RDEPEND="
app-misc/ca-certificates
dev-libs/libayatana-appindicator
media-libs/alsa-lib
sys-apps/systemd-utils
x11-libs/gtk+:3
x11-libs/libxcb
x11-libs/libXfixes
x11-libs/libXtst
"
RESTRICT="bindist mirror strip"
S=${WORKDIR}
# Убираем суффикс в названии продукта
MY_PN=${PN/-bin/}
src_unpack() {
unpack_deb ${A}
}
src_install() {
mv * "${D}" || die
# Перемещаем библиотеку в подпапку с именем пакета
mkdir -p ${D}/usr/lib/${MY_PN}
mv ${D}/usr/lib/libsciter-gtk.so ${D}/usr/lib/${MY_PN}/
# Добавление службы rudesktop
INITSYS=$(ls -al /proc/1/exe | awk -F' ' '{print $NF}' | awk -F'/' '{print $NF}')
if [ "systemd" == "${INITSYS}" ]; then
mkdir -p ${D}/usr/lib/systemd/system
cp ${D}/usr/share/${MY_PN}-client/files/systemd/${MY_PN}.service ${D}/usr/lib/systemd/system/${MY_PN}.service
else
mkdir -p ${D}/etc/init.d/
echo '#!/sbin/openrc-run
name="RuDesktop"
description="RuDesktop Daemon Service"
supervisor="supervise-daemon"
command="/usr/bin/rudesktop"
command_args="--service"
command_user="root"
pidfile="/run/rudesktop"
depend() {
after xdm
need net
}' > ${D}/etc/init.d/${MY_PN}
fi
# Исправление прав на запуск службы
chmod +x ${D}/etc/init.d/${MY_PN}
# # Исправление ярлыка для меню Пуск
echo "Exec=${MY_PN} %u" >> ${D}/usr/share/applications/${MY_PN}.desktop
}
pkg_preinst() {
INITSYS=$(ls -al /proc/1/exe | awk -F' ' '{print $NF}' | awk -F'/' '{print $NF}')
if [ "systemd" == "${INITSYS}" ]; then
service ${MY_PN} stop || true
if [ -e /etc/systemd/system/${MY_PN}.service ]; then
rm -f /etc/systemd/system/${MY_PN}.service /usr/lib/systemd/system/${MY_PN}.service /usr/lib/systemd/user/${MY_PN}.service
fi
else
rc-service ${MY_PN} stop
fi
}
pkg_postinst() {
echo "root ALL=(ALL) NOPASSWD:SETENV:/usr/bin/${MY_PN}" > /etc/sudoers.d/${MY_PN}
/usr/bin/python3 /usr/share/${MY_PN}-client/files/patch-X11.py
INITSYS=$(ls -al /proc/1/exe | awk -F' ' '{print $NF}' | awk -F'/' '{print $NF}')
if [ "systemd" == "${INITSYS}" ]; then
systemctl daemon-reload
systemctl enable ${MY_PN}
systemctl start ${MY_PN}
else
# Добавление службы в автозагрузку
rc-update add ${MY_PN} default
# Запуск службы rustdesk
rc-service ${MY_PN} start
fi
if [ ! -z "$RUDESKTOP_DOMAIN" ]; then
/usr/bin/${MY_PN} --rendezvous $RUDESKTOP_DOMAIN || true
fi
mv /usr/lib/${MY_PN}/libsciter-gtk.so /usr/lib/
rm -rf /usr/lib/${MY_PN}
}
pkg_prerm() {
# Зачистка мусора
INITSYS=$(ls -al /proc/1/exe | awk -F' ' '{print $NF}' | awk -F'/' '{print $NF}')
if [ "systemd" == "${INITSYS}" ]; then
systemctl stop ${MY_PN} || true
systemctl disable ${MY_PN} || true
rm -f /etc/systemd/system/${MY_PN}.service /usr/lib/systemd/system/${MY_PN}.service /usr/lib/systemd/user/${MY_PN}.service /etc/sudoers.d/${MY_PN}
else
rc-update delete ${MY_PN}
rc-service ${MY_PN} stop
fi
rm -rf /usr/lib/libsciter-gtk.so
rm -rf /usr/share/${MY_PN}-client
# rm -rf /root/.config/rudesktop || true
}
Loading…
Cancel
Save