mirror of
https://github.com/Snigdha-OS/snigdhaos-pkgbuilds.git
synced 2025-09-21 12:04:59 +02:00
⚡️ perf: extension wayland handling
This commit is contained in:
@@ -7,21 +7,25 @@ if ! command -v pkexec &>/dev/null; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Check if running as root
|
# Check if running as root
|
||||||
if [ $EUID -ne 0 ]; then
|
if [[ $EUID -ne 0 ]]; then
|
||||||
|
# Attempt to execute the script as root via pkexec
|
||||||
exec pkexec /usr/lib/snigdhaos/pkexec-gui "$@"
|
exec pkexec /usr/lib/snigdhaos/pkexec-gui "$@"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Need some previous vars
|
# Shellcheck disable: Read environment variables from parent process
|
||||||
# shellcheck disable=SC2163
|
# shellcheck disable=SC2163
|
||||||
while IFS= read -rd '' var; do export "$var"; done < <(grep --null-data -ae "^\($XDG_CURRENT_DESKTOP\|WAYLAND_DISPLAY\|XDG_RUNTIME_DIR\|XDG_SESSION_TYPE\|XCURSOR_SIZE\|LC_*\|LANG\|LANGUAGE\|QT_WAYLAND_FORCE_DPI\|QT_QPA_PLATFORMTHEME\|QT_STYLE-OVERRIDE\|\)=.*\$" /proc/$PPID/environ)
|
# Read the necessary environment variables from the parent process
|
||||||
|
while IFS= read -rd '' var; do
|
||||||
|
export "$var"
|
||||||
|
done < <(grep --null-data -ae "^\($XDG_CURRENT_DESKTOP\|WAYLAND_DISPLAY\|XDG_RUNTIME_DIR\|XDG_SESSION_TYPE\|XCURSOR_SIZE\|LC_*\|LANG\|LANGUAGE\|QT_WAYLAND_FORCE_DPI\|QT_QPA_PLATFORMTHEME\|QT_STYLE-OVERRIDE\|\)=.*\$" /proc/$PPID/environ)
|
||||||
|
|
||||||
# If on Wayland, adjust WAYLAND_DISPLAY variable
|
# Adjust WAYLAND_DISPLAY if running on Wayland
|
||||||
if [[ -v WAYLAND_DISPLAY ]]; then
|
if [[ -n "$WAYLAND_DISPLAY" ]]; then
|
||||||
export WAYLAND_DISPLAY="$XDG_RUNTIME_DIR/$WAYLAND_DISPLAY"
|
export WAYLAND_DISPLAY="$XDG_RUNTIME_DIR/$WAYLAND_DISPLAY"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Set root's runtime directory
|
# Set the root user's XDG_RUNTIME_DIR
|
||||||
export XDG_RUNTIME_DIR="/run/user/0"
|
export XDG_RUNTIME_DIR="/run/user/0"
|
||||||
|
|
||||||
# Execute the provided command with root privileges
|
# Execute the provided command with root privileges
|
||||||
|
Reference in New Issue
Block a user