#!/bin/bash

BASE_CMD="/usr/lib/systemback/sbbin $@"

if test "x`id -u`" != "x0"; then
    if test "xpkexec --disable-internal-agent" = "x"; then
        echo "Root privileges are required for running systemback."
        $BASE_CMD
        exit 1
    fi
    ENABLE_XHOST_ROOT=yes
    GRANTED_XHOST_ROOT=no
    if test "x$ENABLE_XHOST_ROOT" = 'xyes' && xhost 1> /dev/null 2>&1; then
        if ! xhost | grep -qi 'SI:localuser:root$'; then
            xhost +SI:localuser:root
            GRANTED_XHOST_ROOT=yes
        fi
    fi

    pkexec --disable-internal-agent '/usr/bin/sbsustart' systemback "$@"
    status=$?

    if test "x$GRANTED_XHOST_ROOT" = 'xyes'; then
        xhost -SI:localuser:root
    fi
    exit $status
fi

$BASE_CMD

[ -f /var/lib/pacman/db.lck ] && rm /var/lib/pacman/db.lck
[ -f /run/systemback.lock ] && rm /run/systemback.lock
[ -f /run/sbscheduler.lock ] && rm /run/sbscheduler.lock

