wie werden optionen zu den plugins uebergeben?...

  • hey,


    wie werden optionen eigentlich zu den plugins uebergeben?


    im startup script wird nur die liste der plugins gebaut (-P$PLUGIN),
    wie krieg ich das die optionen rein? ;) (z.b. -P'graphlcd -x 192 -y 64')


    ist da schon etwas in der planung?


    wenn nicht, wie soll sowas dann aussehen? eine art /etc/sysconfig/plugins.conf,
    wo die optionen eingestellt werden koennen? evtl einbindung in setup?
    oder "hardcoded" fuer jedes plugin selbst? (so ala graphlcd.conf + "setup graphlcd")


    tom, mirko, ideen? ;)


    thx,
    -- randy

  • Hi,


    du musst den gesamten Pluginaufruf in Quotes ' oder " setzen. Wenn das in eine Variable verpackt wird und noch weitergereicht wird muessen die Quotes ggfs. mit Backslashes escaped werden (\', \") . Shells loesen quotes bei der Auswertung von Variablen oder Kommandos auf. Wie stark, also wieviele Backslashes noetig sind haengt von der Anzahl der Weiterreichungsebenen ab. Man kann also auch bei \\\" landen.


    Gruss,

    VDR1: MSI-6368, P3 Celeron 700MHz, 320MB, Samsung 160GB, Nexus-S 2.1, Nova-S, IR Selbstbau, LinVDR 0.6, vdr-1.3.27
    VDR2: ASUS Pundit, P4 Celeron 2.4GHz, 256MB, Samsung 120GB, Nexus-S 2.2, SkyStar2, IR Selbstbau, LinVDR 0.6, vdr-1.3.27

  • Ich bin mir nicht sicher ob das bei der Setup/Sysconfig Strucktur von LinVDR auch so geht

  • Zitat

    Original von randy
    wie werden optionen eigentlich zu den plugins uebergeben?


    Bisher gar nicht.


    Zitat

    ist da schon etwas in der planung?


    Nein.


    Zitat


    tom, mirko, ideen? ;)


    Zur Zeit ist es nicht notwendig. Keins der verwendeten Plugins muss mittels Parameter konfiguriert werden. Ich möchte es ehrlich gesagt lieber vermeiden mit Parametern zu hantieren. Es macht die Sache unnötig Komplex, wer weis schon für welches Plugin welcher Parameter benötigt wird. Wird da unsinn eingetragen startet VDR nicht und loopt nur noch.


    Wer das unbedingt braucht hat warscheinlich ein Plugin das gar nicht bei LinVDR dabei war. Wer soweit geht kann auch die "runvdr" editieren.


    Je mehr Möglichkeiten ich per Setup einräume, desto mehr potentielle Fehler gibt es. Ich will versuchen es einfach zu halten.



    Tom.

  • Zitat

    Original von mottobug


    Zur Zeit ist es nicht notwendig. Keins der verwendeten Plugins muss mittels Parameter konfiguriert werden. Ich möchte es ehrlich gesagt lieber vermeiden mit Parametern zu hantieren. Es macht die Sache unnötig Komplex, wer weis schon für welches Plugin welcher Parameter benötigt wird. Wird da unsinn eingetragen startet VDR nicht und loopt nur noch.


    daher sollte ja jedes "neue" plugin eine config daherbringen, damit nix falsches gesetupped
    werden kann.


    Zitat


    Wer das unbedingt braucht hat warscheinlich ein Plugin das gar nicht bei LinVDR dabei war. Wer soweit geht kann auch die "runvdr" editieren.


    natuerlich waers dann noch ned dabei. aber dxr3 braeuchte sowas, oder graphlcd, oder lcdproc oder oder oder.


    naja, gibts halt keine plugins die "schwierig" sind.


    thx,


    -- randy

  • Hi,
    kann mir mittlerweile jemand sagen, wie ich auf einfache Weise Parameter zu den plugins übergeben kann? Ich habe es z.B. geschafft, das muggle plugin zu installieren, aber ohne einige Parameter (-u root -t /daten/mp3-Dateien) funktioniert es nicht richtig...


    mfg maz

    Meine VDRs:
    >>>Mac mini 2010 mit 2x Sundtek SkyTV Ultimate III, Logitech Harmony 300i, yavdr-0.5a mit softhddevice<<< >>>ZOTAC D2550 ITX-WIFI Supreme mit DD Cine S2, Gehäuse OrigenAE M10, Logitech Harmony 300i, yavdr-0.5a mit softhddevice<<< >>>Raspberry Pi
    2 mit Sundtek SkyTV Ultimate IV, raspbian, rpihddevice-Plugin, Logitech Harmony 200<<<

  • leider weiß ich auch nicht wie man das am besten macht.
    Ich würde es erstmal fest mit in die runvdr schreiben.
    Ist zwar nicht so der hammer aber es sollte gehen....

  • Hi,
    ich habe das bei mir durch eine Änderung im runvdr Skript gelöst.
    dort den Abschitt:


    Code
    for PLUGIN in `unique.pl $PLUGINLIST`;
    do
       PLUGINS="$PLUGINS -P$PLUGIN"
    done

    gegen die Zeile:


    Code
    PLUGINS=`echo $PLUGINLIST | /usr/bin/awk -F, '{ for (i = NF; i >0; i--) { split($i, plg, " "); gsub("^ ", "", $i); j[plg[1]] = $i; }} END { for (i in j ) printf("-P%s ", j[i] ) ; printf("\n"); }'`


    ersetzen. Nachteil ist, die Plugins müssen in der sysconfig nun mit Kommata getrennt aufgelistet werden, was sie nach dem speichern via setup nicht sind!


    Beispiel:
    PLUGINLIST='"plugin1 agr1 arg2", "plugin2 arg1", "plugin3", "plugin4 arg"'


    Auf die Hochkommas achten.


    Daher nach jedem setup etwas Handarbeit. Ich verwende das setuptool derzeit eh nicht mehr, hatte da oft Probleme mit ner anschließend kapputten sysconfig.


    Grüße horchi

    Einmal editiert, zuletzt von horchi ()

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!