Page 1 of 1

/root/.xinitrc produces X-failed-to-start message

Posted: Wed Jul 17, 2024 4:08 am
by boof

happens at least once a day. cured by typing xwin or reboot. asking why, and where to put <exec xwin> in this file to auto restart X, pls? normally streaming continuously from https://www.tenplay.com.au/live/Bold. other windows are used to use the internet. dell optilux 3060, celeron, 8gb/256gb, fttp. file below.

edit-1
replaced jwm with <xwin> and <xwin idefault jwm> in last line. neither worked.
edit 2
replaced entire file with exec xwin. seems to be ok.

#!/bin/sh
# $Xorg: xinitrc.cpp,v 1.3 2000/08/17 19:54:30 cpqbld Exp $
#120718 redesign for startup on slow computers. see also /sbin/pup_event_frontend_d and delayedrun.
#130202 xrandr set vert freq. see also /usr/sbin/quicksetup.
#130212 removed glipper code, see latest glipper pet.
#130525 old pc celeron 2ghz cpu, 256mb ram, CPUSPEED=1999, 1st bootup rox failed to start. try experiment.

export XDG_SESSION_TYPE=x11

[ -f /etc/desktop_app ] && read -r desktop < /etc/desktop_app
[ "$desktop" = "" ] && desktop=rox

. /etc/rc.d/PUPSTATE

#v4.01 BK daemon to handle kernel uevents...
echo '' > /var/local/pup_event_icon_change_flag
/sbin/clean_desk_icons #v4.02 tidy up drive icons first.
#/sbin/pup_event_frontend_d &
#130525 ...start this further down.

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/lib/X11/xinit/Xresources
sysmodmap=/usr/lib/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f $sysresources ]; then
xrdb -merge -nocpp $sysresources
fi

if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi

if [ -f $userresources ]; then
xrdb -merge -nocpp $userresources
fi

if [ -f $usermodmap ]; then
xmodmap $usermodmap
fi

xhost +local: 2>/dev/null

# start a D-Bus session bus for both root and spot, for PulseAudio and applications that don't work without it
eval `dbus-launch --exit-with-x11 --sh-syntax`
run-as-spot dbus-launch --exit-with-x11 > /tmp/.spot-session-bus

# start PipeWire/PulseAudio over the session bus and use it for both root and spot, so they see the same output devices
if [ -e /usr/bin/wireplumber ] || [ -e /usr/bin/pipewire-media-session ]; then
rm -f /tmp/runtime-spot/pipewire-0
run-as-spot pipewire &
(
while [ ! -e /tmp/runtime-spot/pipewire-0 ]; do sleep 0.1; done

run-as-spot pipewire-pulse &

if [ -e /usr/bin/wireplumber ]; then
run-as-spot wireplumber &
else
run-as-spot pipewire-media-session &
fi

) &
export PULSE_SERVER=unix:/tmp/runtime-spot/pulse/native
export PULSE_COOKIE=/home/spot/.config/pulse/cookie
elif [ -e /usr/bin/pulseaudio ]; then
run-as-spot sh -c "pulseaudio --kill > /dev/null 2>&1; pulseaudio --start --log-target=syslog"
export PULSE_SERVER=unix:/tmp/runtime-spot/pulse/native
export PULSE_COOKIE=/home/spot/.config/pulse/cookie
fi

CURRENTWM="`cat /etc/windowmanager`"
if [ "$CURRENTWM" = "startkde" ];then
/sbin/pup_event_frontend_d & #130525
exec startkde
fi
CURRENTWM="`cat /etc/windowmanager`"
if [ "$CURRENTWM" = "startxfce4" ];then
/sbin/pup_event_frontend_d & #130525
exec startxfce4
rox --pinboard=
fi

#100501 if full nvidia pkg installed, it has a gui config app...
[ -f /root/.nvidia-settings-rc ] && nvidia-settings --load-config-only

[ -f $HOME/.xgamma-gamma ] && /bin/sh $HOME/.xgamma-gamma #100215 see /usr/sbin/xgamma-gui.

#0.9.8 sync selection-buffer and clipboard. only useful for older apps
#such as rxvt that use the selection-buffer...
[ -f /usr/bin/autocutsel ] && /usr/bin/autocutsel &
#...disadvantage of this is it creates a little square bottom-right of screen.

if [ -e /tmp/videomode ];then #xvesa only: testing a video mode
video-wizard &
fi

[ -f /usr/local/bin/agenda_chk ] && agenda_chk &

#v1.0.7 set by xrandrshell, part of xorg wizard... v3.99...
if [ -f /etc/xrandrindex ];then
#v3.99 workround for dual monitors, 'head -n 1'....
XRANDRDEFAULT="$(xrandr -q | grep '\*' | tr -s ' ' | grep '^ [0-9]' | cut -f 2,3 -d ' ' | cut -f 1 -d '*' | tr ' ' '@' | head -n 1)" #130202 return 1024x768@60.0
XRANDRINDEX="`cat /etc/xrandrindex`" #v3.99 XRANDRINDEX now is XxY resolution. #130202 now vertxhoriz@freq (refer quicksetup).
#but do not switch if default is already this resolution....
if [ "$XRANDRINDEX" = "$XRANDRDEFAULT" ];then
rm -f /etc/xrandrindex
else
echo "$XRANDRINDEX"|grep -q "@"
case $? in
1)NEW_XY="$XRANDRINDEX"
xrandr -s $NEW_XY #131124 (see quicksetup)
;;
*)NEW_XY="$(echo -n "$XRANDRINDEX" | cut -f 1 -d '@')" #130202
NEW_VFREQ="$(echo -n "$XRANDRINDEX" | cut -f 2 -d '@')" #130202
xrandr -s $NEW_XY -r $NEW_VFREQ #130202
;;
esac
fi
fi

if [ -f /root/.xset.sh ];then
#this is created by /usr/bin/pupx...
eval "/root/.xset.sh"
fi

#v1.0.7 also see /etc/rc.d/rc.local0
if [ -f /root/.fonts/fonts.dir ];then
xset fp+ /root/.fonts/
fi

[ -f /usr/bin/xsetroot ] && xsetroot -cursor_name top_left_arrow

#relocates right-side icons to actual right-side of screen...
/usr/sbin/fixPuppyPin /root/Choices/ROX-Filer/PuppyPin #v1.0.7

sleep 1 # let the dust settle

case $desktop in
pcmanfm) pcmanfm --desktop & ;;
rox)
if [ -f /root/Choices/ROxport XDG_SESSION_TYPE=x11

[ -f /etc/desktop_app ] && read -r desktop < /etc/desktop_app
[ "$desktop" = "" ] && desktop=rox

. /etc/rc.d/PUPSTATE

#v4.01 BK daemon to handle kernel uevents...
echo '' > /var/local/pup_event_icon_change_flag
/sbin/clean_desk_icons #v4.02 tidy up drive icons first.
#/sbin/pup_event_frontend_d &
#130525 ...start this further down.

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/lib/X11/xinit/Xresources
sysmodmap=/usr/lib/X11/xinit/.Xmodmap

# merge in defaults and keymaps

if [ -f $sysresources ]; then
xrdb -merge -nocpp $sysresources
fi

if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi

if [ -f $userresources ]; then
xrdb -merge -nocpp $userresources
fi

if [ -f $usermodmap ]; then
xmodmap $usermodmap
fi

xhost +local: 2>/dev/null

# start a D-Bus session bus for both root and spot, for PulseAudio and applications that don't work without it
eval `dbus-launch --exit-with-x11 --sh-syntax`
run-as-spot dbus-launch --exit-with-x11 > /tmp/.spot-session-bus

# start PipeWire/PulseAudio over the session bus and use it for both root and spot, so they see the same output devices
if [ -e /usr/bin/wireplumber ] || [ -e /usr/bin/pipewire-media-session ]; then
rm -f /tmp/runtime-spot/pipewire-0
run-as-spot pipewire &
(
while [ ! -e /tmp/runtime-spot/pipewire-0 ]; do sleep 0.1; done

run-as-spot pipewire-pulse &

if [ -e /usr/bin/wireplumber ]; then
run-as-spot wireplumber &
else
run-as-spot pipewire-media-session &
fi

) &
export PULSE_SERVER=unix:/tmp/runtime-spot/pulse/native
export PULSE_COOKIE=/home/spot/.config/pulse/cookie
elif [ -e /usr/bin/pulseaudio ]; then
run-as-spot sh -c "pulseaudio --kill > /dev/null 2>&1; pulseaudio --start --log-target=syslog"
export PULSE_SERVER=unix:/tmp/runtime-spot/pulse/native
export PULSE_COOKIE=/home/spot/.config/pulse/cookie
fi

CURRENTWM="`cat /etc/windowmanager`"
if [ "$CURRENTWM" = "startkde" ];then
/sbin/pup_event_frontend_d & #130525
exec startkde
fi
CURRENTWM="`cat /etc/windowmanager`"
if [ "$CURRENTWM" = "startxfce4" ];then
/sbin/pup_event_frontend_d & #130525
exec startxfce4
rox --pinboard=
fi

#100501 if full nvidia pkg installed, it has a gui config app...
[ -f /root/.nvidia-settings-rc ] && nvidia-settings --load-config-only

[ -f $HOME/.xgamma-gamma ] && /bin/sh $HOME/.xgamma-gamma #100215 see /usr/sbin/xgamma-gui.

#0.9.8 sync selection-buffer and clipboard. only useful for older apps
#such as rxvt that use the selection-buffer...
[ -f /usr/bin/autocutsel ] && /usr/bin/autocutsel &
#...disadvantage of this is it creates a little square bottom-right of screen.

if [ -e /tmp/videomode ];then #xvesa only: testing a video mode
video-wizard &
fi

[ -f /usr/local/bin/agenda_chk ] && agenda_chk &

#v1.0.7 set by xrandrshell, part of xorg wizard... v3.99...
if [ -f /etc/xrandrindex ];then
#v3.99 workround for dual monitors, 'head -n 1'....
XRANDRDEFAULT="$(xrandr -q | grep '\*' | tr -s ' ' | grep '^ [0-9]' | cut -f 2,3 -d ' ' | cut -f 1 -d '*' | tr ' ' '@' | head -n 1)" #130202 return 1024x768@60.0
XRANDRINDEX="`cat /etc/xrandrindex`" #v3.99 XRANDRINDEX now is XxY resolution. #130202 now vertxhoriz@freq (refer quicksetup).
#but do not switch if default is already this resolution....
if [ "$XRANDRINDEX" = "$XRANDRDEFAULT" ];then
rm -f /etc/xrandrindex
else
echo "$XRANDRINDEX"|grep -q "@"
case $? in
1)NEW_XY="$XRANDRINDEX"
xrandr -s $NEW_XY #131124 (see quicksetup)
;;
*)NEW_XY="$(echo -n "$XRANDRINDEX" | cut -f 1 -d '@')" #130202
NEW_VFREQ="$(echo -n "$XRANDRINDEX" | cut -f 2 -d '@')" #130202
xrandr -s $NEW_XY -r $NEW_VFREQ #130202
;;
esac
fi
fi

if [ -f /root/.xset.sh ];then
#this is created by /usr/bin/pupx...
eval "/root/.xset.sh"
fi

#v1.0.7 also see /etc/rc.d/rc.local0
if [ -f /root/.fonts/fonts.dir ];then
xset fp+ /root/.fonts/
fi

[ -f /usr/bin/xsetroot ] && xsetroot -cursor_name top_left_arrow

#relocates right-side icons to actual right-side of screen...
/usr/sbin/fixPuppyPin /root/Choices/ROX-Filer/PuppyPin #v1.0.7

sleep 1 # let the dust settle

case $desktop in
pcmanfm) pcmanfm --desktop & ;;
rox)
if [ -f /root/Choices/ROX-Filer/PuppyPan1 ];then
roxfiler -p /root/Choices/ROX-Filer/PuppyPin -r /root/Choices/ROX-Filer/PuppyPan1
else
roxfiler -p /root/Choices/ROX-Filer/PuppyPin
fi
;;
esac

/sbin/pup_event_frontend_d & #130525 moved down.

#v2.0.0
/usr/sbin/delayedrun &

#v2.01 hide cursor when not moving... (setup in /usr/sbin/input-wizard)
if [ -f /etc/mousehide ];then
IDLETIME="`cat /etc/mousehide | cut -f 1 -d ','`"
[ ! "$IDLETIME" = "0" ] && unclutter -idle $IDLETIME &
fi

##v2.14 rarsa: update xdg menu for w.m. that do not allow includes...
#which ${CURRENTWM}_menu_refresh && ${CURRENTWM}_menu_refresh
#...no, now doing it differently, see /usr/sbin/fixmenus

if [ "$CURRENTWM" = "xfwm4" ];then
if [ "`which xfce4-panel`" != "" ];then
xfwm4 --daemon #note, starts xfce-mcs-manager daemon also.
exec xfce4-panel
fi
fi

#v3.91 volume tray applet, thanks to hairywill...
[ -f /usr/bin/absvolume ] && absvolume &

#v3.95 support fbpanel tray/taskbar...
#only launch tray for w.m. without inbuilt tray...
if [ "$CURRENTWM" != "jwm" -a "$CURRENTWM" != "icewm" ];then
if [ -f /usr/bin/fbpanel ];then
#a bit of a hack: when 3builddistro runs fixmenus, which calls variconlinks,
#which populates /var/local/icons with symlinks, /usr/local/lib/X11/pixmaps
#is not yet populated (happens at first boot, from default icon theme)...
[ ! -e /var/local/icons/home48.png ] && ln -fs /usr/local/lib/X11/pixmaps/* /var/local/icons/
fbpanel &
fi
[ "$desktop" = "rox" ] && [ -f /usr/bin/lxpanel ] && lxpanel &
fi

which $CURRENTWM && exec $CURRENTWM
[ -x $CURRENTWM ] && exec $CURRENTWM
[ "$desktop" = "rox" ] && exec jwm

###END###
X-Filer/PuppyPan1 ];then
roxfiler -p /root/Choices/ROX-Filer/PuppyPin -r /root/Choices/ROX-Filer/PuppyPan1
else
roxfiler -p /root/Choices/ROX-Filer/PuppyPin
fi
;;
esac

/sbin/pup_event_frontend_d & #130525 moved down.

#v2.0.0
/usr/sbin/delayedrun &

#v2.01 hide cursor when not moving... (setup in /usr/sbin/input-wizard)
if [ -f /etc/mousehide ];then
IDLETIME="`cat /etc/mousehide | cut -f 1 -d ','`"
[ ! "$IDLETIME" = "0" ] && unclutter -idle $IDLETIME &
fi

##v2.14 rarsa: update xdg menu for w.m. that do not allow includes...
#which ${CURRENTWM}_menu_refresh && ${CURRENTWM}_menu_refresh
#...no, now doing it differently, see /usr/sbin/fixmenus

if [ "$CURRENTWM" = "xfwm4" ];then
if [ "`which xfce4-panel`" != "" ];then
xfwm4 --daemon #note, starts xfce-mcs-manager daemon also.
exec xfce4-panel
fi
fi

#v3.91 volume tray applet, thanks to hairywill...
[ -f /usr/bin/absvolume ] && absvolume &

#v3.95 support fbpanel tray/taskbar...
#only launch tray for w.m. without inbuilt tray...
if [ "$CURRENTWM" != "jwm" -a "$CURRENTWM" != "icewm" ];then
if [ -f /usr/bin/fbpanel ];then
#a bit of a hack: when 3builddistro runs fixmenus, which calls variconlinks,
#which populates /var/local/icons with symlinks, /usr/local/lib/X11/pixmaps
#is not yet populated (happens at first boot, from default icon theme)...
[ ! -e /var/local/icons/home48.png ] && ln -fs /usr/local/lib/X11/pixmaps/* /var/local/icons/
fbpanel &
fi
[ "$desktop" = "rox" ] && [ -f /usr/bin/lxpanel ] && lxpanel &
fi

which $CURRENTWM && exec $CURRENTWM
[ -x $CURRENTWM ] && exec $CURRENTWM
[ "$desktop" = "rox" ] && exec jwm

###END###


Re: /root/.xinitrc produces X-failed-to-start message

Posted: Fri Aug 02, 2024 6:43 am
by boof

recovered by reinstall. unfortunately, even restoring a backup save file does not fully restore all apps and settings/email addresses/passwords and bookmarks. it is not easy and takes some hours each time. i would like to simplify it, but would like to avoid another login to fix this. how can i create a savefile for such-copy it to another partition, add the apps and set them up, rename the new save file and just hang on to it?is that how it works?


Re: /root/.xinitrc produces X-failed-to-start message

Posted: Fri Aug 02, 2024 11:00 am
by bigpup

You do not specifically say how you are making a save file/folder backup.

What I do that seems to provide a complete save backup copy.

In Rox I make a copy of the save to some other location different from where it is.
Usually to a different drive, so it does not need to be reading and writing to the same drive.
(large files/folders seem to need less time to copy)

The copied save I rename by adding bak. to the front of the name.
Could add a date also.
To turn it back into a usable save.
Remove bak. from the name.

Warning about Rox and large files/folders:
Rox file manager copying large files (how to know when complete)
viewtopic.php?t=11962