#!/bin/sh # Config-Pfad von JDownloader (im antlafarge image) JD_DIR="/opt/JDownloader" CFG_DIR="$JD_DIR/cfg" echo "--- Starte JDownloader (Antlafarge Base) ---" # 1. Ordner vorbereiten # Wir verlinken den internen Config-Ordner auf /data, damit Einstellungen # (wie Download-Listen) auch nach einem Addon-Neustart erhalten bleiben. if [ ! -d "/data/cfg" ]; then mkdir -p /data/cfg fi # Wenn der cfg Ordner im Image existiert, aber kein Link ist, löschen wir ihn if [ -d "$CFG_DIR" ] && [ ! -L "$CFG_DIR" ]; then rm -rf "$CFG_DIR" fi # Link erstellen: Image-Config -> HA-Data-Storage if [ ! -L "$CFG_DIR" ]; then ln -s /data/cfg "$CFG_DIR" fi # 2. Zugangsdaten aus Home Assistant lesen EMAIL=$(jq --raw-output '.myjd_email' /data/options.json) PASS=$(jq --raw-output '.myjd_password' /data/options.json) DEVICE=$(jq --raw-output '.device_name' /data/options.json) echo "Konfiguriere MyJDownloader für: $EMAIL als '$DEVICE'" # 3. Die JDownloader Settings-Datei manuell schreiben # Das ist der Trick: Wir erzeugen die Datei, die JDownloader sonst erst nach Eingabe erstellt. SETTINGS_FILE="$CFG_DIR/org.jdownloader.api.myjdownloader.MyJDownloaderSettings.json" # Wir schreiben ein minimales JSON File für die Anmeldung cat < "$SETTINGS_FILE" { "email" : "$EMAIL", "password" : "$PASS", "devicename" : "$DEVICE", "autoconnectenabledmanual" : true } EOF # 4. Download Pfad auf /share/downloads biegen mkdir -p /share/downloads # Falls Downloads-Ordner existiert (und kein Link ist), weg damit if [ -d "$JD_DIR/Downloads" ] && [ ! -L "$JD_DIR/Downloads" ]; then rm -rf "$JD_DIR/Downloads" fi # Link setzen ln -s /share/downloads "$JD_DIR/Downloads" echo "Berechtigungen korrigieren..." chown -R root:root "$JD_DIR" # 5. Starten echo "Starte Java..." # Wir nutzen direkt java, um volle Kontrolle zu haben cd $JD_DIR exec java -Djava.awt.headless=true -jar JDownloader.jar