From e65da5598722160418b6faf772ea82ebd1eab7ed Mon Sep 17 00:00:00 2001 From: "Anna (navi) Figueiredo Gomes" Date: Fri, 23 Jun 2023 13:54:38 -0300 Subject: support: add xinit script for the dbus user services when running dbus under a graphical environment, it needs DISPLAY and XAUTHORITY set in order to auto-launch graphical applications. but when started via pam, or any way outside the gui, they won't be set. this installs a script to be auto-ran by xinit, that loads the variables in dbus. Signed-off-by: Anna (navi) Figueiredo Gomes --- support/meson.build | 1 + support/xinit/50-openrc-user.sh | 18 ++++++++++++++++++ support/xinit/meson.build | 6 ++++++ 3 files changed, 25 insertions(+) create mode 100644 support/xinit/50-openrc-user.sh create mode 100644 support/xinit/meson.build diff --git a/support/meson.build b/support/meson.build index f1b7b7e1..26c273db 100644 --- a/support/meson.build +++ b/support/meson.build @@ -5,3 +5,4 @@ subdir('deptree2dot') subdir('init.d.examples') subdir('openvpn') subdir('sysvinit') +subdir('xinit') diff --git a/support/xinit/50-openrc-user.sh b/support/xinit/50-openrc-user.sh new file mode 100644 index 00000000..01efe98e --- /dev/null +++ b/support/xinit/50-openrc-user.sh @@ -0,0 +1,18 @@ +#!/bin/sh +# Copyright (c) 2007-2023 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. + +# Graphical applications launched by dbus need those variables in an X +# environment. +if command -v dbus-update-activation-environment >/dev/null 2>&1 && + rc-service --user dbus status >/dev/null 2>&1 +then + dbus-update-activation-environment DISPLAY XAUTHORITY +fi diff --git a/support/xinit/meson.build b/support/xinit/meson.build new file mode 100644 index 00000000..ba2b8cac --- /dev/null +++ b/support/xinit/meson.build @@ -0,0 +1,6 @@ +xinit_bin = ['50-openrc-user.sh'] +xinit_dir = get_option('sysconfdir') / 'X11/xinit/xinitrc.d' + +install_data(xinit_bin, + install_dir : xinit_dir, + install_mode : 'rwxr-xr-x') -- cgit v1.2.3