[HOWTO] VDR unter CoreElec - Automatische Installation für alle Amlogic-Devices

  • Wie bereits in meinem anderen Thread angekündigt, habe ich ein erstes Skript geschrieben, das den VDR unter einer CoreElec-Umgebung installiert.

    Das Skript hängt diesem Thread an und ich werde es - sobald ich ein wenig Zeit habe - auf Github hinterlegen und den Link hier posten.


    Es heißt install.sh.gz: install.sh.zip


    Die Installation läuft so ab:


    1. CoreElec auf einem unterstützen Device installieren und konfigurieren. Dazu zählt auch die Installation der DVB-Treiber, da VDR die später benötigt und die Konfiguration des Netzwerkes, da das später auch in der chroot-Umgebung genutzt wird. Bitte auch den ssh-Zugang (mit sicherem Kennwort!) einrichten.

    2. install.sh.zip runterladen und entpacken. Das Entpacken kann auch später unter CoreElec erledigt werden.

    3. install.sh auf das CoreElec-Device in das Verzeichnis /storage kopieren.

    4. Per Terminal (ssh) mit CoreElec verbinden und install.sh ausführbar machen (chmod 775 install.sh)

    5. Den Installer so aufrufen: ./install.sh


    Das CoreElec-Device benötigt eine Netzwerk-Verbindung.


    Der Installer führt folgende Schritte aus:


    - Download des Ubuntu Minimal-Images von Hardkernel

    - Entpacken des Rootfs aus diesem Image

    - Update des Images und Installation aller fehlenden Pakete

    - Anlegen des Verzeichnisses /home/user

    - Auswahl der korrekten libMali.so je nach Architektur

    - Download von VDR, softhdodroid und externalplayer

    - Übersetzen von VDR und den Plugins sowie Installation

    - Generieren aller erforderlichen Skripte

    - Implementierung von FLIRC oder wahlweise LIRC oder Tastatur

    - Enablen aller Scripte

    - Setzen der Zeitzone für VDR


    Während der Installation muss noch ein paar Mal RETURN gedrückt werden (bitte die Default-Einstellungen der Pakete akzeptieren). Das werde ich zu einem späteren Zeitpunkt noch ändern. Am Ende muss die Zeitzone konfiguriert werden.


    Es gibt noch eine TODO-Liste, u.a.


    - Die Datei on.sh im user-Verzeichnis nutzt noch ein festes FLIRC-Event. Das muss noch automatisiert werden.

    - Der Installer ist noch quick and dirty und nicht kommentiert

    - KODI add-on

    - Für verschiedene Devices müssen die Skripte noch leicht angepasst werden (FLIRC, LIRC, Tastatur)

    - ...


    VDR befindet sich im Verzeichnis /home/user/vdr. Im user-Verzeichnis liegen auch viele Skripte, z.B. runvdr, die nach belieben erweitert werden können. Die KODI-Skripte liegen unter UBUNTU/vdr oder in /storage/.config/system.d.

    Der Installer ist noch quick and dirty. Nachdem ich ihn auf Github gelegt habe, werde ich ihn kommentieren und schöner machen. Vielleicht mache ich irgendwann ein KODI-Addon daraus, das alles grafisch unter KODI erledigt.


    Da das Skript unter Root läuft, bitte vorsichtig damit umgehen und vorher ein Backup wichtiger Daten machen. Ich übernehme keine Garantie, dass nicht noch irgendwo ein Fehler steckt.


    Wer die chroot-Umgebung unter einer Bash nutzen will kann nach der Installation so vorgehen:

    Code
    ssh root@ip-coreelec
    ./ubuntu.sh
    cd UBUNTU
    chroot . /bin/bash


    Den Befehl ./ubuntu.sh kann man sich sparen, wenn der VDR bereits läuft. Dann ist schon alles korrekt eingebunden.

    Das Netzwerk wird automatisch konfiguriert und kann auch in KODI geändert werden. Die chroot-Umgebung übernimmt das dann.


    Viel Spaß beim Testen,

    Rudi

  • uii, noch gar nicht gesehen beta super Arbeit!

    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



  • Moin beta,

    ich habe auf der Tanix TX3 das Problem, dass es beim Ausschalten ohne gesetzten Timer sehr lange dauert, bis die Box runterfährt. Auf der Konsole wird dabei ein Fehler in vdrshutdown.sh bemängelt. Und zwar bringt die Zeile

    Code
    sudo bash -c "echo $NextTimer > /sys/class/rtc/rtc0/wakealarm"

    dann die Fehlermeldung "echo: write error: Invalid argument". Der Grund ist, dass ohne gesetzten Timer dann wegen

    Code
    NextTimer=$(($1 - 600 ))  # 10 minutes earlier

    der Wert, der geschrieben werden soll, -600 beträgt.

    Man müsste da also noch eine Prüfung einfügen, dass das Schreiben der Variable NextTimer nur dann ausgeführt wird, wenn der wert größer als 0 ist. Ich bin mit der bash nicht so gut, aber wahrscheinlich hast Du dafür ganz fix eine Lösung. Warum das auf dem N2 kein Problem macht - keine Ahnung. Vielleicht ist es eine Besonderheit des meson rtc.

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

  • so geht es: (/usr/local/bin/vdrshutdown.sh)


    Bash
    #!/bin/bash
    NextTimer=$(($1 - 600 ))  # 10 minutes earlier
    sudo bash -c "echo 0 > /sys/class/rtc/rtc0/wakealarm"
    if test $NextTimer -gt "0"; then
      sudo bash -c "echo $NextTimer > /sys/class/rtc/rtc0/wakealarm"
    fi
    killall loopershutdown

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

  • Moin Beta,


    aufgrund einer Änderung in den CE-Sourcen funktioniert das Einschalten per Fernbedienung nicht mehr, wenn zuvor nicht 1x Kodi gestartet wurde. Dafür gibt es eine Lösung, siehe hier. Vielleicht magst Du das noch in Dein Script aufnehmen? Prinzipiell könnte man den Befehl wohl auch in der runvdr eintragen, aber dann würde er ja bei jedem Neustart von vdr über das Einstellungsmenü ausgeführt werden. Es reicht aber, das 1x nach dem Booten zu machen. Deshalb ist wie von mir vorgeschlagen ein systemd-Service m.E. die beste Lösung.

    Zabrimus wird es auch in VDR*Elec aufnehmen, aber es gibt ja auch Leute, die für eine chroot-Lösung das originale CE-image verwenden.

    Gruß

    Dr. Seltsam

    VDR1: ACT-620, Asus P8B75-M LX, Intel Core i3-3240, 4 GB DDR3 RAM 1600 MHz, passive Geforce GT1030 von MSI, Sandisk 2TB SSD, 2xWinTV DualHD, Atric-IR-Einschalter. SW: Xubuntu 20.04 auf 64GB Sandisk SSD.

    VDR2: Odroid N2+ mit CoreELEC und Ubuntu in chroot, WinTV DualHD

    VDR3: Tanix TX3 mit CoreELEC und Ubuntu in chroot, WinTV DualHD

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!