Installation eines Plugins beim Booten ?

  • Hallo Leute !


    Ich arbeite ja im moment daran mein multiboot tool für die DM 7025
    das ja anfangs ein reines shell script war komplett ins enigma zu integrieren (ende der Woche kommt die erste release die nicht nur das Wechseln der Images kann, sondern auch das kopieren und install/deinstall des Tools - wobei ich fürs install es erstmals nur als tar.bz2 file fürs manuelle installieren
    aus /var/tmp gebaut haben, ein ipk file kommt erst später).


    Damit ich alle Funktionen aus den enigma menus aufrufen kann, das
    plugin aber nicht in jedem image neu installiert werden muss wird
    das entsprechende Multiboot plugin.py nicht direkt ins
    /usr/lib/enigma2/python/Plugin/Extras/Multiboot directory
    kopiert (ausser bein ersten mal damit man es eben ganz normal mit auspacken des tar-bz2 files durch die vollen Pfadnamen dort hinkriegt), sondern kommt dann
    ins directory /media/cf/Multiboot auf die CF Karte und es wird
    nun vom Extras directory nur dorthin ein Link angelegt.


    Funktioniert im Prinzip super, es wird nach dem Kopieren des Images
    nur der Link angelegt und schon taucht das Menu in jedem Image
    auf.


    Nur beim Flash Image (wo es am dringendsten nötig wäre) habe ich das Henne Ei Problem - wenn ich es neu Flashe um dann mit multiboot auf die CF Karte zu kopieren habe ich natürlich den link noch nicht (der wird erst bei der Kopie auf der CF Karte angelegt), womit ich wiederum für das Kopieren das Menu nicht verwenden kann und wieder auf das reine script im telnet angewiesen bin.


    Folgende Frage(n) dazu:


    1) Gibt es die Möglichkeit im autorun.bat auf der CF Karte, auf das ja in meinem Fall auch durchlaufen wird wenn ich vom Flash boote (nur eben sofort wieder auf den Kernel im Flash deutend) noch zusätzlich diesen Link anzulegen
    (habe versucht ein mblink.bat dort noch auszuführen auf /media/cf
    welches das ln -sf Komado enthält für das Plugin). Damit wäre es dann möglich beim Booten sozusagen das Image mit dem nötigen Plugin zu infizieren :winking_face:


    2) wenn 1) nicht geht könne man den entsprechenden Link im Plugins/Extras Menu nicht im Standard DM Image anlegen, oder wenigstens so eine art generischen Install Link auf /media/cf/Install machen der es dann ermöglichen würde damit Menus bereits beim Booten einzubinden ?


    3) Wenn 1+2 nicht gingen, kann man wenigstens so eine art autoinstall machen - wenn zB. auf /media/cf/tmp ein file liegt wird es nach dem booten installiert, genauso wie auf /media/usb/tmp Im Prinzip hätte ich gerne so eine art autoexec.bat wie bei DOS die nach/beim booten ausgeführt wird :winking_face:


    4) vieleicht gibt es ja noch eine bessere methode - Tipps sind willkommen.


    Nach jedem Flash das Plugin in /tmp kopieren und nachinstallieren ist leider keine echte Lösung.


    Bitte um Hilfe & Tipps und gute Ideen

    5 Mal editiert, zuletzt von thowi ()

  • Ich habe nochmals drüber nachgedacht.


    So wichtig ist mein multiboot addon für die DM 7025 ja nicht das der Link in jedem Image drinnen sein muss, aber nett wäre es trotzdem wenn man das ohne telnet & co machen könnte - hier 2 Vorschläge:


    Variante 1:


    Wäre es aber möglich ein ipkg file namens multibootlink als addon zum Download bei Euch zur Verfügung zu stellen welches nur das File mit dem command zum linkanlegen beinhaltet und ausführt:


    cd /
    ln -sf /media/cf/Multiboot /usr/lib/enigma2/python/Plugins/Extensions/Multiboot


    Im Prinzip würde das schon reichen das das Multiboot Menu wenn es installiert wurde auch im Image sichtbar wird wenn die Leute es bei den addons zum download auswählen.


    Damit würden sich die User im Flash Image das einloggen mit Telnet um den link mit dem script anzulegen ersparen.


    Man wird sich ja noch etwas wünschen dürfen :winking_face:


    2. Variante:


    Die von multiboot unabhängige und auch zukunftssichere Implementierung wäre dann ein ipgk package boottimeinstall das wenn man es runterlädt und installiert dann einfach bei jedem booten auf /install nachsieht ob es ein install.sh script gibt und es dann einfach ausführt, damit könnte man den gewünschten Boottime installer einfach implementieren (und mein multiboot würde dann nur das /install befüllen) !