#!/bin/sh # fix broken $UID on some system... if test "x$UID" = "x"; then UID=`id -u` fi # Check if the user wants to override the above defaults (set by # mcs ui plugin) if test "x$XDG_CONFIG_HOME" = "x" ; then BASEDIR=$HOME/.config/xfce4 else BASEDIR=$XDG_CONFIG_HOME/xfce4 fi # For now, start with an empty list XRESOURCES="" # Has to go prior to merging Xft.xrdb, as its the "Defaults" file test -r $HOME/.Xdefaults && XRESOURCES=$HOME/.Xdefaults BASEDIR=$XDG_CONFIG_HOME/xfce4 if test -r "$BASEDIR/Xft.xrdb"; then XRESOURCES="$XRESOURCES $BASEDIR/Xft.xrdb" elif test -r "$XFCE4HOME/Xft.xrdb"; then mkdir -p "$BASEDIR" cp "$XFCE4HOME/Xft.xrdb" "$BASEDIR"/ XRESOURCES="$XRESOURCES $BASEDIR/Xft.xrdb" fi # merge in X cursor settings test -r "$BASEDIR/Xcursor.xrdb" && XRESOURCES="$XRESOURCES $BASEDIR/Xcursor.xrdb" # ~/.Xresources contains overrides to the above test -r "$HOME/.Xresources" && XRESOURCES="$XRESOURCES $HOME/.Xresources" # load all X resources (adds /dev/null to avoid an empty list that would hang the process) cat /dev/null $XRESOURCES | xrdb -nocpp -merge - # load local modmap test -r $HOME/.Xmodmap && xmodmap $HOME/.Xmodmap # Launch xscreensaver (if available), but only as non-root user test $UID -gt 0 -a -z "$VNCSESSION" && xscreensaver -no-splash & # Use ssh-agent if installed and not already running. Run it separately # so it populates the environment here, so we can clean it up later. sshagent=`which ssh-agent` kill_sshagent=0 if test -z "$SSH_AGENT_PID" -a "$sshagent" -a "x$sshagent" != "xno"; then eval `$sshagent -s` kill_sshagent=1 fi # Use dbus-launch if installed. if test x"$DBUS_SESSION_BUS_ADDRESS" = x""; then dbuslaunch=`which dbus-launch` if test x"$dbuslaunch" != x"" -a x"$dbuslaunch" != x"no"; then eval `$dbuslaunch --sh-syntax --exit-with-session` fi fi # Run xfce4-session if installed xfcesm=`which xfce4-session` case "x$xfcesm" in x|xno*) ;; *) $xfcesm if test $kill_sshagent -eq 1; then eval `$sshagent -k` fi exit 0 ;; esac ################## # IMPORTANT NOTE # ################## # Everything below here ONLY gets executed if you are NOT using xfce4-session # (Xfce's session manager). If you are using the session manager, everything # below is handled by it, and the code below is not executed at all. If you're # not sure if you're using the session manager, type 'ps -e|grep xfce4-session' # in a terminal while Xfce is running. ################## # this is only necessary when running w/o xfce4-session xsetroot -solid black -cursor_name watch # or use old-fashioned startup script otherwise xfce-mcs-manager xfwm4 --daemon # Start-up stuff from ~/Desktop/Autostart directory, if it exists # (as it seems to be the new standard) if test -d "$HOME/Desktop/Autostart"; then for i in `ls -1 -L ${HOME}/Desktop/Autostart/ 2>/dev/null`; do if test -x $HOME/Desktop/Autostart/$i; then $HOME/Desktop/Autostart/$i & fi done fi xftaskbar4& xfdesktop& xfcalendar & panel=`which xfce4-panel` case "x$panel" in x|xno*) ;; *) $panel ret=$? while test $ret -ne 0; do xmessage -center -file - -timeout 20 -title Error <&2 <