im Ordner /usr/lib/enigma2/python/Plugins/Extensions einen Ordner für das neue Plugin anlegen
z.B. MeinScript über Telnet
Code:
mkdir /usr/lib/enigma2/python/Plugins/Extensions/MeinScript
Rechte 755
Code:
chmod 755 /usr/lib/enigma2/python/Plugins/Extensions/MeinScript
die Datei __init__.py muss immer vorhanden sein, kann aber auch "leer" sein
also mal eine leere __init__.py erstellen
Code:
touch /usr/lib/enigma2/python/Plugins/Extensions/MeinScript/__init__.py
dann brauchen wir dann eine plugin.py in der man in Python coded
Code:
touch /usr/lib/enigma2/python/Plugins/Extensions/MeinScript/plugin.py
Dann mit einem Linux Editor (DCC, PS-Pad Editor etc.) die plugin.py bearbeiten
sieht dann etwa so aus:
Code:
from Plugins.Plugin import PluginDescriptor
from Screens.Console import Console
cmd = "/usr/script/meinscript.sh"
def main(session, **kwargs):
session.open(Console,_("Mein Script"),[cmd])
def Plugins(**kwargs):
return [PluginDescriptor(name="Mein Script", description=_("Mein Script Beschreibung"), where = PluginDescriptor.WHERE_PLUGINMENU, fnc=main),
PluginDescriptor(name="Mein Script", description=_("Mein Script Beschreibung"), where = PluginDescriptor.WHERE_EXTENSIONSMENU, fnc=main)]
cmd =
hier den Pfad für das auszuführende Srcript eingeben
return [PluginDescriptor(name="Pluginname"
frei wählbarer Plugin Name
description=_("Pluginbeschreibung")
Alternativ Text (Beschreibung im Erweiterungs Menü)
PluginDescriptor.WHERE_PLUGINMENU
Verantwortilich für die Anzeige im Erweiterungs Menü (Menü - Erweiterungen)
PluginDescriptor.WHERE_EXTENSIONSMENU, fnc=main
taucht dann im BluePanel auf - zumindest im Newnigma2
session.open(Console,_("mein Script"),[cmd])
hier wird der Titel definiert, der am Screen angezeigt wird, wenn du das Plugin ausführst
wenn man fertig ist, Enigma2 neustarten, dann wird automatisch aus der plugin.py bzw. __init__.py eine plugin.pyo und __init__.pyo kompiliert, damit das Plugin ausführbar ist (im OE 1.5 mit der älteren Python Version war es glaube ich die alte Endung .pyc)
Wenn alles richtig ist, sollte das script so ausführbar sein. Wenn die Box crasht, im Craschlog nachsehen, was schief ging. Die plugin.py kontrollieren/korrigieren und Enigma2 neu starten, dann wird eine neue .pyo erstellt
der Rest (Name, Beschreibung, Fenstertitelname) ist Spielerei