VDR-Philosophie: Warum dieser steinige Weg beim Bauen aus den Quellen?

  • Hallo zusammen,

    ich traue mich heute mal mit einer Frage aus der Deckung, die mich als langjährigen Bastler schon länger beschäftigt.

    Kurz zu meinem Hintergrund: Ich bin ein absoluter Verfechter davon, meine Systeme selbst aus den Quellen zu bauen. Ob mein aktuelles Setup mit TVHeadend (direkt von GitHub kompiliert) oder mein zweites großes Projekt – eine CNC-Fräsmaschine auf Basis von LinuxCNC (ebenfalls komplett aus dem Source aufgebaut) – ich liebe es einfach, die volle Kontrolle über den Code zu haben.

    Trotzdem bleibe ich beim VDR immer wieder an einem Punkt hängen, der mich grübeln lässt. Ich finde den VDR an sich fantastisch: Die Haptik, die Reaktionsgeschwindigkeit und dieses "echte" Receiver-Gefühl sind bis heute ungeschlagen.

    Aber jetzt kommt mein "Warum":

    Wenn man den VDR-Core heute pur aus den Sourcen baut, landet man in einer regelrechten Patch-Odysee. Man sucht sich Core-Patches aus Forenthreads zusammen, flickt Plugins manuell für Dinge wie Kodi oder MPV ein und stellt fest, dass viele wichtige Entwicklungen nie den Weg in den offiziellen Core finden. Man verbringt gefühlt mehr Zeit mit dem Mergen und Suchen als mit allem anderen.

    Bevor der (sicher gut gemeinte) Rat kommt: "Nimm doch eine fertige Distribution wie yaVDR oder MLD" – genau das ist nicht mein Ziel. Ich baue gerne selbst, um das System zu verstehen.

    Deshalb meine ganz ehrliche Frage an die Community:

    Wieso tut man sich dieses "Patch-Gefriemel" heute noch an? Was ist für euch der Grund, warum der Core so konservativ bleibt und man diese Hürden beim Selbstbauen beibehält? Ist es die pure Stabilität eines "Never change a running system" oder gibt es architektonische Gründe, die ich übersehe?

    Ich frage das aus echtem Interesse an der Philosophie, weil ich den VDR eigentlich gerne wieder zu meinem Hauptprojekt machen würde, aber an dieser speziellen Hürde immer wieder hängen bleibe.

    Beste Grüße,

    Andre

    Edited once, last by cocobrother (May 3, 2026 at 9:07 AM).

  • 99% der Plugins brauchen auch keine Patches. Und bei Plugins, die einen VDR Patch voraussetzen, wäre hier und da sicher auch die bessere Option gewesen im Voraus mit Klaus zu reden nach dem Motto "Ich würde gerne XY umsetzen. Wie könnte eine Erweiterung der Plugin-Schnittstelle dafür aussehen?"

    Was Plugin Patches angeht wurde mal https://github.com/vdr-projects/ angelegt was allen nicht mehr aktiv gepflegten Plugins eine Heimat geben sollte. Heute würde ich das wohl nicht mehr auf GitHub anlegen, aber das ist ein anderes Thema. Wenn Plugin Patches dann dennoch nicht da ankommen ist das ausgesprochen schade, aber zumindest ich hab's auch langsam aufgegeben.

  • Also der "Core-VDR" läuft bei mir ohne jegliche Patches ;-).

    Ich hatte vor Jahren auch mal den einen oder anderen Patch haben wollen - sei es für Plugins, sei es aber auch für den VDR selbst.
    Die sind immer weniger geworden, entweder weil es mittlerweile im VDR/Plugin integriert war, oder weil ich das doch nicht mehr haben musste.
    Der einzige Patch, den ich gerne integriert hätte, wäre der multiple_digit_menu.patch, der alle Menüpunkte > 9 mit numeriert, aber auch da habe ich mich mittlerweile dran gewöhnt, dass die halt keine Nummern haben.

    Plugins, die Patches *brauchen*, habe ich überhaupt keine mehr - das letzte war graphtftng.

    Ansonsten habe ich mir eine Routine gebaut, die immer alles passend aus allen gits holt, baut und installiert, d.h. für eine Aktualisierung brauche ich nur zwei Scripten.

    Insofern habe ich keinerlei Zusammensuchen mehr notwendig.

    VDR zwei drei
    • VDR 01 (Server): VDR 2.8.2 - 4 x TT Budget S2-3200
      Plugins: [channellists - control - epgsearch - live - markad - streamdev-server - tvscraper]
    • VDR 02 (Client): VDR 2.8.1 - 1 x TT Premium S2-6400 (HDMI an TV), 1 x softhddevice (HDMI an TV); TV Grundig 40 VLE 8160 SL; TFT-Display Origen AE 16T
      Plugins: [channellists - control - dvbhddevice - epgsync - graphtftng - iptv - osdteletext - skinnopacity - softhddevice - svdrpservice - tvscraper]
  • Patch-Odysee

    Zeig bitte mal eine Liste deiner Patches.
    Vielleicht verstehe ich dann, warum das für dich so ein Aufwand ist.

    Bei mir ist das sehr überschaubar, MainMenuHooks.patch, vdr-2.8.1-fix-rec-menu-color-keys.diff und noch ein paar Anpassungen für meine spezifischen Bedürfnisse.

  • "Ich habe die Ruhe des Nachmittags mal genutzt, um über eure Antworten nachzudenken – danke dafür. Aber wenn ich ehrlich bin: Was hier oft als 'überschaubarer Aufwand' oder 'Gewöhnung' beschrieben wird, ist für mich das Kernproblem.

    Ihr fragt nach meiner Patch-Liste, als wäre die bloße Anzahl der Beweis für den Aufwand. Aber das ist ein Trugschluss. Es geht nicht um 2 oder 10 Patches. Es geht um die Software-Archäologie, die man im Jahr 2026 betreiben muss, um diese überhaupt zu finden, zu bewerten und gegen einen starren Core zu prüfen.

    Es wird hier als völlig normal 'hingenommen', dass man:

    1. Foren-Threads nach der 'echten' letzten Version eines Patches durchwühlt.

    2. Manuell prüft, ob Patch A die Zeilen für Patch B zerschießt.

    3. Sich damit arrangiert, dass Basisfunktionen im Core fehlen, weil man sie ja 'irgendwie ranbasteln' kann.

    Man kann mich gerne 'bequem' nennen, aber in der modernen IT heißt das Effizienz. Warum sollte ich Lebenszeit in die manuelle Pflege einer Infrastruktur stecken, die in anderen Projekten seit 15 Jahren durch moderne APIs, Pull Requests und zentrale Repositories (GitHub/GitLab) gelöst ist?

    Ein Blick über den Tellerrand zu LinuxCNC zeigt das Dilemma: Ein Projekt mit extremen Echtzeit-Anforderungen und einer ebenso alten Codebasis. Aber dort schneidet man gerade radikal 'alte Zöpfe' ab (https://github.com/LinuxCNC/linuxcnc/issues/3878). Warum? Nicht um Nutzer zu ärgern, sondern um als Gesamtprojekt wartbar und attraktiv für neue Leute zu bleiben.

    Beim VDR habe ich das Gefühl, wir pflegen stolz lauter kleine 'Insel-Lösungen'. Das funktioniert für den Einzelnen im Moment gut, führt aber dazu, dass selbst versierte Köpfe wie M-Reimer irgendwann aufgeben, weil das Patch-Mikado zu mühsam wird.

    Stabilität ist das höchste Gut des VDR, aber sie darf nicht zur Unbeweglichkeit werden. Wenn der Einstieg in ein Projekt nur noch über das Studium von jahrealten Foren-Beiträgen gelingt, isoliert sich das System von der Zukunft. Mein Ziel ist es nicht, zu basteln, um den Status Quo mühsam zu erhalten – ich möchte meine Energie lieber nutzen, um auf einer modernen Basis etwas Neues zu erschaffen."

    Edited once, last by cocobrother (May 3, 2026 at 9:08 AM).

  • der vdr-core läuft doch ohne Problem ohne Patches.

    https://www.minidvblinux.de/

    1x OctopusNet mit 8x DVB-C
    1x Raspberry 4 MLD 6.5 SATIP (softhddevice-drm-gles )

    1x Raspberry 5 MLD 6.5 SATIP (softhddevice-drm-gles )

    1x RockPi 4 MLD 6.5 SATIP (softhddevice-drm-gles )

    1x Raspberry 3 mit SATIP MLD 6.5

    1x Raspberry 2 mit STAIP MLD 6.5

    1x Raspberry 1 (staubt gerade so vor sich hin) ;)
    1x ODROID N2+ mit SATIP MLD 6.5

    1x ODROID N2 L mit SATIP MLD 6.5

    1x Zotac CI327 MLD 6.5 SATIP (softhddevice)

    1x NUC14MNK-B2 (RNUC14MNK1500002) (vaapivideo)

  • Ganz so schlimm, wie du es beschreibst, ist es auch nicht mehr. Vor 10 Jahren hätte ich dir aus voller Überzeugung zugestimmt, aber heute findet sich praktisch alles hier:

    Für den Core-VDR habe ich mittlerweile nur noch eine handvoll (überwiegend eigener) Patches in Gebrauch, weil Klaus das Meiste dankenswerterweise inzwischen in den Core-VDR übernommen hat. Von den "offiziellen" Patches ist der wohl wichtigste Patch, wie nobanzai schon angemerkt hat, aus Komfortgründen dieser:

    • The content cannot be displayed because you do not have authorisation to view this content.

    Und damit Plugins die ersten vier Einträge im Hauptmenü austauschen können, vielleicht noch dieser:

    • The content cannot be displayed because you do not have authorisation to view this content.

    Damit kann man, wie ich finde, ganz gut leben. Und dank Git sind auch Aktualisierung und Bauen von Core-VDR und Plugins kein großes Problem mehr… ;)

    Hardware: Antec NSK2480, Asus P8B75-M LX, Intel Core i5-3570T @ 2.30 GHz, 4 GB RAM, NVIDIA GT610, TT-Premium S2-6400, 128 GB SSD, 14 TB HDD, Pioneer BDR-207EBK
    Software: Ubuntu 22.04 LTS mit Kernel 6.8 und VDR 2.8.2 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, femon, live, markad, mlist, osdteletext, recsearch, remote, satip, screenshot, skinnopacity, streamdev, systeminfo, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

    Edited 2 times, last by SHofmann (May 2, 2026 at 5:58 PM).

  • "Genau das ist der Punkt, M-Reimer! 'Vor Jahren im Gespräch' beschreibt das Dilemma leider perfekt.

    Es unterstreicht eigentlich genau meine Kritik: Es ist ja ein Konsens da, dass diese Funktionen (wie eine strukturierte Menü-Config) notwendig sind, um das System zeitgemäß zu halten. Aber solange solche essenziellen Dinge nicht den Weg in den Standard finden, bleibt die Last beim Nutzer hängen. Man muss sich dann eben doch wieder durch Foren und Repos arbeiten, um den Standard-Core auf einen Stand zu bringen, der sich nach 2026 anfühlt.

    Wenn wir über Jahre bei der Diskussion bleiben, anstatt die 'Zöpfe' durch eine moderne Lösung im Core zu ersetzen, entsteht genau diese Unbeweglichkeit. In der Zeit, in der über die Notwendigkeit solcher Änderungen gesprochen wird, haben andere Projekte ganze Architekturen modernisiert, um zukunftsfähig zu bleiben.

    Es wäre doch für alle ein Gewinn – vom langjährigen Experten bis zum neuen User –, wenn wir von 'war mal im Gespräch' zu 'ist jetzt Standard' kommen würden. Das würde die Energie weg von der bloßen Verwaltung des Status Quo hin zu echter Innovation lenken. Mein Ziel ist ja nicht Kritik um der Kritik willen, sondern der Wunsch nach einer Basis, die mit der Zeit geht."

    Edited once, last by cocobrother (May 3, 2026 at 9:09 AM).

  • Aber ist das denn wirklich alles so schlimm? Der VDR an sich läuft super stabil, es gibt eine Vielzahl von Ausgabe-Plugins für eine Vielfalt an Hardware (X86, ARM, ...), die unterstützt wird und viele Entwickler, die das auf dem Stand halten - vielen Dank dafür. Es gibt sicherlich den ein oder anderen Patch, den man nachjustieren muss, aber alles in allem fühlt sich das für mich sehr geschmeidig an. Und dieses Forum hat aus meiner Sicht ebenfalls einen großen Anteil daran, dass Probleme gelöst werden können und man sich gegenseitig hilft. Hard ware lebt, und Software genau so. Daher mein Dank an alle, die hier aktiv beitragen. Es wird immer jemanden geben, dem das zu mühsam ist, aber die dauerhaft perfekte Konstellation gibt es eben nicht, es sei den, man schafft sie sich so, wie man so braucht. Das kann mit ein wenig Aufwand verbunden sein, aber genau das funktioniert seit vielen Jahren aus meiner Sicht erstaunlich gut. Für alle Entwickler hier (und ich schließe Klaus mit ein), ist das ein - wie ich finde verdammt schönes - Hobby. Für mich ist das Gewinn genug.

  • Ich bin vollkommen bei SHofmann .

    Wichtigste "Neuerungen" waren der Umstieg von VDR Core auf git und https://vdr-projects.github.io/. Damit komme ich wunderbar zurecht. Und es ist halt so, dass Klaus nachwievor die Hand über dem Core hat und entscheidet, was rein wandert und was nicht. Das ist bisher gut gegangen und hat sich m.E. bewährt. Und viele sinnvolle Sachen wurden ja auch mit aufgenommen.

    Die Diskussion zur Übernahme des mainmenuhooks Patch oder was ähnlichem müsste man halt mal wieder aufnehmen, oder ist das ausdiskutiert?

    cocobrother Würde es dir was ausmachen, die Schriftgröße in deinen Posts auf Standard zu stellen?

  • Die Diskussion zur Übernahme des mainmenuhooks Patch oder was ähnlichem müsste man halt mal wieder aufnehmen, oder ist das ausdiskutiert?

    Ich bin diesbezüglich mit Klaus im Dialog. Menüeinträge mit zwei Ziffern möchte er (leider noch immer) nicht haben.

    Zudem arbeiten wir (aufgrund anderer Aktivitäten derzeit eher sparsam) an einem Ansatz, der den Main-Menu-Hooks-Patch mittelfristig überflüssig machen könnte.

    Hardware: Antec NSK2480, Asus P8B75-M LX, Intel Core i5-3570T @ 2.30 GHz, 4 GB RAM, NVIDIA GT610, TT-Premium S2-6400, 128 GB SSD, 14 TB HDD, Pioneer BDR-207EBK
    Software: Ubuntu 22.04 LTS mit Kernel 6.8 und VDR 2.8.2 (mit offiziellen und eigenen Patches)
    Plugins: devstatus, dvbhddevice, dvd, dvdswitch, epgsearch, femon, live, markad, mlist, osdteletext, recsearch, remote, satip, screenshot, skinnopacity, streamdev, systeminfo, xineliboutput
    Addons: VDR Convert 0.1.0 (angepasst)

  • Danke für die Einblicke, SHofmann. Das mit der Schriftgröße habe ich hoffentlich jetzt korrigiert – war keine Absicht, mein Fehler!

    Es ist eigentlich genau das, was ich gehofft hatte zu hören: Dass sich im Hintergrund doch Gedanken gemacht werden, wie man den Core modernisieren und von den ewigen Patches wegkommen kann. Dass Klaus bei den zwei Ziffern noch zögert, ist zwar schade, aber es ist ja schon viel wert, dass das Thema überhaupt wieder im Dialog ist.

    Ich wollte mit meinem 'Rundumschlag' auch niemanden persönlich angehen. Mir ging es einfach darum, dass wir dieses tolle Projekt fit für die Zukunft halten und die Einstiegshürden nicht unnötig hoch lassen.

    Ich verziehe mich jetzt erst mal wieder an meine Fräse und baue da weiter. Bin gespannt, was sich beim VDR in nächster Zeit tut. Danke an alle für die sachliche Diskussion!

Participate now!

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