Version 0.5.0: Skin Installer

  • Die Verlinkung müsste passen:

    Code
    ls -l /usr/lib/vdr/plugins/skindesigner/scripts/vdrstats
    lrwxrwxrwx 1 root root 16 Mai 17 15:23 /usr/lib/vdr/plugins/skindesigner/scripts/vdrstats -> vdrstats.default


    Das Komische ist ja, dass bei manuellem Ausführen des Skripts der Wert nach vdrcpu geschrieben wird, aber beim Aufrufen des Hauptmenü das Skript offenbar zwar ausgeführt wird, aber kein Wert nach vdrcpu geschrieben wird. Der Inhalt von vdrstats.default ist: s. Anhang

    Wie gesagt, der manuelle Aufruf des Skripts (als user root oder vdr) funktioniert.

    Bilder

    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<<<

    2 Mal editiert, zuletzt von maz ()

  • Sorry, da war ein Zeilenumbruch nicht vorhanden, ich hab das Skript noch mal angehängt als Screenshot. Ein Fehler war schon mal, dass die Spaltennummer in dem awk-Befehl bei mir $9 bzw. $10 ist für CPU bzw. memory. Das Problem bleibt aber: Rufe ich das Skript auf der Konsole auf, werden Werte in die Dateien geschrieben, öffne ich das Hauptmenü, werden die Dateien vdrcpu und vdrmem offenbar überschrieben und bleiben leer. Irgendwas scheint beim automatischen Ausführen des Skripts durch skindesigner schiefzugehen.

    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<<<

  • Hast du denn mal meinen Tipp ausprobiert? Wenn also listtop z.B. unter /usr/local/bin liegt, im Script /usr/local/bin/listtop benutzen. Wenn du das Script aus der Bash aufrufst, hast du andere Umgebungsvariablen als wenn der Skindesigner das macht.


    Ciao Louis

  • Oha: top, awk und grep in Reihe und dann noch zwei Aufrufe - wie wäre es mit ein paar Regulären Ausdrücken in Perl, um das extra wichtig aussehen zu lassen? :unsch
    Spricht etwas dagegen das einfach mit ps zu machen?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Danke Euch beiden, jetzt klappt's! Trotz absoluter Pfade habe ich es nicht hinbekommen, mit dem Skript von seahawk hat es aber auf Anhieb geklappt :)
    Abschlussfrage: Wenn ich die vdr load (s. Screenshot) durch 100 teile, habe ich doch die gesamte Systemlast und die Last des vdr-Prozesses in gleicher Weise angegeben oder? @seahawk: Könntest Du mir die Division durch 100 noch in Deinem Skript zeigen?

    Bilder

    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<<<

  • @seahawk: Könntest Du mir die Division durch 100 noch in Deinem Skript zeigen?

    Da die Bash nicht besonders gut mit Fließkommazahlen kann, wäre das IMHO im Skin besser aufgehoben - dort zu dividieren sollte auch schneller sein als das im Shell-Skript zu machen. top und ps geben beide den Prozentualen Anteil an der CPU- und Arbeitsspeicherauslastung eines Prozesses zurück, der CPU-Load für das System ist eine Addition der Auslastung der einzelnen Kerne.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hallo louis,


    soweit ich das sehe kann man customtokens ja nur per svdrpsend/dbus2vdr setzen. Da du ja ohnehin schon <vdrlibdir>/plugins/skindesigner/scripts/{vdrstats,temperatures} ausführst und die Werte aus <OUTPUTFLDR>/vdr{cpu,mem} einliest, könnte man nicht noch eine Datei pro customtoken im Ordner <OUTPUTFLDR>/customtokens/ anlegen, die der Skindesigner zur Verfügung stellt? Das Skript, welches diese Dateien erzeugt (z.B. <vdrlibdir>/plugins/skindesigner/scripts/customtokens) könnte dann immer gerufen werden, wenn customtokens ersetzt werden sollen.


    In maz Fall würde es dann also folgendermaßen ausschauen:


    Ich finde das jetzige Verhalten insofern suboptimal, als dass die Tokens nicht sofort nach Start des vdr zur Verfügung stehen, sondern erst wenn der cronjob wieder durchgelaufen ist. Man könnte das mit systemd sicherlich hintricksen, aber ich wollte erstmal deine Meinung dazu Einholen.

  • Zitat

    wäre das IMHO im Skin besser aufgehoben - dort zu dividieren sollte auch schneller sein als das im Shell-Skript zu machen.

    Anfängerfrage: Wie dividiere ich in der xml, wenn dort der Wert als Text ausgegeben wird:

    Code
    <drawtext align="center" y="80%" font="{regular}" fontsize="12%" color="{clrWhite}" text="Load: {load}" />


    Zitat

    top und ps geben beide den Prozentualen Anteil an der CPU- und Arbeitsspeicherauslastung eines Prozesses zurück, der CPU-Load für das System ist eine Addition der Auslastung der einzelnen Kerne.

    Ich habe mich schon gefragt, wie in meinem Fall (mac mini mit Core 2 Duo CPU) die Systemlast über 200% steigen kann, was ich noch immer nicht ganz verstehe. Gerade kurz nach dem Start von VDR habe ich oft Werte oberhalb von 3.0 bzw. 300%.


    Gruß 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<<<

  • olebowle: was ich am jetzigen Vorgehen besser finde, dass derjenige, der die Custom Tokens setzt entscheiden kann, in welcher Frequenz sie gesetzt werden. Wenn es nur Sinn macht, die Werte einmal die Stunde abzurufen, dann ist das auch so. Mit deinem Vorschlag wäre das nicht steuerbar. Deshalb werde ich das so lassen, wie es ist. Ich finde das flexibler.


    Ciao Louis

  • maz: rechnen mit String Variablen ist nicht vorgesehen. Wobei du eh ein bisschen Äpfel mit Birnen vergleichst, die System Load ist nicht wirklich mit einer CPU Auslastung vergleichbar.


    Ciao Louis

  • Falls es jemanden interessiert: Ich hab es jetzt folgendermaßen mit einem systemd Timer gelöst.


    Der Timer läuft jetzt alle 10 Minuten. Durch das Persistent=true wird das Skript unverzüglich nach Start des vdr ausgeführt, wenn der Rechner länger als 10 Minuten aus war. Somit wird der customtoken Wert in den meisten Fällen direkt am Start zur Verfügung gestellt.

  • Hallo,
    ich hab mir das neue Feature nun auch mal angeschaut.. funktioniert bestens und ich habe den tryout-skin auch entsprechend angepasst.
    Louis, könntest du vllt den Text für den roten Button ein wenig anpassen? "Aus Git aktualisieren" ist doch ein wenig lang (außerdem passt es nicht mehr auf den roten Button im tryout-Skin :-D)
    Reicht hier nicht einfach "Aktualisieren"?


    [size=10]nOpacity: Icons
    [size=10]skindesigner: tryoutsglassy

  • Louis, könntest du vllt den Text für den roten Button ein wenig anpassen? "Aus Git aktualisieren" ist doch ein wenig lang (außerdem passt es nicht mehr auf den roten Button im tryout-Skin :-D)
    Reicht hier nicht einfach "Aktualisieren"?


    Klar...Feature Request, dann gehts nicht vergessen.


    Ciao Louis

  • Bei mir wird im default "lcars" skin der Preview vom Skins nicht angezeigt. Im log fällt mir nichts auf. Passt es bei euch mit lcars und preview? Datein im /tmp/ existieren auch. Wenn ich bspw. tryouts installiere, und den als default skin auswähle, dann funktioniert der Preview schon. Wird wohl sein, das lcars einfach so etwas noch nicht machen kann?


    Code
    Jun 09 13:40:11 vdrvdpau vdr[445]: [445] saved setup to /var/lib/vdr/setup.conf
    Jun 09 13:40:11 vdrvdpau vdr[445]: [445] OSD size changed to 1920x1080 @ 1
    Jun 09 13:41:01 vdrvdpau vdr[445]: video: 15:37:53.123  +21  520   0/\ms  33+7 v-buf
    Jun 09 13:41:54 vdrvdpau vdr[445]: [445] skindesigner: download screenshot name /tmp/screenshot_shady_0.jpg url http://www.anthra.de/images-shady/screenshots/main4.jpg
    Jun 09 13:41:54 vdrvdpau vdr[445]: [445] skindesigner: download screenshot name /tmp/screenshot_shady_1.png url http://www.anthra.de/images-shady/screenshots/schedules.png
    Jun 09 13:41:54 vdrvdpau vdr[445]: [445] skindesigner: download screenshot name /tmp/screenshot_shady_2.png url http://www.anthra.de/images-shady/screenshots/tvgng1.png
    Jun 09 13:41:55 vdrvdpau vdr[445]: [445] OSD size changed to 1920x1080 @ 1
    Jun 09 13:41:55 vdrvdpau vdr[445]: [445] saved setup to /var/lib/vdr/setup.conf
    Jun 09 13:41:55 vdrvdpau vdr[445]: [445] OSD size changed to 1920x1080 @ 1Jun 09 13:42:01 vdrvdpau vdr[445]: video: 15:38:53.123  +20  488   0/\ms  31+7 v-buf



    Einmal editiert, zuletzt von crow ()

  • Moin,

    Bei mir wird im default "lcars" skin der Preview vom Skins nicht angezeigt. Im log fällt mir nichts auf. Passt es bei euch mit lcars und preview? Datein im /tmp/ existieren auch. Wenn ich bspw. tryouts installiere, und den als default skin auswähle, dann funktioniert der Preview schon. Wird wohl sein, das lcars einfach so etwas noch nicht machen kann?


    mit LCARS werden die Skin Preview Bilder nie funktionieren, da das nur Skindesigner Skins können, die das entsprechende Template implementiert haben.


    Ciao Louis

  • Gerade shady über das Menü aktualisiert und jetzt kommt nur noch LCARS.


    Code
    Jun 09 19:59:39 vdr4arch vdr[30394]: [30394] skindesigner: Error in XML: No declaration for attribute condition of element currentelement
    Jun 09 19:59:39 vdr4arch vdr[30394]: [30394] skindesigner: Failed to validate /var/lib/vdr/plugins/skindesigner/installerskins/shady/xmlfiles/displaymenu.xml
    Jun 09 19:59:39 vdr4arch vdr[30394]: [30394] skindesigner: error reading displaymenu template, aborting
    Jun 09 19:59:39 vdr4arch vdr[30394]: [30394] skindesigner: error during loading of templates - using LCARS as backup
  • Hm. Also ich hatte denselben Fehler und nachdem ich aus dem git aktualisiert habe, wurde shady auch wieder angezeigt.

Jetzt mitmachen!

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