[testing] Update auf vdr 2.0.6

  • Moin!


    Zur Zeit baut gerade der vdr 2.0.6 im testing-PPA.
    Änderungen gegenüber dem vorigem vdr 2.0.4:

    • statt des "extra-video-directory Patch" ist der "hide-first-recording-level Patch" drin
    • zusätzlich gibt es den "conf.d Patch"
    • EDIT: Backport des recording hook "started" aus der vdr 2.1.x-Reihe


    Bei den Plugins hat sich hier und da etwas getan, aber nicht viel (denke ich).
    Bei skinnopacity wurde das Nicht-Anzeigen der ersten Kanalinfo deaktiviert, man sieht jetzt also zuerst wieder ein unvollständiges OSD, aber dafür wundert man sich nicht, wenn der erste Druck auf "Menü" nichts tut. :)
    EDIT: gab anscheinend doch Probleme, erst mal wieder Patch entfernt


    Beim "hide-first-recording-level Patch" geht es darum, dass man per Parameter "--hide-first-recording-level" dem vdr sagen kann, dass er die erste Verzeichnis-Ebene im Video-Dir nicht darstellen und beim Sortieren missachten soll. Dadurch kann man in seinem Video-Dir mehrere Verzeichnisse erstellen, an denen z.B. NFS-Shares oder USB-Platten gemountet werden können (siehe auch avahi-linker). Lokale Aufnahmen muss man dann aber in das Unterverzeichnis "local" schieben. Dort entstehen auch die Aufnahmen des vdr. Dieses Feature ist nicht dafür gedacht, Aufnahmen auf dem Server zu machen, sondern diverse vdr-Aufnahmeverzeichnisse in einem Baum anzuzeigen. Der Clou ist auch, dass man alle Aufnahmen sieht (nicht wie evlt. bei Overlay-FS, wo sich manchmal Dateien überdecken können) und alle über die Platten verstreute Aufnahmen im gleichen Verzeichnis auch in der Liste zusammen dargestellt werden. Man muss also nicht mehr wissen, auf welcher Archiv-Platte die 3. Staffel seiner Lieblingsserie abgelegt war.
    Also: lokale Aufnahmen nach "local" verschieben, Parameter aktivieren (/etc/default/vdr mit template o.ä.) und sich freuen.
    Evtl. natürlich den avahi-linker noch konfigurieren, aber das wissen die, die das hier ausprobieren wollen, sicherlich schon, wie das geht. Ich frag dann immer seahawk1986, wenn ich dazu was wissen will... :)


    Den "conf.d Patch" hat Copperhead ja schon vorgestellt. Wird der vdr ohne jegliche Parameter gestartet, liest er alle Dateien unterhalb von /etc/vdr/conf.d in alphabetischer Reihenfolge ein und erwartet pro Zeile einen Parameter. Die Dateien sind INI-mäßig aufgebaut, die vdr-Parameter müssen im Abschnitt "[vdr]" stehen, ist in einem Abschnitt ein anderer Name als "vdr" drin, wird das als Plugin-Name interpretiert und dieses Plugin wird dann geladen. Alle Parameter nach diesem Abschnitt werden an das Plugin übergeben.
    vdr-Abschnitte können mehrfach auftauchen, die Parameter werden einfach in das argv-Array übertragen und an getopt übergeben. Der vdr wird sich also genauso verhalten, als ob man die ganzen Parameter auf der Kommandozeile übergeben hat.
    Tauchen Plugin-Abschnitte mit gleichem Namen mehrfach auf, wird das Plugin auch mehrfach mit ggf. unterschiedlichen Parametern geladen.
    Nützlich ist die Konfiguration in Dateien für die modernen Init-Systeme systemd und upstart, da dann das entsprechende Startscript sehr übersichtlich wird.


    Gedacht ist, dass unter /etc/vdr/conf.avail die Distributoren ihre Dateien ablegen und dann nach /etc/vdr/conf.d verlinken. Aber letztendlich kann das auch jeder selbst entscheiden. Im yavdr-Team haben wir darüber noch nicht gesprochen, aber ich denke, wir werden unsere Auslieferkonfiguration unter /etc/vdr/conf.yavdr ablegen. Steht aber noch nicht fest, ist ja auch eine Menge Arbeit.


    Praktisch ist dann auch, dass man z.B. das Verzeichnis unter git-Kontrolle stellen kann und so verschiedene Branches für unterschiedliche Konfigurationen benutzen kann. Macht das Backup und das Ausprobieren leichter... :)


    Der Pfad kann über die Make.config (Variable ARGSDIR) gesetzt werden und von anderen Paketen/Programmen durch pkg-config abgerufen werden:

    Code
    ~$ pkg-config --variable argsdir vdr
    /etc/vdr/conf.d


    Für Plugins ist das Verzeichnis ähnlich Config-Dir usw. zur Laufzeit nicht abfragbar. Da die Plugins zur Zeit sowieso noch nicht dafür ausgelegt sind, zur Laufzeit ihre Parameter neu einzulesen, ist das nicht nötig.


    Es gibt den neuen Parameter "--showargs", der die Dateien alle einliest und die Parameter auf stdout ausgibt, wie sie interpretiert wurden. Damit kann man seine Dateien vor dem Start testen, der vdr beendet sich bei Benutzung dieses Parameters sofort wieder (ähnlich "--help"). Wenn ihr euch angewöhnt, die Langnamen der Parameter zu benutzen, sieht das schon sehr übersichtlich aus.
    So ist z.B. mein Test-vdr konfiguriert:


    Und die Datei(en) dazu sehen so aus:


    Man beachte vdr.conf und vdr-dbg.conf als Beispiel für das Verteilen der Parameter für den vdr auf mehrere Dateien oder "recsearch" für ein Plugin ohne Parameter.
    Kommentare sind natürlich auch möglich.


    So, während des Schreibens dieses Beitrags hab ich vergessen, ob ich noch irgendwas erläutern muss... Wird schon passen, ich bin auf eure Rückmeldungen gespannt.



    Viel Spaß
    wünscht Lars.

  • Vielen Dank für die Pakete. Auf das update haben schon viele gewartet.
    Und Danke für den conf.d Patch. Das klingt sehr interessant und wird morgen gleich auf den Clients umgesetzt.

  • Moin,


    auch von mir ein dickes Danke für die neue Version. Eine Ungereimtheit ist mir allerdings gerade untergekommen:
    baue ich das Plugin epg2vdr gegen die 2.0.6er Version läuft dies sauber durch, starte ich anschließend den VDR,
    schmiert mir dieser mit einem Fehler ab.


    Code
    Apr  4 08:26:13 htpc vdr: [5239] ERROR: /usr/lib/vdr/plugins/libvdr-epg2vdr.so.2.0.6: undefined symbol: _Z11DirectoryOkPKcbb


    Liegt's am VDR oder braucht das Plugin noch einen Patch bzgl. der Integration des conf.d-Patches?


    EDIT: Verwende ich die Version aus dem Repo, startet der VDR sauber. Mit der aktuellen Version aus dem master branch im git nicht...


    Cheers,
    Ole

  • OleS
    Mit conf.d hat das eigentlich nichts zu tun, der extra-video-director-Patch hatte aber DirectoryOk einen weiteren optionalen Parameter verpasst, vielleicht hat epg2vdr den aus Versehen benutzt. Werde ich mir ansehen (wenn horchi das nicht sowieso schon dabei ist).


    Copperhead
    Danke für die Blumen. :)
    Ich dachte mir, dass ich als Urheber zumindest irgendwo mal eine Kleinigkeit dazu schreiben sollte. Eigentlich müsste das auch irgendwie in die vdr-Doku, aber manpages hab ich noch nie geschrieben, die sehen so komisch aus von innen.


    Lars


  • Gedacht ist, dass unter /etc/vdr/conf.avail die Distributoren ihre Dateien ablegen und dann nach /etc/vdr/conf.d verlinken. Aber letztendlich kann das auch jeder selbst entscheiden. Im yavdr-Team haben wir darüber noch nicht gesprochen, aber ich denke, wir werden unsere Auslieferkonfiguration unter /etc/vdr/conf.yavdr ablegen. Steht aber noch nicht fest, ist ja auch eine Menge Arbeit.


    Gibt es einen Grund der dagegen spricht, dass ihr auch "conf.avail" verwendet? Ich meine gerade im Hinblick auf eine distributionsübergreifende Lösung wäre es wenig sinnvoll hier eine Abweichung zu haben.

  • Hi Lars,


    nein ich verwende im Plugin keinen weiteren Parameter:

    Code
    update.c:   if (!(DirectoryOk(pdir) || MakeDirs(pdir, true)))


    @Ole, kann es sein dass das Plugin nach dem update des VDR nicht neu gebaut wurde?


    /EDIT, wenn du es neu gebaut hast ist es ggf. nicht installiert oder gegen die alten gepatchten Header gebaut?


    Jörg

  • Lars hast du den recordingshook backport den ich dir geschickt hatte in 2.0.6 drin, hab jetzt nicht geschaut?


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • CKone, nein, den hab ich noch nicht drin, bin ich nicht zu gekommen. Hab ich aber noch auf der Liste.


    horchi, OleS
    Ich vermute auch, dass da irgendwas gegen alte Header gebaut wurde.


    @MReimer
    conf.avail ist im Prinzip natürlich kein Problem. Wir haben im Team noch gar nicht darüber gesprochen, aber da werden wir sicherlich zueinander kommen.


    Lars.

  • horchi, OleS
    Ich vermute auch, dass da irgendwas gegen alte Header gebaut wurde.


    Eigentlich nicht, ich hatte zuerst die 2.0.6er Pakete installiert (inkl. vdr-dev), anschließend
    vdr-plugin-epg2vdr aus dem git geholt und neu gebaut (make clean; make; make install).


    epg2vdr greift auf DirectoryOK zu:

    Code
    root@htpc:~/install/vdr-plugin-epg2vdr# strings libvdr-epg2vdr.so | grep -i Directory
    _Z11DirectoryOkPKcb
    _ZN7cPlugin15ConfigDirectoryEPKc
    Can't open directory '%s', '%m'
    could not access or create Directory %s
    Creating directory '%s'
    Can't create directory '%m'


    vdr-dev ist aktuell:


    Cheers,
    Ole

  • Jetzt habe ich die oben genannten Schritte noch einmal gemacht...und es läuft.
    Bitte abhaken, anscheinend bin zu müde, alt, doof, ... :wand


    Cheers,
    Ole

  • CKone, nein, den hab ich noch nicht drin, bin ich nicht zu gekommen. Hab ich aber noch auf der Liste.


    Kein Problem Lars, hatte mich nur interessiert.


    Durch den "extra-video-directory Patch" zu "hide-first-recording-level Patch" Switch komme ich heute und damit auch vor Ostern eh nicht zum upgrade - vermute da muss ich mir mal ne Stunde Zeit nehmen um den avahi-linker anzupassen, und die hab ich grad heute nicht.


    Aber vllt ist er ja Ostern drin der Zweizeiler ,)


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Code
    _Z11DirectoryOkPKcb


    Jetzt sieht die Signatur anders aus, dann war's wohl doch gegen den alten vdr gebaut.


    Lars.

  • vermute da muss ich mir mal ne Stunde Zeit nehmen um den avahi-linker anzupassen, und die hab ich grad heute nicht.

    Da ist eine ganz komplexe Änderung an der Konfiguration nötig ;) https://github.com/yavdr/vdr-a…34296ab8a56fe2b9fbfbaf5c8
    Außerdem muss man bei einer yaVDR-Installation in der /etc/init/mhddfs.conf noch dafür sorgen, dass der gewünschte $VIDEODIR/local Pfad nach /srv/share/vdr umgebogen wird.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Ich habe meine Testing Pakete nun auch gegen 2.0.6 gebaut und dabei mal etwas aufgeräumt.

    Gruß
    Frodo

  • Danke für die neue Version, läuft hier einwandfrei...

  • Hi,


    vdr-plugin-tvscraper ist kaputt.


    CU
    9000h

    Es ist eagl in wlehcer Reiehnfogle die Bchustebaen in Woeretrn vokrmomen. Huapstache der estre und leztte Bchustbae sitmmen.

    Einmal editiert, zuletzt von 9000H () aus folgendem Grund: hab uebersehen das es 2 packete sind vdr-plugin-tvscraper und vdr-plugin-tvscrapper

  • So ein paar brauchbare Infos dazu was kaputt bedeutet wären schon praktisch... ich habe keine Probleme mit der Version aus testing-vdr.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • ich habe keine Probleme mit der Version aus testing-vdr.


    dito

    Gruß utiltiy



    VDR Projekte VDR Projects

  • Meine PPA Version macht auch keine Probleme, nur falls er das Frodo testing PPA verwendet.


    9000H
    Mach doch mal ein

    Code
    apt-cache policy vdr-plugin-tvscraper

    Gruß
    Frodo

Jetzt mitmachen!

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