yavdr experimental für Ubuntu 20.04 (yavdr ansible @ focal)

  • Hallo seahawk1986 ,

    mir ist aufgefallen, du bist schon dabei, ein Repository für die nächste Ubuntu Version zu bauen. Ich habe mich auch schon mal an dem daily build versucht, um zu sehen, ob meine verwendete Plugins bauen werden. markad baut ja nicht ohne Patch, du hast ja aber schon einen patch dafür gefunden. Da ist aber glaube ich noch ein Fehler drin: In der decoder.cpp ist nach dem Patch der Zweig nach Zeile 236 gar nicht mehr nötig, weil es ja den Codec AV_CODEC_ID_MPEG2VIDEO_XVMC eh nicht mehr gibt. In hänge mal meine Version von Patch an, der auch noch ein paar neue Compiler Warnings beseitigt.

    Edit: Makefile Patch entfernt, da ist noch ein Bug drin.

    Edit2: Thema erweitert damit es klarer yavdr ansible zugeordnet werden kann

  • Danke, ich hatte gestern diesen Patch von MReimer aus vdr4arch übernommen. Mit deinem Patch gibt es noch ein paar Warnungen zu deprecated declarations:


    Die Pakete für focal sind bislang von mir noch ungetestet, ich wollte einfach mal schauen, ob es da größere Hindernisse durch die neuen Bibliotheken gibt - bis auf einen Schluckauf bei Python3 (der Launchpad-Buildserver installiert einen Mix aus Python 3.8 und 3.7) und Linker-Fehlern beim libcecdamon sieht das eigentlich schon recht gut aus - hoffentlich komme ich am WE noch dazu softhdcuvid zu paketieren.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hallo seahawk1986 ,

    das ist klar, dass die Pakete noch nicht getestet sind. Bei einem Repository zu einer Ubuntu Version, die es erst seit ein paar Tagen als daily build gibt, wird das auch keiner erwarten.

    Ich habe gesehen, du hast meinen vdr-plugin-live patch drin, finde ich gut. Einen eigenen patch weniger, danke.

    Zu den Ausgabeplugins kann ich leider nichts beitragen, meine VDRs laufen alle als reiner Backend im LXC Container ohne graphische Benutzeroberfläche.


    Den angesprochen Makefile Patch habe ich jetzt angehängt, damit entspricht das Makefile auch den aktuellen Anforderungen vom VDR.

    An den von dir angesprochenen Compiler warning bin ich dran, ist aber noch nicht fertig (avcodec_decode_video2 fehlt noch). Das geht diesmal nicht so einfach durch 1:1 Ersatz mit einer neuen Funktion.


    Grundsätzlich ist das Decoder Design auf einem ca. 7 Jahre alten Stand und wird alle 2 Jahre mal mit möglichst minimalen Änderungen am Leben gehalten, ohne das Design an die aktuelle libavcodec API anzupassen. Die API bietet inzwischen aber Möglichkeiten, mit deutlich weniger und einfacherem eigenem Code auszukommen. Vorrausetzung ist, dass das alte VDR Recording Format nicht mehr unterstützt werden muss. Braucht das noch jemand ?

    Ich habe schon mal damit angefangen, den Decoder neu zu schreiben, sobald ich da was lauffähiges habe, werde ich es posten. Es wird so implementiert werden, dass man den neuen Decoder per Aufrufparameter aktiviert, wenn man den weg lässt, hat man den originalen Decoder. Somit macht es trotzdem noch Sinn, die warnings zu patchen. Damit kann man sehr einfach die Ergebnisse von alt und neu vergleichen.

    Alle von mir geposteten Patches sind auch auf yavdr experimental für Ubuntu 18.04 getestet, falls du die Versionen gleich halten möchtest, sollte das funktionieren.

  • Danke ich habe den gerade in das Paket für focal eingebaut.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hallo seahawk1986

    in den build-dep von vdr-plugin-epg2vdr steht u.a. python-dev drin, damit bekomme ich aber:

    python.h:11:10: fatal error: Python.h: No such file or directory

    11 | #include <Python.h>

    Mit python3-dev geht es, so steht es bei dir auch in bionic drin.

  • Ich habe geraden den Patch eingebaut, der schon in das bionic-Paket eingeflossen ist.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hier der Rest der Patches:

    01-epgsearch-all0.diff -> löst das hier beschriebene Problem

    04-epgsearch-gcc9-warnings-V0-06.diff -> gegen die neuen Compiler Warnungen

    Bekommen wir das, zusammen mit dem man pages Patch, den du schon drin hast, auch ins git ? epgsearch wir ja noch gepflegt.

    02-live-gcc9-warnings-V0-02.diff -> gegen die neuen Compiler Warnungen

    Damit bin ich mit den von mir verwendeten Plugins durch, April 2020 kann kommen.

  • 02-live-gcc9-warnings-V0-02.diff -> gegen die neuen Compiler Warnungen

    Es gibt keine md5.cpp Datei, nur eine md5.c (https://projects.vdr-developer…-epgsearch.git/tree/md5.c) und die im Patch angegebene Zeilennummer ist ca. 30 Zeilen von der Position entfernt - fehlt da was?


    Ist das Absicht, dass es keinen 03-*.diff Patch gibt?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Sorry, das hätte ich besser beschreiben sollen: Das 02-live-gcc9-warnings-V0-02.diff ist für vdr-plugin-live, da gibt es auch die md5.cpp

    Die Lücken bei epgsearch sind der man pages patch, den du eh schon drin hast und ein unveröffentlichter Sommerzeit Winterzeit Wechsel Patch, für den sich sicher im Moment keiner interessiert und ganz schlecht zum Testen ist, weil es das nur einmal im Jahr gibt.

  • Hallo seahawk,


    ich habe heute mal die zweite Partition aktiviert.


    Der erste Aufruf von "sudo -H ./install-yavdr.sh" bleib hängen --> siehe install.txt


    Beim zweiten Aufruf blieb er auch hängen und der Rechner musste neu gestartet werden. --> siehe install2.txt


    Beim dritten Aufruf gab es nur eine Warnung (heißt nun: kodi-eventclients-kodi-send) --> siehe install3.txt


    Jetzt läuft das System! :alki


    Gruß


    Murry

  • Mit den fonts für skindesigner stimmt etwas nicht. Eine manuelle installation mittels wget lief durch.

    Code
    sudo apt install fonts-opensans
    Paketlisten werden gelesen... Fertig
    Abhängigkeitsbaum wird aufgebaut.
    Statusinformationen werden eingelesen.... Fertig
    Paket fonts-opensans ist nicht verfügbar, wird aber von einem anderen Paket
    referenziert. Das kann heißen, dass das Paket fehlt, dass es abgelöst
    wurde oder nur aus einer anderen Quelle verfügbar ist.
    
    E: Für Paket »fonts-opensans« existiert kein Installationskandidat.
  • Jetzt läuft das System!

    Schön, dass es nach ein paar Tagen Arbeit schon halbwegs läuft, das hat bei früheren Versionen immer deutlich länger gedauert :)

    Der erste Aufruf von "sudo -H ./install-yavdr.sh" bleib hängen --> siehe install.txt

    Ja, da hatte ich heute Nachmittag schon etwas herumprobiert - leider klappt das mit Ansible und den Python-Modulen im Virtual Environment noch nicht ganz so wie erhofft - Ich hoffe, dass ich auf das Konstrukt verzichten kann, wenn die Ubuntu-Entwickler sich mal dazu durchringen Python3.8 statt Python3.7 durch das normale python3-Paket installieren zu lassen - dann kommt der Debhelper für Python3 hoffentlich nicht mehr durcheinander, weil zwei unterschiedliche Python3-Versionen parallel installiert werden...

    Beim zweiten Aufruf blieb er auch hängen und der Rechner musste neu gestartet werden. --> siehe install2.txt

    Nur damit ich das besser rekonstruieren kann (bislang habe ich es nur in einer VM laufen lassen, wo man keine DRM-Treiber entladen muss): Du hast Ubuntu Focal Server (http://cdimage.ubuntu.com/ubun…nt/focal-server-amd64.iso) installiert und dann das Playbook laufen lassen?

    Beim dritten Aufruf gab es nur eine Warnung (heißt nun: kodi-eventclients-kodi-send) --> siehe install3.txt

    Ich habe noch keine KODI Pakete für focal gebaut, daher fällt er dann auf die Pakete aus den Ubuntu-Quellen zurück , die leider noch bei KODI 17 stecken, insofern ist das unschön, aber gewolltes Verhalten.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • So, ich habe das mal so abgeändert, dass auch die localhost-Verbindung, die von Ansible genutzt wird, das gleiche venv nutzt wie das Installer-Skript selbst. Außerdem habe ich die Installationsreihenfolge der über pip installierten Module so angepasst, dass bdist_wheel rechtzeitig verfügbar ist.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Nur damit ich das besser rekonstruieren kann (bislang habe ich es nur in einer VM laufen lassen, wo man keine DRM-Treiber entladen muss): Du hast Ubuntu Focal Server (http://cdimage.ubuntu.com/ubun…nt/focal-server-amd64.iso) installiert und dann das Playbook laufen lassen?

    Ja, Neuinstallation mit der aktuellen Server daily

  • neue Fehlermeldung:


    Code
    TASK [yavdr-common : add PPAs] ***************************************************************An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ModuleNotFoundError: No module named 'apt'failed: [localhost] (item=ppa:yavdr/experimental-main) => {"ansible_loop_var": "item", "changed": false, "item": "ppa:yavdr/experimental-main", "module_stderr": "Traceback (most recent call last):\n  File \"<stdin>\", line 102, in <module>\n  File \"<stdin>\", line 94, in _ansiballz_main\n  File \"<stdin>\", line 40, in invoke_module\n  File \"/usr/lib/python3.7/runpy.py\", line 205, in run_module\n    return _run_module_code(code, init_globals, run_name, mod_spec)\n  File \"/usr/lib/python3.7/runpy.py\", line 96, in _run_module_code\n    mod_name, mod_spec, pkg_name, script_name)\n  File \"/usr/lib/python3.7/runpy.py\", line 85, in _run_code\n    exec(code, run_globals)\n  File \"/tmp/ansible_apt_repository_payload_tfiemiie/ansible_apt_repository_payload.zip/ansible/modules/packaging/os/apt_repository.py\", line 564, in <module>\n  File \"/tmp/ansible_apt_repository_payload_tfiemiie/ansible_apt_repository_payload.zip/ansible/modules/packaging/os/apt_repository.py\", line 507, in main\n  File \"/tmp/ansible_apt_repository_payload_tfiemiie/ansible_apt_repository_payload.zip/ansible/modules/packaging/os/apt_repository.py\", line 149, in install_python_apt\nModuleNotFoundError: No module named 'apt'\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ModuleNotFoundError: No module named 'apt'failed: [localhost] (item=ppa:yavdr/experimental-vdr) => {"ansible_loop_var": "item", "changed": false, "item": "ppa:yavdr/experimental-vdr", "module_stderr": "Traceback (most recent calllast):\n  File \"<stdin>\", line 102, in <module>\n  File \"<stdin>\", line 94, in _ansiballz_main\n  File \"<stdin>\", line 40, in invoke_module\n  File \"/usr/lib/python3.7/runpy.py\", line 205, in run_module\n    return _run_module_code(code, init_globals, run_name, mod_spec)\n File \"/usr/lib/python3.7/runpy.py\", line 96, in _run_module_code\n    mod_name, mod_spec, pkg_name, script_name)\n  File \"/usr/lib/python3.7/runpy.py\", line 85, in _run_code\n    exec(code, run_globals)\n  File \"/tmp/ansible_apt_repository_payload_lv7shi8a/ansible_apt_repository_payload.zip/ansible/modules/packaging/os/apt_repository.py\", line 564, in <module>\n  File \"/tmp/ansible_apt_repository_payload_lv7shi8a/ansible_apt_repository_payload.zip/ansible/modules/packaging/os/apt_repository.py\", line 507, in main\n  File \"/tmp/ansible_apt_repository_payload_lv7shi8a/ansible_apt_repository_payload.zip/ansible/modules/packaging/os/apt_repository.py\", line 149, in install_python_apt\nModuleNotFoundError: No module named 'apt'\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1}
    PLAY RECAP ***********************************************************************************localhost                  : ok=2    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0
  • Was sagt denn apt policy python3-apt auf dem System? Falls du das Skript letztes WE mit einem Zwischenstand zum ersten Mal ausgeführt hast, der die System-Pakete nicht in das venv inkludiert, lösch mal versuchsweise das Verzeichnis /root/.ansible-venv und lass das Install-Skript dann erneut laufen.


    Wenn du ansible-playbook getrennt vom Install-Skript aufrufen willst, musst du das Ansible aus dem venv nehmen, das vom Install-Skript angelegt wird - also /root/.ansible-venv/bin/ansible-playbook

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Falls du das Skript letztes WE mit einem Zwischenstand zum ersten Mal ausgeführt hast, der die System-Pakete nicht in das venv inkludiert, lösch mal versuchsweise das Verzeichnis /root/.ansible-venv und lass das Install-Skript dann erneut laufen.

    Danke das hat geholfen.

Jetzt mitmachen!

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