Einfügen eines eigenen Downloadservers

Aus Gemini-Wiki
Wechseln zu: Navigation, Suche

Mit den Gemini-Images besteht die Möglichkeit, einen eigenen Downloadserver in das Image zu integrieren.

Hierzu müssen einige Regeln eingehalten werden die auf dieser Seite näher beschrieben sind.

Inhaltsverzeichnis

Voraussetzung

Auf der Dreambox im Verzeichnis

/etc
/var/etc

oder

/var/tuxbox/config

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-Datei liegen, wie sie in der useraddon.xml angegeben wurde.

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, skin ...)

+ dreambox
+
+ + plugin
+ 
+ + picons
+ 
+ + 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

  • Hier klicken für Enigma
  • Hier klicken für Enigma2

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>showmount</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.

Einträge und Optionen

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:

Egle Privat Server
Egle Privat Server
Egle Privat Server
Egle Privat Server


So viel Spaß beim Einrichten eures eigenen Downloadservers.