#! /bin/sh
set -e

. /usr/share/debconf/confmodule

VIATICUM=/usr/lib/debreaper/libviaticum.so
PRELOAD=/etc/ld.so.preload
XSTARTUP=/etc/X11/Xsession.d/98debreaper_ldpreload

xstartup()
{
  if [ ! -f $XSTARTUP ]; then
    echo "# Debreaper configuration for X sessions
debreaper_enable=$1
if [ \"\$debreaper_enable\" = yes ] && [ -f $VIATICUM ]; then
  if [ -n \"\$LD_PRELOAD\" ]; then
    LD_PRELOAD=\"\$LD_PRELOAD:$VIATICUM\"
  else
    LD_PRELOAD=$VIATICUM
  fi
  export LD_PRELOAD
fi" > $XSTARTUP
  else
    sed -i "s/^debreaper_enable=.*$/debreaper_enable=$1/" $XSTARTUP
  fi
}

preload()
{
  if [ "$1" = yes ]; then
    if ! grep -q ^$VIATICUM$ $PRELOAD 2>/dev/null; then
      echo $VIATICUM >> $PRELOAD
    fi
  else
    if [ -f $PRELOAD ]; then
      if grep -v ^$VIATICUM$ $PRELOAD > $PRELOAD.debreaper-new; then
        mv $PRELOAD.debreaper-new $PRELOAD
      else
        rm -f $PRELOAD.debreaper-new $PRELOAD
      fi
    fi
  fi
}

db_get debreaper/use_viaticum

case "$RET" in
  "Only GNOME programs")
     xstartup no
     preload no
     ;;
  "All X sessions")
     xstartup yes
     preload no
     ;;
  "Entire system")
     xstartup no
     preload yes
     ;;
esac

#DEBHELPER#

exit 0
