#!/bin/bash

display_manager="$(cat /etc/X11/default-display-manager | rev | cut -d'/' -f1 | rev)"
echo "$display_manager display manager has been detected"

unit=termidesk-webdav-agent-service

if [ "$display_manager" = "fly-dm" ]; then
  # example: fly-dm
  # graphical-session.target работает бесконечно, независимо от входов и выходов пользователя [WP-5718]
  sleep 2147483647 &
  trap "systemctl --user stop $unit; kill $!" SIGINT SIGTERM
  systemctl --user start $unit && rc=$? || rc=$?
  if [ $rc -eq 0 ]; then
    wait
    echo "$unit has stopped working"
    exit 0
  fi
  # ...работа скрипта не будет завершена
  # в gdm3 это приводит к зависанию запуска .desktop ярлыков
else
  # example: gdm3
  # graphical-session.target запускается при каждом login-е пользователя и останавливается при logout-е [WP-5718]
  systemctl --user start $unit && rc=$? || rc=$?
fi

if [ $rc -ne 0 ]; then
  echo "WARNING: $unit did not start" 1>&2
fi
exit $rc
