summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Swanson <reiver@improbability.net>2021-12-03 12:25:06 +0000
committerMatt Turner <mattst88@gentoo.org>2021-12-15 21:37:22 -0500
commitfefef5fbb829b1b9c0713252713b7a8454766876 (patch)
tree01e70bd2b6f7df6682c70a8a1ba2b773efedf271 /x11-base
parentx11-base/xorg-server: Disable 'secure-rpc' (diff)
downloadgentoo-fefef5fbb829b1b9c0713252713b7a8454766876.tar.gz
gentoo-fefef5fbb829b1b9c0713252713b7a8454766876.tar.bz2
gentoo-fefef5fbb829b1b9c0713252713b7a8454766876.zip
x11-base/xorg-server: Restore setuid for non-logind meson build
The meson build does not support the autotools build option install-setuid and when not using systemd or logind the suid_wrapper is not equivalent as it does not resolve tty or input device permissions unless /etc/X11/Xwrapper.config is created with; allowed_users = anybody needs_root_rights = yes In which case you can skip the wrapper as this would be the default preference when using startx or xinit without systemd or logind from the console or init scripts. So revert to previous autotools build behaviour. Closes: https://bugs.gentoo.org/828462 Closes: https://github.com/gentoo/gentoo/pull/23160 Signed-off-by: Alan Swanson <reiver@improbability.net> Signed-off-by: Matt Turner <mattst88@gentoo.org>
Diffstat (limited to 'x11-base')
-rw-r--r--x11-base/xorg-server/xorg-server-9999.ebuild9
1 files changed, 8 insertions, 1 deletions
diff --git a/x11-base/xorg-server/xorg-server-9999.ebuild b/x11-base/xorg-server/xorg-server-9999.ebuild
index f820f8cdff00..bb014071154e 100644
--- a/x11-base/xorg-server/xorg-server-9999.ebuild
+++ b/x11-base/xorg-server/xorg-server-9999.ebuild
@@ -149,7 +149,7 @@ src_configure() {
else
emesonargs+=(
-Dsystemd_logind=false
- $(meson_use suid suid_wrapper)
+ -Dsuid_wrapper=false
)
fi
@@ -162,6 +162,13 @@ src_install() {
#The new meson build system do not leave X symlink
ln -s Xorg "${ED}"/usr/bin/X
+ # The meson build system does not support install-setuid
+ if ! use systemd || ! use elogind; then
+ if use suid; then
+ chmod u+s "${ED}"/usr/bin/Xorg
+ fi
+ fi
+
if ! use xorg; then
rm -f "${ED}"/usr/share/man/man1/Xserver.1x \
"${ED}"/usr/$(get_libdir)/xserver/SecurityPolicy \