summaryrefslogtreecommitdiff
path: root/net-misc/tigervnc/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-03-24 23:59:54 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-03-24 23:59:54 +0000
commit401101f9c8077911929d3f2b60a37098460a5d89 (patch)
treec2bef4719f6787550f0916aeaa8f4f403a9296af /net-misc/tigervnc/files
parent4cbcc855382a06088e2f016f62cafdbcb7e40665 (diff)
gentoo resync : 25.03.2022
Diffstat (limited to 'net-misc/tigervnc/files')
-rw-r--r--net-misc/tigervnc/files/tigervnc-1.12.0.confd4
-rw-r--r--net-misc/tigervnc/files/tigervnc-1.12.0.initd28
2 files changed, 14 insertions, 18 deletions
diff --git a/net-misc/tigervnc/files/tigervnc-1.12.0.confd b/net-misc/tigervnc/files/tigervnc-1.12.0.confd
index a65c991eabcc..d03da01660be 100644
--- a/net-misc/tigervnc/files/tigervnc-1.12.0.confd
+++ b/net-misc/tigervnc/files/tigervnc-1.12.0.confd
@@ -11,5 +11,5 @@
# TIGERVNC_XSESSION_FILE="/etc/lightdm/Xsession"
# TIGERVNC_XSESSION_FILE="/usr/share/slim/Xsession"
-# Specify any of vncserver(1) and Xvnc(1) options. See the respective man pages for more information.
-# VNC_OPTS=""
+# vncsession no longer supports VNC_OPTS
+# Use /etc/tigervnc/vncserver-config-defaults or $HOME/.vnc/config instead
diff --git a/net-misc/tigervnc/files/tigervnc-1.12.0.initd b/net-misc/tigervnc/files/tigervnc-1.12.0.initd
index 59da61eed5f7..c27d9c01bd7e 100644
--- a/net-misc/tigervnc/files/tigervnc-1.12.0.initd
+++ b/net-misc/tigervnc/files/tigervnc-1.12.0.initd
@@ -2,25 +2,26 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License, v2 or later
+# shellcheck shell=sh
+
depend() {
need net
}
checkconfig() {
if [ -n "${DISPLAYS}" ]; then
- if [ $1 = "start" ]; then
- local user
+ if [ "$1" = "start" ]; then
for user in $DISPLAYS; do
if eval [ ! -f "~${user%%:*}/.vnc/passwd" ]; then
eerror "There are no passwords defined for user ${user%%:*}."
return 1
elif [ -e "/tmp/.X11-unix/X${user##*:}" ]; then
eerror "Display :${user##*:} appears to be already in use because of /tmp/.X11-unix/X${user##*:}"
- eerror "Remove this file if there is no X server $HOSTNAME:${user##*:}"
+ eerror "Remove this file if there is no X server for :${user##*:}"
return 1
elif [ -e "/tmp/.X${user##*:}-lock" ]; then
eerror "Display :${user##*:} appears to be already in use because of /tmp/.X${user##*:}-lock"
- eerror "Remove this file if there is no X server $HOSTNAME:${user##*:}"
+ eerror "Remove this file if there is no X server for :${user##*:}"
return 1
elif ! grep -E "^[^#]*:${user##*:}=${user%%:*}" /etc/tigervnc/vncserver.users > /dev/null 2>&1; then
eerror "User ${user%%:*} is not defined for display :${user##*:} in /etc/tigervnc/vncserver.users"
@@ -30,6 +31,8 @@ checkconfig() {
fi
return 0
else
+ # here it is intended for $DISPLAYS to not expand
+ # shellcheck disable=SC2016
eerror 'Please define $DISPLAYS in /etc/conf.d/tigervnc'
return 1
fi
@@ -39,15 +42,8 @@ start() {
checkconfig start || return 1
ebegin "Starting TigerVNC server"
for user in $DISPLAYS; do
- usrname=${user%%:*}
- usropts=VNC_OPTS_${usrname}
- usrdisp=${user##*:}
- usrvar=$usropts"["$usrdisp"]"
- [ -z ${!usrvar} ] && vnc_opts=$VNC_OPTS || vnc_opts=${!usrvar}
-
[ -n "${TIGERVNC_XSESSION_FILE}" ] && export TIGERVNC_XSESSION_FILE
-
- /usr/libexec/vncsession-start :${user##*:} $vnc_opts &>/dev/null
+ /usr/libexec/vncsession-start ":${user##*:}" >/dev/null 2>&1
done
eend $?
}
@@ -59,10 +55,10 @@ stop() {
# vncserver no longer provides a `-kill` option
# killing vncsession does not work, we have to kill Xvnc
# run pstree to see exactly what's going on
- sessionpid=`cat /run/vncsession-\:${user##*:}.pid`
- serverpid=`pstree -p $sessionpid | grep Xvnc | sed -e 's/^.*Xvnc(//
- s/).*$//'`
- kill $serverpid &>/dev/null
+ sessionpid=$(cat /run/vncsession-:"${user##*:}".pid)
+ serverpid=$(pstree -p "$sessionpid" | grep Xvnc | sed -e 's/^.*Xvnc(//
+ s/).*$//')
+ kill "$serverpid" >/dev/null 2>&1
done
# Do not fail if a server is missing
/bin/true