mirror of
https://github.com/kasmtech/KasmVNC.git
synced 2026-07-17 16:36:49 +00:00
KASM-3747 Oracle 9: add systemd support
This commit is contained in:
parent
1289674947
commit
4d4ac3ac0a
1 changed files with 34 additions and 0 deletions
|
|
@ -49,6 +49,7 @@ cp $SRC_BIN/vncconfig $DESTDIR/usr/bin;
|
|||
cp $SRC_BIN/kasmvncpasswd $DESTDIR/usr/bin;
|
||||
cp $SRC_BIN/kasmxproxy $DESTDIR/usr/bin;
|
||||
cp -r $SRC/lib/kasmvnc/ $DESTDIR/usr/lib/kasmvncserver
|
||||
cp -r $SRC/lib/systemd/ $DESTDIR/usr/lib/
|
||||
cd $DESTDIR/usr/bin && ln -s kasmvncpasswd vncpasswd;
|
||||
cp -r $SRC/share/doc/kasmvnc*/* $DESTDIR/usr/share/doc/kasmvncserver/
|
||||
rsync -r --links --safe-links --exclude '.git*' --exclude po2js --exclude xgettext-html \
|
||||
|
|
@ -68,12 +69,45 @@ cp $SRC/share/man/man1/vncpasswd.1 $DST_MAN;
|
|||
cp $SRC/share/man/man1/kasmxproxy.1 $DST_MAN;
|
||||
cd $DST_MAN && ln -s vncpasswd.1 kasmvncpasswd.1;
|
||||
|
||||
%preun
|
||||
stop_vncserver_systemd_services_for_all_logged_in_users() {
|
||||
for session in $(list_user_sessions); do
|
||||
stop_user_services "$session"
|
||||
done
|
||||
}
|
||||
|
||||
list_user_sessions() {
|
||||
loginctl list-sessions --no-legend | awk '{print $1}'
|
||||
}
|
||||
|
||||
stop_user_services() {
|
||||
local session="$1"
|
||||
|
||||
for service in $(list_active_services); do
|
||||
systemctl --user --machine=$(systemd_user_from_session "$session") stop "$service" || true
|
||||
done
|
||||
}
|
||||
|
||||
systemd_user_from_session() {
|
||||
local session="$1"
|
||||
|
||||
echo $(loginctl show-session "$session" -p Name --value)@
|
||||
}
|
||||
|
||||
list_active_services() {
|
||||
systemctl --user --machine=$(systemd_user_from_session "$session") \
|
||||
list-units --type=service --state=active --plain --no-legend | \
|
||||
awk '{ print $1 }' | grep kasmvncserver
|
||||
}
|
||||
|
||||
stop_vncserver_systemd_services_for_all_logged_in_users
|
||||
|
||||
%files
|
||||
%config(noreplace) /etc/kasmvnc
|
||||
|
||||
/usr/bin/*
|
||||
/usr/lib/kasmvncserver
|
||||
/usr/lib/systemd/user/kasmvncserver@.service
|
||||
/usr/share/man/man1/*
|
||||
/usr/share/perl5/KasmVNC
|
||||
/usr/share/kasmvnc
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue