Доработка ebuild у МойАссистент

master
serg-sg 5 months ago
parent ee5e8c24ab
commit 2198dae0a1

@ -1,2 +1 @@
DIST cassistant-5.4.2.deb 18932120 BLAKE2B 77b931e895cf7f3d6e4d59fa49164a26288d60059f93f4a6669da2942c582f02278f6d65717dfd0a49d3b4277124af8ef761914af0f6ce609297bd530f2497d1 SHA512 64ed40cf46ae6e0581a4cd35b386f6b9f38bab697e1341d344e1adf4aabd89de36818986a1f030ab3a4fb808e83383d9befca1aaf3d33c830b995fdf4b57e836
DIST cassistant-5.5.0.deb 21929980 BLAKE2B 371d77591bf9b848d9fea10a1a9eda250ed0892b81965a069b46666d809e0ea6a2b4b300897f3831988dec9e2a0e6dfabd2d6adc309e7a2aaf9a0e883bd1ee47 SHA512 84de48974fe996c3330b453ec96ec2e4862ebe9edea0be5fa36eaee6d85a47d81070abc599d521c6843aea65375c880e9f1db45fbaa301406ea82d0ffff18dec

@ -1,139 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
inherit unpacker
DESCRIPTION="Ассистент - удобный инструмент для безопасного удалённого доступа. Консольная версия."
HOMEPAGE="https://мойассистент.рф/"
SRC_URI="
https://xn--80akicokc0aablc.xn--p1ai/%D1%81%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C/Download/794 -> ${P}.deb
"
LICENSE=""
SLOT="0"
KEYWORDS="~amd64"
# Зависимости для запуска этой программы
RDEPEND="
!net-misc/assistant
app-shells/bash
"
RESTRICT="bindist mirror strip"
S=${WORKDIR}
MY_PN=${PN/c}
ASISTDIR="opt/${MY_PN}"
SCRIPTS_DIR="/${ASISTDIR}/scripts"
pkg_setup() {
# Sandbox Disabled
CRON_REGEXP_PATTERN="^\*\/1 \* \* \* \* root \/opt\/assistant\/scripts\/ast_restart\.sh$"
CRON_FILE="/etc/crontab"
sed -i "/${CRON_REGEXP_PATTERN}/d" ${CRON_FILE}
# Завершаем процессы, иначе не дают обновить или преустановить ранее установленную версию
killall assistant 2> /dev/null
killall asts 2> /dev/null
}
src_install() {
mv * "${D}" || die
sed -i -E -e '/^\s+eselect rc stop zassistantd/d' ${D}${SCRIPTS_DIR}/daemon.sh
sed -i -E -e 's/exec \/opt\/assistant\/bin\/asts/exec \/opt\/assistant\/bin\/asts --console/g' ${D}${SCRIPTS_DIR}/openrc.t
}
pkg_preinst() {
# Sandbox Disabled
# Завершаем процессы, иначе не дают обновить или преустановить ранее установленную версию
killall assistant 2> /dev/null
killall asts 2> /dev/null
}
pkg_postinst() {
# Sandbox Disabled
# Исправляем права на файлы и папки
chmod -R +x /${ASISTDIR}/{bin}
chmod -R +x ${SCRIPTS_DIR}
# chmod -R -x /${SCRIPTS_DIR}/${PN}.service
mkdir -p /${ASISTDIR}/{chat,log,screenshot,video}
chmod -R a+rw /${ASISTDIR}/{chat,license,log,screenshot,video}
rm -rf /root/.config/cassistant/
mkdir -p /root/.config/cassistant
ln -s /.config/cassistant/assistant.ini /root/.config/cassistant/assistant.ini
chmod 666 /root/.config/cassistant/assistant.ini
${SCRIPTS_DIR}/setup.sh --install
elog "--------------------------------------------------------------------------"
elog "Для получени ID и пароля подключени запустите"
elog "\"/opt/assistant/bin/asts --console\"."
elog "После того, как будет установлено соединение с сервером,"
elog "нажмите на клавиатуре клавишу [i]."
elog
elog "Для установки постоянного пароля убедитесь, что процессы asts завершены."
elog "Процессы можно завершить командой \"sudo killall asts 2> /dev/null\"."
elog
elog "Далее запустите \"sudo /opt/assistant/bin/asts --console -p <пароль>\"."
elog "--------------------------------------------------------------------------"
}
pkg_prerm() {
killall assistant 2> /dev/null
killall asts 2> /dev/null
# При новой установке REPLACING_VERSIONS = "", при новой установке pkg_postrm() не выполняется.
# При удалении REPLACING_VERSIONS не вычисляется, этап pkg_postinst() не выполняется.
# При удалении REPLACED_BY_VERSION = "", при новой установке pkg_postrm() не выполняется.
# При обновлении или переустановки выполняются этапы pkg_postinst() и pkg_postrm()
# и, соответственно, переменные REPLACING_VERSIONS и REPLACED_BY_VERSION имеют ненулевое значение.
# Таким образом мы можем определить, что пакет устанавливается, обновляется, переустанавливается поверх или удаляется
# и выстраивать соответствующую логику.
if [ "${REPLACED_BY_VERSION}" = "" ]; then
# Зачистка мусора
rc-update delete zassistantd
/etc/init.d/zassistantd stop
# Удалить ярлык
rm -f /usr/share/applications/assistant.desktop || die
# Удалить службу
rm -f /etc/init.d/zassistantd || die
${SCRIPTS_DIR}/setup.sh --uninstall
# Удалить каталог с журналами после удаления
rm -r -f /opt/assistant || die
rm -r -f /.config/${PN} || die
fi
}
pkg_postrm() {
if [ "${REPLACED_BY_VERSION}" = "" ]; then
elog "Пакет окончательно удаляется"
# Удалить каталог с журналами после удаления
rm -r -f /opt/assistant || die
rm -r -f /.config/${PN} || die
fi
}

@ -11,7 +11,7 @@ SRC_URI="
https://xn--80akicokc0aablc.xn--p1ai/%D1%81%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C/Download/890 -> ${P}.deb
"
LICENSE=""
LICENSE="ISC"
SLOT="0"
KEYWORDS="~amd64"
@ -47,8 +47,9 @@ pkg_setup() {
src_install() {
mv * "${D}" || die
sed -i -E -e '/^\s+eselect rc stop zassistantd/d' ${D}${SCRIPTS_DIR}/daemon.sh
sed -i -E -e 's/exec \/opt\/assistant\/bin\/asts/exec \/opt\/assistant\/bin\/asts --console/g' ${D}${SCRIPTS_DIR}/openrc.t
sed -i -E -e '/^\s+eselect rc stop zassistantd/d' "${D}${SCRIPTS_DIR}/daemon.sh"
sed -i -E -e 's/exec \/opt\/assistant\/bin\/asts/exec \/opt\/assistant\/bin\/asts --console/g' \
"${D}${SCRIPTS_DIR}/openrc.t"
}
Loading…
Cancel
Save