#!/bin/bash

[ ! -d "/volume" ] && exit 0

# large version first
DPKG_CACHE_DIR=/persistent/dpkg/bullseye/packages/
PKG_NAME="unifi-drive-config"
REGEX=".*\/${PKG_NAME}_[0-9A-Za-z.+~:-]+_[arm64d]+\.deb"
pkg=`find "$DPKG_CACHE_DIR" -type f -regex $REGEX`
if [ ! -z $pkg ]; then
  dpkg_version=`dpkg-deb -f $pkg Version`

  # Remove the epoch if present
  temp=${dpkg_version#*:}

  # Remove the debian revision if present
  version=${temp%-*}

  if [ ! -z $version ]; then
    udc migrate -t $version
    exit 0
  fi
fi

ROFS_BIN=/mnt/.rofs/usr/sbin/udc
version=`$ROFS_BIN version`
if [[ $version =~ [0-9]+\.[0-9]+\.[0-9]+ ]]; then
  udc migrate -t $version
  exit 0
fi

ROFS_VER_FILE=/mnt/.rofs/etc/default/unifi-drive-config.version
version=`cat $ROFS_VER_FILE`
if [ ! -z $version ]; then
  udc migrate -t $version
  exit 0
fi

if mountpoint -q "/mnt/.rofs"; then
  # fallback version
  udc migrate -t 2.9.5
fi
# else emmc may be broken, let it go
