|
|
|
@ -5,13 +5,15 @@ EAPI="8"
|
|
|
|
|
|
|
|
|
|
inherit desktop unpacker xdg
|
|
|
|
|
|
|
|
|
|
DESCRIPTION="ViPNet Client for Linux GUI by JSC InfoTeCS"
|
|
|
|
|
DESCRIPTION="ViPNet Client for Linux GUI by JSC InfoTeCS. GUI version"
|
|
|
|
|
HOMEPAGE="https://www.vipnet.ru"
|
|
|
|
|
|
|
|
|
|
MY_PV=${PV/0./0-}
|
|
|
|
|
MY_PN=${PN/-gost/_gost}
|
|
|
|
|
|
|
|
|
|
SRC_URI="https://git.calculate-linux.org/serg-sg/sources/raw/branch/master/net-vpn/vipnetclient/${MY_PN}_ru_amd64_${MY_PV}.deb"
|
|
|
|
|
SRC_URI="
|
|
|
|
|
amd64? ( https://git.calculate-linux.org/serg-sg/sources/raw/branch/master/net-vpn/vipnetclient/${MY_PN}_ru_amd64_${MY_PV}.deb )
|
|
|
|
|
"
|
|
|
|
|
|
|
|
|
|
LICENSE=""
|
|
|
|
|
SLOT="0"
|
|
|
|
@ -20,8 +22,8 @@ RESTRICT="bindist mirror strip"
|
|
|
|
|
|
|
|
|
|
RDEPEND="
|
|
|
|
|
!net-vpn/vipnetclient-gui
|
|
|
|
|
!net-vpn/vipnetclient-cli
|
|
|
|
|
!net-vpn/vipnetclient-cli-gost
|
|
|
|
|
!net-vpn/vipnetclient
|
|
|
|
|
!net-vpn/vipnetclient-gost
|
|
|
|
|
x11-libs/libxkbcommon[X(+)]
|
|
|
|
|
x11-libs/libxcb[xkb(+)]
|
|
|
|
|
sys-process/procps
|
|
|
|
@ -34,8 +36,9 @@ pkg_setup() {
|
|
|
|
|
|
|
|
|
|
# Sandbox Disabled
|
|
|
|
|
|
|
|
|
|
rm -rf /tmp/vipnetclient
|
|
|
|
|
mkdir -p /tmp/vipnetclient
|
|
|
|
|
UPGRADE_DIR="/tmp/vipnetclient"
|
|
|
|
|
rm -rf ${UPGRADE_DIR}
|
|
|
|
|
mkdir -p ${UPGRADE_DIR}
|
|
|
|
|
|
|
|
|
|
# Creating file-markers on each existing vipnetclient process and send them USR1
|
|
|
|
|
for pid in $(pgrep -U0 -x vipnetclient); do
|
|
|
|
@ -52,7 +55,7 @@ src_unpack() {
|
|
|
|
|
|
|
|
|
|
unpack_deb ${A}
|
|
|
|
|
|
|
|
|
|
# Переименуем папку systemd чтобы не попал под фильтр INSTALL-MASK
|
|
|
|
|
# Переместим папку systemd чтобы не попал под фильтр INSTALL-MASK
|
|
|
|
|
mv -f ${S}/etc/systemd ${S}/var/lib/vipnet/systemd || die
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
@ -91,9 +94,14 @@ pkg_postinst() {
|
|
|
|
|
# create service and init scripts
|
|
|
|
|
if which systemctl >/dev/null 2>&1; then
|
|
|
|
|
systemctl reset-failed
|
|
|
|
|
systemctl stop vipnetclientdaemon* && elog "Служба установлена"
|
|
|
|
|
systemctl stop vipnetclientdaemon*
|
|
|
|
|
elog "Служба vipnetclientdaemon установлена"
|
|
|
|
|
elif which update-rc.d >/dev/null 2>&1; then
|
|
|
|
|
update-rc.d vipnetclient defaults 90 10 >/dev/null 2>&1 \
|
|
|
|
|
&& elog "Служба vipnetclient установлена"
|
|
|
|
|
elif which rc-update >/dev/null 2>&1; then
|
|
|
|
|
rc-update add vipnetclient default && elog "Служба установлена"
|
|
|
|
|
rc-update add vipnetclient default \
|
|
|
|
|
&& elog "Служба vipnetclient установлена"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# Set capability
|
|
|
|
@ -109,6 +117,27 @@ pkg_postinst() {
|
|
|
|
|
|
|
|
|
|
pkg_prerm () {
|
|
|
|
|
|
|
|
|
|
# Размонтируем виртуальный диск
|
|
|
|
|
umount /home/*/.vipnet/var/run
|
|
|
|
|
umount /root/.vipnet/var/run
|
|
|
|
|
|
|
|
|
|
#update man db
|
|
|
|
|
mandb >/dev/null 2>&1
|
|
|
|
|
|
|
|
|
|
# Update shared libraries paths
|
|
|
|
|
which ldconfig >/dev/null 2>&1 && ldconfig 2>/dev/null
|
|
|
|
|
|
|
|
|
|
# disable service and remove init scripts
|
|
|
|
|
if which systemctl >/dev/null 2>&1; then
|
|
|
|
|
systemctl disable vipnetclient >/dev/null 2>&1
|
|
|
|
|
if [ -f /etc/systemd/system/vipnetclient_gui_login.service ]; then
|
|
|
|
|
systemctl disable vipnetclient_gui_login >/dev/null 2>&1
|
|
|
|
|
fi
|
|
|
|
|
elif which update-rc.d >/dev/null 2>&1; then
|
|
|
|
|
update-rc.d -f vipnetclient remove >/dev/null 2>&1
|
|
|
|
|
elif which rc-update >/dev/null 2>&1; then
|
|
|
|
|
rc-update del vipnetclient >/dev/null 2>&1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# При новой установке REPLACING_VERSIONS = "", при новой установке pkg_postrm() не выполняется.
|
|
|
|
|
# При удалении REPLACING_VERSIONS не вычисляется, этап pkg_postinst() не выполняется.
|
|
|
|
@ -123,25 +152,14 @@ pkg_prerm () {
|
|
|
|
|
pkill -f --signal INT ${GUI_NAME} 2>/dev/null
|
|
|
|
|
|
|
|
|
|
# Удалим мусор при окончательном удалении
|
|
|
|
|
elog "Пакет окончательно удаляется"
|
|
|
|
|
elog "Пакет ${PN} окончательно удаляется"
|
|
|
|
|
rm -rf /etc/systemd/system/vipnetclient*
|
|
|
|
|
rm -f /etc/rc*/*vipnetclient >/dev/null 2>&1
|
|
|
|
|
rm -f /etc/vipnet_token.conf
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# Размонтируем виртуальный диск
|
|
|
|
|
umount /home/*/.vipnet/var/run
|
|
|
|
|
umount /root/.vipnet/var/run
|
|
|
|
|
|
|
|
|
|
# Update shared libraries paths
|
|
|
|
|
which ldconfig >/dev/null 2>&1 && ldconfig 2>/dev/null
|
|
|
|
|
|
|
|
|
|
# disable service and remove init scripts
|
|
|
|
|
if which systemctl >/dev/null 2>&1; then
|
|
|
|
|
systemctl disable vipnetclient >/dev/null 2>&1
|
|
|
|
|
if [ -f /etc/systemd/system/vipnetclient_gui_login.service ]; then
|
|
|
|
|
systemctl disable vipnetclient_gui_login >/dev/null 2>&1
|
|
|
|
|
fi
|
|
|
|
|
elif which rc-update >/dev/null 2>&1; then
|
|
|
|
|
rc-update -f vipnetclient remove >/dev/null 2>&1
|
|
|
|
|
fi
|
|
|
|
|
xdg_icon_cache_update
|
|
|
|
|
xdg_mimeinfo_database_update
|
|
|
|
|
xdg_desktop_database_update
|
|
|
|
|
|
|
|
|
|
}
|