Files
appstore/apps/fast-note-sync-service/3.6.0/scripts/init.sh
T

40 lines
926 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
ENV_FILE="${ENV_FILE:-$ROOT_DIR/.env}"
get_env_value() {
local key="$1"
local default="$2"
local value=""
if [[ -f "$ENV_FILE" ]]; then
value="$(sed -n -E "s/^${key}=//p" "$ENV_FILE" | tail -n 1)"
value="${value%\"}"
value="${value#\"}"
value="${value%\'}"
value="${value#\'}"
fi
if [[ -n "$value" ]]; then
printf '%s\n' "$value"
else
printf '%s\n' "$default"
fi
}
resolve_app_path() {
local raw="$1"
if [[ "$raw" = /* ]]; then
printf '%s\n' "$raw"
else
printf '%s\n' "$ROOT_DIR/${raw#./}"
fi
}
APP_DATA_DIR_RAW="${APP_DATA_DIR:-$(get_env_value APP_DATA_DIR './data/storage')}"
APP_CONFIG_DIR_RAW="${APP_CONFIG_DIR:-$(get_env_value APP_CONFIG_DIR './data/config')}"
mkdir -p "$(resolve_app_path "$APP_DATA_DIR_RAW")" "$(resolve_app_path "$APP_CONFIG_DIR_RAW")"