https://github.com/wandercone/appdatasync/releases/download/2026.09.19/appdatasync-2026.09.19-noarch-1.txz
2f8c419e6a362bee2d973b4d338bab3d1db0f8763949f2ae1fbec30a9db2e397
# Generated appdatasync plugin scheduled tasks
# Disable/enable and change schedule from the plugin settings page
/dev/null | grep -v '2026.09.19')
# ensure plugin config directory exists on /boot so user config survives updates
mkdir -p /boot/config/plugins/appdatasync
# copy the default/example config if no user config exists yet
if [[ ! -f /boot/config/plugins/appdatasync/config.yaml ]]; then
cp /usr/local/emhttp/plugins/appdatasync/config.yaml.example /boot/config/plugins/appdatasync/config.yaml
fi
# ensure python dependencies are present
if command -v python3 >/dev/null 2>&1; then
python3 -m pip install -r /usr/local/emhttp/plugins/appdatasync/requirements.txt >/dev/null 2>&1
if [ $? -ne 0 ]; then
echo "Warning: failed to install Python dependencies from requirements.txt"
echo " You may need to run: python3 -m pip install -r /usr/local/emhttp/plugins/appdatasync/requirements.txt"
fi
else
echo "Warning: python3 not found. Python dependencies were not installed."
fi
# regenerate the plugin-owned cron file from saved state (also recreates it on boot)
/usr/bin/php /usr/local/emhttp/plugins/appdatasync/include/cron.php --install-cron 2>/dev/null || true
# sync the plugin-owned cron file into the running cron state
/usr/local/sbin/update_cron
echo ""
echo "----------------------------------------------------"
echo " appdatasync has been installed."
echo " Version: 2026.09.19"
echo "----------------------------------------------------"
echo ""
]]>