Local ipk Server Plugin

  • Hi !


    Nachdem ich selber mich NICHT mit imagespezifischen useraddons, etc quäle, um meine eigenen Plugins und andere nützliche ipks die von den jeweiligen Imagebauern nicht angeboten werden zum nachinstallieren zu servicieren habe ich halt mal das script das ich dafür verwende um den Webserver der Dreambox selber lokal als zusätzlichen ipk server zu verwenden in einem kleinen Plugin kit zusammenkopiert.


    Einfach das ipk aus dem Anhang installieren, dann gibt es auf /media/hdd/ipkserver ein directory wo ihr die ganzen ipk files reinkopieren könnt. Dann einmal im plugin update des Package files
    auswählen oder die Dreambox rebooten und schon tauchen diese ipk kits AUCH auf wenn man im Spiele/Erweiterungsmenu die Grüne Taste drückt und die + auswählt um die jeweiligen kits gelistet und zum installieren ausgewählt zu bekommen. Und wenn man eine neue Version hinkopiert wird diese dann auch automatisch beim nächsten Softwareupdate des images mit installiert.


    Wem das aktualisieren der Packagesliste des ipkservers beim booten zu viel bootzeit kostet der kann einfach den link auf /etc/rc3.d/S99localipkserver wieder löschen.ImPlugin kann man ja eh die Packages liste des addonservers explizit aktualisieren wenn man ein neues ipk hinkopiert, und mit dem Cronmanager kann man das ipkserver.sh ja auch regelmässig laufen lassen.


    Und der lokale ipk server mit den entsprechenden kits geht dann in JEDEM image wo man das plugin installiert (ich habs bei mir im bapostinst vom Barry Allen drinnen stehen), aber jetzt sagt erstmals ob es euch gefällt.


    Im Prinzip geht das ipserver.sh script das dabei ist natürlich auch auf einem großen Linux server, nur die entsprechenden konfig checks für den lokalen ipk server am ende des scripts müssen dann rausfliegen.


    Damit kann also jeder der einen Webserver unter Linux laufen hat diesen auch zu seinem eigenen ipk server machen. Aber wie gesagt der kit und das Plugin hier ist nur für die dreambox selber.


    Und Achtung, damit es funktioniert muss man /hdd über den lokalen Webserver bedienen und es darf kein passwort gesetzt sein. Wenn Ihr also auf das webIF auch vom internet zugreifen wollt ist das nicht so ideal. Ausser Ihr wollt euren lokalen ipk server auf der dreambox auch anderen Leuten zur Verfügung stellen und die fehlende security ist euch egal :-(


    LG
    gutemine


    PS: Version 1.1 ist NUR für OE 1.6

  • Ich benutze als localen Feedserver den von 3c5x9, den finde ich schon ganz praktisch,
    ist halt kein Plugin. Den hab ich auch bei IM mit dabei, und wird halt mit Fantastic gesteuert:-)



    Aber deine Creation sehe ich mir morgen auch gleich mal an, vielleicht wechsle ich ja:-)
    Sofern nicht alles auf HDD liegen muss...



    LG Time-X

    DM7025+ 2GB Compact Flash (BA) - Flash: OoZooN CVS - CF-Card: LT, GP2,...
    ROTOR 1.0°W; 5.0°E; 7.0°E; 13.0°E; 19.2°E; 23.5°E; 28.2°E

    Edited once, last by Time-X ().

  • Du kannst auch mehrere ipk feedserver im feedfile des images stehen und der lokale ipk server trägt sich ja auch einfach zusätzlich zum standardimage ipk server ein.


    Im Prinzip kann es eh jeder machen wie er will, ich habe es ja auch nur als nützliches Beispiel gepostet das ich eben selber auch verwende.


    Ist eigentlich nur für Leute die gar nicht wissen wie einfach man aus *.ipk kits in einem directory eine Packages.gz machen kann und wenn dieses Package file und die entsprechenden kit files von einem Webserver runterladbar sind hat man ja schon seinen eigenen ipk feedserver gebaut :-)


    Darum habe ich ja aus dem ipk server wieder einen ipk kit gebaut der sich selber richtig einrichtet und sobald du ihn mit kits befüllst auch sofort funktioniert. Das Plugin ist ja nur eine Möglichkeit das shellscript auszuführen und damit die Leute nicht nach der installation glauben das die installation nicht funktioniert hat - wirklich nötig ist es nicht - bei mir läuft das script einfach 1x täglich als cronjonb und das war es schon. Und den einen aufruf von ipkserver.sh kannst du natürlich auch mit MF machen :-)


    PS: Und natürlich kannst du das /media/hdd/ipkserver directory auch woanders hinlegen - wenn du möchtest ändere ich dir das kitdir auf eine variable die am anfang des scripts gesetzt wird (ist jetzt als r1 kit gepostet). Du musst halt nur dann link setzen das es unterhalb von /hdd auch gesehen wird, weil nur das vom Webserver auch serviciert wird wenn du es in den settings enablest.


    Viel Spass
    gutemine

    Edited 5 times, last by gutemine ().

  • Danke GuteMine


    wirklich ein geniales plugin, wundert mich ein bissl das es in der Versenkung verschwunden ist.

  • Im Prinzip ist es ja nur ein Beispiel, und ich habs auch nur als Plugin rausgebracht damit die Leute sehen wie einfach das eigentlich geht.

    Edited once, last by gutemine ().

  • ist doch ein prima plugin ..
    super wäre es wenn man es auf einen NAS legen könnte..
    und mit passwordschutz


    wird das von dir weiter entwickelt?


    wäre doch super..

    2x Dm 8000, Ds409, Qnap TS-459 Pro II, SPF-107H,Onkyo TX NR-509,Teufel Consono 35,PS3,Fritzbox 7270,7390,Wii,XboX1,Down 50 Mbits, Up 10 Mbits

  • ein ipk server ist ein ipk server, da ist nichts mit passwortschutz.


    Und installier es dir und schau dir an wie simpel das ist, das kannst du leicht selber ändern das statt einem directory auf der Hardddisk ipks von einem directory auf einem NAS serviciert werden.


    Dann legt man seine Lieblingsipks dorthin und ist schon fertig.


    Im Prinzip geht es ja mit jedem webserver, das Plugin macht es halt mit dem lokalen der Dreambox.

    Edited once, last by gutemine ().

  • ah super gutemine
    werde ich mir gleich mal ansehen..


    wenn das einfach zu ändern ist mit der dir-struktur dann ist das ja perfekt..

    2x Dm 8000, Ds409, Qnap TS-459 Pro II, SPF-107H,Onkyo TX NR-509,Teufel Consono 35,PS3,Fritzbox 7270,7390,Wii,XboX1,Down 50 Mbits, Up 10 Mbits

  • Wenn du wenigstens die erste Seite hier gelesen hättest wüsstest du wie einfach es funktioniert, und das direktor ist mit link nach der installation auch schnell wo anders hingelegt.


    Es muss nur unterhalb von /hdd verlinked sein weil der enigma2 Webserver halt nur das standardmässig serviciert.

    Edited 2 times, last by gutemine ().

  • Hi Gutemine


    ich habe mir Dein Plugin auch mal installiert und testweise ein ipk in den Ordner auf der HDD gelegt. Aber wie genau installiere ich dann die sich in diesem Ordner befindlichen Plugins?

  • ipkg install pluginname oder im Softwaremanager. Du merkst einfach keinen Unterschied ob sie lokal oder vom Feed kommen.

  • Schade das kein Unterschied zwischen den lokalen und den anderen vom Feed ist. Optimal wäre wenn irgendwo - am besten natürlich unter Erweiterungen - eine Rubrik für diese lokalen ipkg zu finden wäre. Dann braucht man sich seine ipkg nicht aus dem Riesen Zweig umständlich rauspicken, sondern könnte sie schnell nacheinander installieren.

  • Ähm, ich finde das andersrum gut so, da kann ich mir mit ipkg download ein Repository aus Plugins bauen die ich sowieso immer weider haben will und sie dann von lokal installieren.


    Aber das ist Geschmacksache, der ipkserver ist ja nur ein simples Beispiel wie sowas überhaupt funktioniert.


    LG
    gutemine

    Edited once, last by gutemine ().

  • Kann man denn den Pfad für die lokale Installation im Softwaremanager auf dieses Verzeichnis abändern?

  • hi gutemine,


    habe ich da was übersehen, das will einfach nicht klappen ...


    Code
    # opkg update
    .
    .
    * Failed to download http://127.0.0.1/hdd/ipkserver/Packages.gz.
    error detail: HTTP response code said error


    Packages.gz ist erstellt (also der ipkserver upgedatet) und der ipkserver.feed auch in den standardfeed eingetragen


    Code
    # ls -la /media/hdd/ipkserver/*.gz
    -rw-r--r-- 1 root root 145857 Feb 24 00:50 /media/hdd/ipkserver/Packages.gz
    #


    irgendwie will das opkg update die gz nicht ...


    hab sogar im script ipkg gegen opkg ersetzt


    bei opkg update wird zwar /tmp/feedname_paketlist erstellt, aber das file ist leer - die offiziellen _paketlists sind ok


    läuft das bei dir noch?

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox

    Edited 2 times, last by Fred Bogus Trumper ().

  • ich habe das Teil schon ewig nicht mehr verwendet, aber wirklich was geändert hat sich nicht wirklich was. Insofern müsste ich mir das genauso erst anschauen wie Ihr. Schau mal ins File rein ob das passt.

    Edited 2 times, last by gutemine ().

  • das plugin/script funktioniert, Packages.gz wird erstellt - egal ob über die Konsole oder die GUI


    ich habe ein wenig weitergespielt: könnte es am Wechsel von ipkg auf opkg liegen?


    Hab mir mal testweise vom Flashimage den gesamten onlinefeed per wget auf die hdd gezogen, inkl. der Packages.gz, Packages.filelist und Packages.stamps - d.h. der online feed liegt jetzt 1:1 in /hdd/ipkserver


    funktioniert auch nicht - die gleiche Fehlermeldung


    an deinem Plugin liegt es scheinbar nicht - eher an opkg oder an http://127.0.0.1 ...


    hab´ schon gegoogelt - wenn es nicht mehr funktioniert, dann möchte ich wenigsten wissen warum ;). Das einzige was mir nocht einfällt, dass es eine Art "Cloneschutz" sein könnte ....


    Auf die Art könnte man ja einen gesamten Imagefeed auf einer anderen Seite hosten und so clones(images) mit passenden Paketen versorgen, auch wenn der Originalfeed der Imageversion längst offline ist. Das ist übrigens nicht meine Intension - hab nur originale Boxen!!


    sonst noch eine idee?

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox

  • In welchem Image probierst du es denn ?


    In einem aktuellen CVS image ist noch alles was ipkg heisst auf opkg verlinked, deswegen funktioniert es dort auch weterhin. Es gibt aber imagebauer die die links rausgeschmissen haben und nur mehr opkg geht - dort wirst du evt ein Problem haben.


    Und nein das hat nichts mit Clonen zu tun ;-)


    Und ja, prinzipiell läuft das script auch auf einem Linux Webserver, den von der box selber zu benutzen ist kein muss.


    So kannst du dir auch eigenen ganzen Feed auf einem Webserver bauen z.B. aus den Paketen deiner OE Buildumgebung.


    Insofern ist das halt nur ein simples Beispiel wie man sowas macht und was man braucht.


    Und letztendlich werden auch Infos aus den control files in den ipk Paketen benötigt um damit die paketliste zu generieren, und je nachdem wie die gepackt sind kann es schiefgehen und das script müsste evt. angepasst werden.


    LG
    gutemine

    Edited 2 times, last by gutemine ().

  • liegt an der url, das Packages.gz kann nicht geladen werden, auch nicht per wget


    Code
    root@dm800:/tmp# wget http://dreamboxupdate.com/opendreambox/1.6/dm800/experime
    tal/mipsel/zeroconf_0.9-r3_mipsel.ipk
    Connecting to dreamboxupdate.com (82.149.226.174:80)
    zeroconf_0.9-r3_mips 100% |*******************************| 13094 --:--:-- ETA
    root@dm800:/tmp# wget http://127.0.0.1/media/hdd/ipkserver/Packages.gz
    Connecting to 127.0.0.1 (127.0.0.1:80)
    wget: server returned error: HTTP/1.1 404 Not Found
    root@dm800:/tmp# ls /media/hdd/ipkserver/Packages.gz
    /media/hdd/ipkserver/Packages.gz
    root@dm800:/tmp#


    Web-IF, Web-if /media aktiviert, HTTP-Zugriff ist erlaubt keine Authentifizierung


    scheinbar klappt das nicht mehr mit dem aktuellen Web-IF der Dream - muss wohl ein echter Web-Server her ...


    werde das mal im original DMM (experimental) und OoZooN versuchen, mach´ mir da aber keine Hoffnung

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox

    Edited 2 times, last by Fred Bogus Trumper ().

  • gelöst!


    Web-IF Einstellungen:
    - Web-IF, Web-if /media aktivieren
    - HTTP-Zugriff erlauben
    - Authentifizierung ja oder nein - egal



    /hdd/ipkserver muss als Bookmark für den Abspielpfad im Movieplayer gesetzt sein, dannach enigma2 neu starten, damit die settings neu geschrieben werden:

    Code
    root@dm800:/tmp# cat /etc/enigma2/settings | grep videodirs
    config.movielist.videodirs=['/hdd/ipkserver/', '/hdd/movie/']


    Code
    root@dm800:/tmp# wget http://127.0.0.1/hdd/ipkserver/Packages.gz
    Connecting to 127.0.0.1 (127.0.0.1:80)
    Packages.gz 100% |*******************************| 142k --:--:-- ETA



    Im nachhinein logisch - ich kann auch im web-if im Browser nur die Verzeichnisse zum Abspielen von Aufnhmen wählen, die auch als Bookmark existieren, auf andere Unterordner von /media oder /hdd kommt man auch im Browser nicht ..


    jetzt kommt man natürlich im browser mit http://ip-dreambox/hdd/ipkserver auf den "Feed"


    opkg update geht jetzt natürlich auch ... :kaffee:


    wenn ich den workaround hier überlesen habe, dann tut leid :)

    Gruß Fred


    Die Dreambox ist tot, es lebe die Dreambox

    Edited 4 times, last by Fred Bogus Trumper ().