From 4e6ef156028cc48d21ff5b3f131bdb8882407395 Mon Sep 17 00:00:00 2001 From: Breno Leitao Date: Thu, 9 May 2019 11:03:24 +0100 Subject: weston-init: Add support for non-root start This commit adds support for two variables (WESTON_USER and WESTON_TTY) that would be passed to weston_launch. It allows starting weston as a non-root user. Signed-off-by: Breno Leitao Signed-off-by: Richard Purdie --- meta/recipes-graphics/wayland/weston-init/weston-start | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'meta') diff --git a/meta/recipes-graphics/wayland/weston-init/weston-start b/meta/recipes-graphics/wayland/weston-init/weston-start index d631c2f1e9..d19dbcbf75 100755 --- a/meta/recipes-graphics/wayland/weston-init/weston-start +++ b/meta/recipes-graphics/wayland/weston-init/weston-start @@ -27,10 +27,19 @@ if [ -n "$WAYLAND_DISPLAY" ]; then echo "ERROR: A Wayland compositor is already running, nested Weston instance is not supported yet." exit 1 fi + +if [ -n "$WESTON_USER" ]; then + if [ -z "$WESTON_TTY" ]; then + echo "ERROR: If you have WESTON_USER variable set, you also need WESTON_TTY." + exit 1 + fi + weston_args_user="-u $WESTON_USER -t $WESTON_TTY" +fi + if [ -n "$DISPLAY" ]; then launcher="weston" else - launcher="weston-launch --" + launcher="weston-launch $weston_args_user --" fi openvt_args="-s" @@ -59,11 +68,15 @@ if [ -d "$modules_dir" ]; then fi if test -z "$XDG_RUNTIME_DIR"; then - export XDG_RUNTIME_DIR=/run/user/`id -u` + export XDG_RUNTIME_DIR=/run/user/`id -u ${WESTON_USER}` if ! test -d "$XDG_RUNTIME_DIR"; then mkdir --parents $XDG_RUNTIME_DIR chmod 0700 $XDG_RUNTIME_DIR fi + if [ -n "$WESTON_USER" ] + then + chown $WEST_USER:$WESTON_USER $XDG_RUNTIME_DIR + fi fi exec openvt $openvt_args -- $launcher $weston_args --log=@LOCALSTATEDIR@/log/weston.log -- cgit 1.2.3-korg