#!/bin/sh

[ -e "/etc/default/weston" ] && . /etc/default/weston

# Start a session bus
if [ -n "$XDG_RUNTIME_DIR" -a ! -e "$XDG_RUNTIME_DIR/bus" ]; then
    export DBUS_SESSION_BUS_ADDRESS="unix:path=$XDG_RUNTIME_DIR/bus"
    /usr/bin/dbus-daemon --address=$DBUS_SESSION_BUS_ADDRESS --fork --session
    echo "D-BUS per-session daemon address is: $DBUS_SESSION_BUS_ADDRESS"

    # Start app session bus
    BASE=/home/app
    rm -rf $BASE/.dbus

    DBUS_SESSION_BUS_ADDRESS_SESSION=unix:path=/tmp/dbus-app
    eval `su app -c "/usr/bin/dbus-daemon --address=$DBUS_SESSION_BUS_ADDRESS_SESSION --fork --session"`
    echo "D-BUS per-session daemon address is: $DBUS_SESSION_BUS_ADDRESS_SESSION"

    mkdir -p $BASE/.dbus/session-bus
    echo DBUS_SESSION_BUS_ADDRESS=$DBUS_SESSION_BUS_ADDRESS_SESSION > $BASE/.dbus/session-bus/bus
    chown -R app $BASE/.dbus
fi

[ -z "$SYSSESSIONDIR" ] && SYSSESSIONDIR=/etc/weston/Wsession.d
SESSIONFILES=`ls -X $SYSSESSIONDIR`
if [ -n "$SESSIONFILES" ]; then
    for SESSIONFILE in $SESSIONFILES; do
    # Test if script is executable first before sourcing it
        if [ -x "$SYSSESSIONDIR/$SESSIONFILE" ]; then
            . $SYSSESSIONDIR/$SESSIONFILE
        fi
    done
fi

exit 0
