From 95641008fec17b409b843fac9b69b382df41681e Mon Sep 17 00:00:00 2001 From: AnErrupTion Date: Tue, 25 Aug 2026 20:32:36 +0200 Subject: [PATCH] setup.sh: Set STARTUP, late load Xsession (closes #1049) Signed-off-by: AnErrupTion --- res/setup.sh | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/res/setup.sh b/res/setup.sh index 8ec0f00..c82bcd9 100755 --- a/res/setup.sh +++ b/res/setup.sh @@ -70,6 +70,16 @@ if [ "$XDG_SESSION_TYPE" = "x11" ]; then done fi + if [ -d "$CONFIG_DIRECTORY"/X11/Xresources ]; then + for i in "$CONFIG_DIRECTORY"/X11/Xresources/*; do + [ -f "$i" ] && xrdb -merge "$i" + done + elif [ -f "$CONFIG_DIRECTORY"/X11/Xresources ]; then + xrdb -merge "$CONFIG_DIRECTORY"/X11/Xresources + fi + [ -f "$HOME"/.Xresources ] && xrdb -merge "$HOME"/.Xresources + [ -f "$XDG_CONFIG_HOME"/X11/Xresources ] && xrdb -merge "$XDG_CONFIG_HOME"/X11/Xresources + # Load Xsession scripts # OPTIONFILE, USERXSESSION, USERXSESSIONRC and ALTUSERXSESSION are required # by the scripts to work @@ -78,6 +88,9 @@ if [ "$XDG_SESSION_TYPE" = "x11" ]; then export USERXSESSION="$HOME"/.xsession export USERXSESSIONRC="$HOME"/.xsessionrc export ALTUSERXSESSION="$HOME"/.Xsession + # Some distributions have an Xsession script containing "exec $STARTUP", + # this makes sure to set the variable to what we actually want to launch + export STARTUP="$@" if [ -d "$xsessionddir" ]; then for i in $(ls "$xsessionddir"); do @@ -92,16 +105,6 @@ if [ "$XDG_SESSION_TYPE" = "x11" ]; then if [ -f "$USERXSESSION" ]; then . "$USERXSESSION" fi - - if [ -d "$CONFIG_DIRECTORY"/X11/Xresources ]; then - for i in "$CONFIG_DIRECTORY"/X11/Xresources/*; do - [ -f "$i" ] && xrdb -merge "$i" - done - elif [ -f "$CONFIG_DIRECTORY"/X11/Xresources ]; then - xrdb -merge "$CONFIG_DIRECTORY"/X11/Xresources - fi - [ -f "$HOME"/.Xresources ] && xrdb -merge "$HOME"/.Xresources - [ -f "$XDG_CONFIG_HOME"/X11/Xresources ] && xrdb -merge "$XDG_CONFIG_HOME"/X11/Xresources fi exec "$@"