#!/bin/bash

# This file is sourced by /etc/X11/fly-dm/Xsession, not executed.

echo fly misc setup  `date '+%F %T.%3N'`

#export GTK_USE_PORTAL=1

#by A.Kovalenko (BT-10204)
if [ -d /parsecfs ]; then
 rm -f /run/user/$(id -u)/pulse/native
fi

if [ ! -z "$IS_TOUCH" ]; then
 export MOZ_USE_XINPUT2=1
fi

export QT_ENABLE_HIGHDPI_SCALING=1
export QT_SCALE_FACTOR_ROUNDING_POLICY=Round
export QT_DPI_ADJUSTMENT_POLICY=AdjustDpi
export QT_QUICK_CONTROLS_STYLE=org.kde.desktop

#alex: check free space (optional)
/usr/bin/fly-dm-check-space.sh "$HOME"

#alex: check home rights at the first start
if [ -z "$FLY_KIOSK_CONFIG_DIR" ]; then
  if [ ! -d "$HOME/.fly" ]; then
    if ! test -w "$HOME"; then
      if [ "$LANG" = "ru_RU.UTF-8" ]; then
        HOME_CAPTION="Внимание"
        HOME_MESSAGE="Ваш домашний каталог защищен от записи.\nВсе результаты будут утрачены после выхода."
        HOME_ERR="Не задана XDG_RUNTIME_DIR"
      else
        HOME_CAPTION="Attention"
        HOME_MESSAGE="You home directory is not writable.\nAll results will be lost after exit."
        HOME_ERR="XDG_RUNTIME_DIR is undefined"
      fi
      if [ ! -z $XDG_RUNTIME_DIR ]; then
        export HOME=$XDG_RUNTIME_DIR
        fly-dialog --caption "$HOME_CAPTION" --error "$HOME_MESSAGE"
      else
        fly-dialog --caption "$HOME_CAPTION" --error "$HOME_ERR"
        mkdir /tmp/$USER
        export XDG_RUNTIME_DIR=/tmp/$USER
        export HOME=/tmp/$USER
      fi
    fi
  fi
fi

#check write to home (any kind of home or ALD only?)
CHECK_WRITE=
case "$HOME" in
 /home/*)
 CHECK_WRITE="yes"
 ;;
 /root*)
 CHECK_WRITE="yes"
 ;;
esac
if [ "$CHECK_WRITE" = "yes" ]; then
#failed due to unsupported op:
#fallocate -l 10M $HOME/space.file.test
#passed always due to no real space check:
#truncate -s 10M $HOME/space.file.test
dd if=/dev/zero of="$HOME/space.file.test" bs=5M count=10
if [ $? -ne "0" ]; then
  if [ "$LANG" = "ru_RU.UTF-8" ]; then
        HOME_CAPTION="Внимание"
        HOME_MESSAGE="Ваш домашний каталог не дает записать пробный файл (размер 50Мб).\nВозможны сбои в работе графической сессии.\nОбратитесь к администратору по поводу ваших прав на запись или свободного места и ваших квот."
  else
        HOME_CAPTION="Attention"
        HOME_MESSAGE="You home folder is not writable for file 50Mb, troubles are possible\nCheck with Administrator you write rights, free space and you quotes."
  fi
  fly-dialog --caption "$HOME_CAPTION" --error "$HOME_MESSAGE"
else
  rm -f "$HOME/space.file.test"
fi
fi

if [ -d /usr/share/wallpapers ]; then
PICT_DIR=`xdg-user-dir PICTURES`
if [ -d "$PICT_DIR" ]; then
  if [ ! -L "$PICT_DIR/SystemWallpapers" ]; then
    ln -s /usr/share/wallpapers "$PICT_DIR/SystemWallpapers"
  fi
fi
if [ -d "$HOME/Pictures" ]; then
 ln -s /usr/share/wallpapers "$HOME/Pictures/SystemWallpapers"
fi
fi

echo fly misc setup finished  `date '+%F %T.%3N'`
