Einfügen eines eigenen Downloadservers
Einfügen eines eigenen Downloadservers
Mit den Gemini-Images besteht die Möglichkeit,
einen eigenen Downloadserver in das Image zu integrieren.
Hierzu müssen allerdings einige "Regeln" eingehalten werden.
Auf der Dreambox im Verzeichnis /etc oder /var/etc liegt eine Datei Namens: useraddon.xml.
Diese wird zwingend benötigt um euren eigenen Server zu identifizieren.
Des Weiteren muss auf euren Servern eine XML liegen, wie sie in der useraddon.xml angegeben wurde.
Voraussetzung
Folgendes sollte schon bekannt bzw. Vorhanden sein:
- ein Webserver auf dem man mittels http:// zugreifen kann.
- Wie man Gemini-tarballs "tar.gz" erstellt
Lehrbeispiel an einem Qnap-NAS im eigenen Privaten Netzwerk
In dieser Wikiseite will ich dies mal an einem Beispiel erläutern wo ein Webserver (Apache) auf einem Qnap-NAS läuft.
Auf diesem Webserver (Apache) kann über die Adresse http://192.168.0.5 zugegriffen werden.
Als erstes erstellen wir uns auf dem Webserver ein Download-Verzeichnis für die Dreambox,
am besten nennen wir dies auch gleich dreambox.
Dort erstellen wir unsere gewünschten Downloadrubriken (plugin, scam, skin ...)
+ dreambox + + + plugin + + + cam + + + skin
Dann schauen wir uns mal die useradon.xml auf der Dreambox an,
im oberen Teil sehen wird dies:
<?xml version="1.0" encoding="iso-8859-1" ?> <list> <item> <name>my Server</name> <url>http://www.example.com/test.xml</url> </item> </list>
Somit sollte nun schon klar sein wie die Dreambox versucht Kontakt zum Server aufzunehmen.
Nun ändern wir das ganze ab, damit wir auf unseren Webserver zugreifen,
und die xml-Datei auf dem Webserver nenne wir mal dreambox.xml:
<?xml version="1.0" encoding="iso-8859-1" ?> <list> <item> <name>Egle Privat Server</name> <url>http://192.168.0.5/dreambox.xml</url> </item> </list>
Im unteren Teil dieser useraddon.xml sehen wir ein Beispiel für den Server:
<list> <Plugin> <content> <name>example</name> <url>http://example/example.tar.gz</url> <file>example.tar.gz</file> <description>description</description> <creator>all</creator> <pic>http://example/example.jpg</pic> <size>523000</size> <md5>b9218bc1c7b71b705d7fd7f2f0dd80c6</md5> <option></option> </content> </Plugin> </list>
Hier ist folgendes zu erkennen,
- Zwischen <list> und </list> müssen die ganzen Addons aufgelistet werden.
- Zwischen <Plugin> und </Plugin> sollten alles stehen was zur Rubrik Plugins gehört.
- Zwischen <content> und </content> müssen die Angaben des gewünschten Addons aufgelistet werden.
In unserem Beispiel oben haben wir ja nun drei Rubriken errichten, plugins, cam und skin.
Die xml.auf dem Server muss genauso wie die useraddon.xml mit folgendem beginnen:
<?xml version="1.0" encoding="iso-8859-1" ?>
Also sollte die xml auf dem Server dreambox.xml bei unseren drei Rubriken und der Annahme das wir zwei skins verwenden so aussehen:
<?xml version="1.0" encoding="iso-8859-1" ?> <list> <plugin> <content> <name>example</name> <url>http://example/example.tar.gz</url> <file>example.tar.gz</file> <description>description</description> <creator>all</creator> <pic>http://example/example.jpg</pic> <size>523000</size> <md5>b9218bc1c7b71b705d7fd7f2f0dd80c6</md5> <option></option> </content> </plugin> <cam> <content> <name>example</name> <url>http://example/example.tar.gz</url> <file>example.tar.gz</file> <description>description</description> <creator>all</creator> <pic>http://example/example.jpg</pic> <size>523000</size> <md5>b9218bc1c7b71b705d7fd7f2f0dd80c6</md5> <option></option> </content> </cam> <skin> <content> <name>example</name> <url>http://example/example.tar.gz</url> <file>example.tar.gz</file> <description>description</description> <creator>all</creator> <pic>http://example/example.jpg</pic> <size>523000</size> <md5>b9218bc1c7b71b705d7fd7f2f0dd80c6</md5> <option></option> </content> <content> <name>example</name> <url>http://example/example.tar.gz</url> <file>example.tar.gz</file> <description>description</description> <creator>all</creator> <pic>http://example/example.jpg</pic> <size>523000</size> <md5>b9218bc1c7b71b705d7fd7f2f0dd80c6</md5> <option></option> </content> </skin> </list>
Hier sehen wir nun auch gleich warum man wissen sollte wie man Gemini-tarball erstellt.
Wir benötigen ja nicht nur den Filenamen des Tarballs , sondern auch z.B. die Größe und die MD5-Checksumme.
Wenn Ihr die Gemini-Tarballs auf euere Dreambox erstellt mithilfe der bereitgestellten Skriptes
Und erstellt damit eure Tarballs auf der Dreambox erhaltet Ihr eine useraddon.xml-info.txt
In dieser könnt Ihr dann z.B. folgendes finden:
Gesamtgröße: 68536 Bytes Checksumme: 1959aa9c0eaa891989ee17dcf06260d1 e2-showmount_100208.tar.gz <name>showmount</name> <description>zum ermitteln der NFS-Freigaben</description> <creator>Linux</creator>
Und habt somit eure benötigten Informationen die man in die dreambox.xml eintragen kann:
<name>e2-showmount_100208.tar.gz</name> <url>http://192.168.0.5/dreambox/plugin/e2-showmount_100208.tar.gz</url> <file>e2-showmount_100208.tar.gz</file> <description>zum ermitteln der NFS-Freigaben</description> <creator>Linux</creator> <size>68536</size> <md5>1959aa9c0eaa891989ee17dcf06260d1</md5> <option></option>
Bei Skins usw. kann man auch ruhig jpg-Bilder mit eintragen, damit man wie beim BluePanel dort ein Vorschaubild hat.
Folgende Einträge und Optionen sind zur Zeit möglich:
<name> -> Name des Addons <description> -> Beschreibung des Addons bitte in englisch
<creator> -> Wer hat das Addon erstellt/prog.
<option> -> was soll nach dem Installieren des Addons passieren
Werte: 0=nischt 1=Reboot Hard (Reset) 2=Reboot der Box 3=Restart von Enigma 4=Reload-Settings 5=Größe Addons nicht testen
Selbst habe ich mir nun mal diese dreambox.xml erstellt zu Testzwecken und für diese Wikiseite:
<?xml version="1.0" encoding="iso-8859-1" ?> <list> <plugin> <content> <name>showmount</name> <url>http://192.168.0.5/dreambox/plugins/e2-showmount.tar.gz</url> <file>e2-showmount.tar.gz</file> <description>zum ermitteln der NFS-Freigaben</description> <creator>Gemini-Team</creator> <pic>http://example/example.jpg</pic> <size>68536</size> <md5>1959aa9c0eaa891989ee17dcf06260d1</md5> <option></option> </content> </plugin> <skin> <content> <name>2-Nemesis.GlassLine_GP2_v4.70</name> <url>http://192.168.0.5/dreambox/skin/e2-Nemesis.GlassLine_GP2_v4.70_100201.tar.gz</url> <file>e2-Nemesis.GlassLine_GP2_v4.70_100201.tar.gz</file> <description>SD-Skin for Gemini Project2, Imageversion 4.70 (DM7025, DM800, DM8000)</description> <creator>Nemesis mod by ronaldus</creator> <pic>http://example/example.jpg</pic> <size>1396278</size> <md5>5b2aad7150f3f288cd1a9e7a1c56d28e</md5> <option></option> </content> </skin> </list>
Das Ergebnis ist folgendes:
So viel Spass beim einrichten eures eigenen Downloadservers...
Zurück zur Übersicht:Gemini-Wiki:Portal oder Hauptseite