#! /bin/sh

set -e

# load existing settings if available
DISTCFGFILE="/usr/share/one.liberty/deckhost.conf"
SITECFGFILE="/usr/local/share/one.liberty/deckhost.conf"
CFGFILE="/var/lib/one.liberty/deckhost.conf"

[ ! -r "$DISTCFGFILE" ] || . "$DISTCFGFILE"
[ ! -r "$SITECFGFILE" ] || . "$SITECFGFILE"
[ ! -r "$CFGFILE" ] || . "$CFGFILE"

DOMAIN_DEFAULT="librem.one"
HUB_NAME_DEFAULT="Liberty One"
HUB_URI_DEFAULT="https://DOMAIN/accounts/profile/"
#SOCIAL_NAME_DEFAULT="Social"
SOCIAL_URI_DEFAULT="https://social.DOMAIN/web/getting-started"

DOMAIN=${DOMAIN:-$DOMAIN_DEFAULT}
HUB_NAME=${HUB_NAME:-$HUB_NAME_DEFAULT}
HUB_URI=${HUB_URI:-$HUB_URI_DEFAULT}
SOCIAL_NAME=${SOCIAL_NAME:-$SOCIAL_NAME_DEFAULT}
SOCIAL_URI=${SOCIAL_URI:-$SOCIAL_URI_DEFAULT}

update_desktop_file() {
	SERVICE=$1
	NAME=$2
	URI=$(echo "$3" | sed "s|DOMAIN|$DOMAIN|g")

	service=$(echo "$1" | tr A-Z a-z)

	TMPLFILE="/usr/share/ldh-gui-suite/one.liberty.$service.desktop.in"
	XDGFILE="/usr/share/applications/one.liberty.$service.desktop"
	TEMPFILE=$(mktemp --tmpdir ldh_desktop_XXXXXXXXXX)

	sed "s|@${SERVICE}_NAME@|$NAME|g;s|@${SERVICE}_URI@|$URI|g" \
		< "$TMPLFILE" > "$TEMPFILE"
	mv -f "$TEMPFILE" "$XDGFILE"
	chmod 644 "$XDGFILE"
}

update_desktop_file HUB "$HUB_NAME" "$HUB_URI"
update_desktop_file SOCIAL "$SOCIAL_NAME" "$SOCIAL_URI"

exit 0
