#!@SBINDIR@/openrc-run # Copyright (c) 2017 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="starts an openrc session for an user" user="${RC_SVCNAME#*.}" extra_started_commands="runtime_directory" runtime_directory() { service_get_value xdg_runtime_dir } start_pre() { if [ "$user" = "$RC_SVCNAME" ]; then eerror "${RC_SVCNAME} cannot be started directly. You must create" eerror "symbolic links to it for the users you want to start" return 1 fi if [ -z "$XDG_RUNTIME_DIR" ]; then export XDG_RUNTIME_DIR="/run/user/$(id -u $user)" checkpath -d -o "$user:$user" "$XDG_RUNTIME_DIR" || return 1 fi service_set_value xdg_runtime_dir "$XDG_RUNTIME_DIR" } start() { ebegin "Starting user session for $user" user_init $user start eend $? return 0 } stop() { ebegin "Stopping user session for $user" user_init $user stop eend $? return 0 }