graphlcd (base, vdr-plugin) touchcol branch (archiv)

  • Wenn das so funktioniert könnte das drinbleiben, dann könnten Distributionen ne Reihe Displays vorkonfigurieren.


    Noch netter wäre es, wenn man den Eintrag per svdrpsend ändern könnte ;). Erstmal auf einen dummy setzen und wenn udev das Display erkannt hat dann den Treiber ändern.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • bleibt aber trotzdem beides eine halbe geschichte:
    sowohl das vordefinieren von vielen displays (wird trotzdem immer nur fuer ein paar matchen) als auch das udev-zeug (usb-only).


    Was aber immerhin 100% meiner Displays abdecken würde ;). Habe aber auch nur 3.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • [serdisp]
    some=settings


    Ist aber irgendwie überhaupt nicht INI-like. Die Konfiguration sollte immer duch die KEY=VALUE Zuweisungen innerhalb von Sektionen (das es die oft auch ausserhalt gibt halte ich schon für ne Unsitte) erfolgen. Die Sektionen [NAME] werden üblicherweise dazu benutzt um die Konfiguration in benamte Bereiche aufzuteilen. Und über den Sektionsnamen den Treiber zu wählen... na ich weiss nicht ;)


    Aber das ist auch wieder so ein Thema bei dem 3 Leute 5 unterschiedliche Meinungen haben ;)


    cu

  • Danke für die Hinweise, ich habe die Pakete korrigiert. Die Fonts werden jetzt alle installiert und die Gruppe im udev rules file habe ich angepasst. Ich bin mit der Gruppe lp nicht so glücklich, weil mir die Gruppe vdr besser gefällt, aber da das display ja eventuell auch ohne vdr benutzt wird, habe ich es jetzt mal so übernommen.

    Das mit "lp" war ja auch nur die schnelle Lösung. User "vdr" wird ja beim Installieren von vdr-plugin-graphlcd zu dieser Gruppe hinzugefügt. Sauberer wäre wohl das Anlegen einer neuen Gruppe wie "graphlcd" oder "libusb" zu der "vdr" dann hinzugefügt wird. Btw: wäre es nicht sinnvoll der udev-rule auch einen Namen wie "XX-graphlcd-usb.rules" oder "XX-libusb.rules" zu geben, da es ja wohl für alle USB-Displays gilt, die über libusb angesprochen werden?
    Und wenn ich schon nerve: in debian/links vom vdr-plugin-graphlcd können die ersten beiden Links auf Vera*.ttf raus, wenn Du das ganze graphlcd/fonts Verzeichnis kopierst.


    Gruß
    superelchi

    #1: yaVDR 0.5 - Asus A5IONT-I, 4 GB Ram - 750 GB 2,5" HD - DD Cine S2 V6 - Silverstone Sugo SG06 - Pearl DPF - Hama MCE Remote
    #2: yaVDR 0.5 - Intel DH67BL, 4 GB Ram - Asus GT610 - 40 GB SSD - 500 GB 2,5" HD - DD Cine S2 V5.5 - Silverstone Milo ML03 - Pearl DPF - Hama MCE Remote

  • dh_installudev handelt das installieren von udev Regeln, wäre evtl. sinniger das zu nutzen (einfach unter debian/libglcddrivers1.udev speichern)? Weil da wird dann automatisch in postinst/preinst irgendwas cleveres dafür eingefügt.


    Und anstatt generell alle USB Geräte freizugeben wäre evtl. sowas sinnig?
    --
    ATTR{idVendor}=="152a", ATTR{idProduct}=="8380", MODE="0666"
    --
    halt für jedes unterstützte Display eine Regel.



    BTW: Die Fonts, der VDR nutzt fontconfig um die Fonts alleine zu finden, das sieht garnicht so kompleziert aus. IMHO wäre es schöner wenn graphlcd-base das auch so machen würde? Man kann dann ja weiterhin Fonts in /usr/local/share/fonts selber installieren. Aber die Fonts die von Packeten kommen werden halt so automatisch unterstützt ohne das man da verlinken muss oder kopieren.


    BTW2: Das graphlcd-base Packet vergisst genfont mit aufzunehmen. Jedenfalls in 0.1.9+git20110812-1yavdr1~natty (die neue Version hatte ich noch nicht angeschaut).


    cu

  • mal einschreiten, da mir das sonst ein wenig zu schlampig/unsauber wird:


    fuer die v. graphlcd-unterstuetzten usb-displays/module zb. ein
    /etc/udev/rules.d/99-graphlcd.rules


    und da sind dann nur jene displays drin (dzt. ein display (== der pictureframe) wenn ich das richtig im kopf habe), die von graphlcd unterstuetzt werden. und sonst nix.
    fuer serdisplib sollte eine eigene rule (zb. 99-serdisplib.rules) erstellt werden.
    beides werde ich in zukunft bei den jew. bibliotheken/tars sammeln und inkludieren.
    gruppe: 'uucp'. und sonst nix. jeder benutzer, der so ein display verwenden koennen will, muss zu dieser gruppe hinzugefuegt werden.


    vorteil: kommt ein display/module hinzu, kann die entsprechende udev-rule beim update einfach ueberschrieben werden ohne ruecksicht auf verluste.
    und ad gruppe 'uucp': ich weiss, dass hier manche nur an ihre jew. displays denken und nur vdr im visier haben: aber es gibt auch noch andere verwendungsgebiete. und da - wie es scheint - sich fuer die displays nunmal 'uucp' eingebuergert hat (was weiss ich wieso), bleibts auch dabei.


    und distro-spezifische diskussionen bitte in den entsprechenden foren. thx.


    EDIT: gruppe=uucp und umask natuerlich 0660. alles andere (0666) ist schlampig.
    EDIT2: korrektur /etc/udev/rules/ -> /etc/udev/rules.d/

  • fuer die v. graphlcd-unterstuetzten usb-displays/module zb. ein
    /etc/udev/rules/99-graphlcd.rules


    Das ist ja Distributionspezifisch (also gehört hier wohl auch nicht in den Thread). Unter Debian/Ubunto wäre z.B. 60-libglcddrivers1.rules der default wenn ich das recht verstehe.



    Und was hällst du von der fontconfig Sache? Der Code sollte sich im Prinzip vom VDR übernehmen lassen.



    EDIT: gruppe=uucp und umask natuerlich 0660. alles andere (0666) ist schlampig.


    0666 war ja nur als Notlösung gedacht weil ich nicht wusste das es schon ne Gruppenvereinbarung für Displays gibt.


    cu

  • udev + seine rules ist nix distro-spezifisches (bzw. sollte es nicht sein).
    das 99 zeigt nur die reihenfolge an (ganz hinten in der schlange ...) und wird von mir einstimmig festgelegt :)
    und die lib-versionsnummer hat da auch nix verloren ...


    wie gesagt: ich moechte das eigentl. fixteil v. graphlcd-base werden lassen.


    und sollte es mal eine ueberlappung mit serdisplib geben in den udev-rules, waere es auch egal, da gruppe ueberall == 'uucp'. udev ists (dank der reihung) auch egal.


    fontconfig: vielleicht mal. aber derzeit beschraenke ich mich auf ein paar wenige fonts, die fix 'mitgeliefert' werden bei graphlcd-base. fontconfig ist 'todo'.


    EDIT: es muss natuerlich korrekt '/etc/udev/rules.d/' heissen


    Zitat

    0666 war ja nur als Notlösung gedacht weil ich nicht wusste das es schon ne Gruppenvereinbarung für Displays gibt.

    dann ists ja gut, dass ich mich eingemischt habe :)

  • Übrigens ist es technisch möglich, das Plugin beim anstöpseln des Displays automatisch umzukonfigurieren auch ohne den VDR neu zu starten. Beim Boot funktioniert das dann natürlich sowieso. Ich habe das schon mal ausprobiert. Ich lade das graphlcd-Plugin mit Hilfe des Proxy-Plugins. Sobald udev das Display erkennt wird das graphlcd-Plugin mit neuer Konfiguration geladen. Die Frage ist, ist das überhaupt sinnvoll und wenn ja, was machen, wenn mehrere Displays angestöpselt werden.

    Das hat mit keine Ruhe gelassen. Ich hab mich heute nachmittag mal hingesetzt und dazu was zusammengestrickt. Zwei neue SVDRP Befehle: CONNECT und DISCONNECT. Damit kann man das Display über SVDRP wechseln. Ist noch nicht ganz sauber - aber kann das mal jemand mit mehreren Display testen? Bei mir gehts mit dem Pearl-Display und simlcd prima.


    Gruß
    superelchi

    Dateien

    #1: yaVDR 0.5 - Asus A5IONT-I, 4 GB Ram - 750 GB 2,5" HD - DD Cine S2 V6 - Silverstone Sugo SG06 - Pearl DPF - Hama MCE Remote
    #2: yaVDR 0.5 - Intel DH67BL, 4 GB Ram - Asus GT610 - 40 GB SSD - 500 GB 2,5" HD - DD Cine S2 V5.5 - Silverstone Milo ML03 - Pearl DPF - Hama MCE Remote

  • Achtung: Udev-Files, die von Paketen installiert werden, landen üblicherweise unter


    /lib/udev/rules.d


    Der Bereich /etc/udev/rules.d ist für Benutzer, bzw. Admins.


    So kann ein Benutzer z.B. ein Rule-File von /lib/udev/rules.d nach /etc/udev/rules.d kopieren und dort ändern. Solange es den gleichen Dateinamen hat, überschreibt es das Rule-File unter /lib/udev/rules.d.


    Siehe auch "man udev".


    Andere Frage: Wie ist die Planung für die Zukunft? Gibt es irgendwann wieder ein einziges graphlcd oder bleibt es bei verschiedenen Branches, die voneinander weglaufen?

  • diese udev-rules sollten eigentlich final sein. das ist das, was graphlcd-base unterstuetzt. da sollte man dann eigentlich die finger davon lassen. wenn aenderungen notwendig sind (fehler, weitere displays): dann kommts rein in das graphlcd-base paket und soll in letzter instanz das bisher gueltige ueberschreiben.
    darum wuerde ich /etc/ der /lib/-variante hier vorziehen.


    branches: tja. gute frage. ich habe eigenwillig den touchcol-branch erstellt, weil alles andere sowieso tot zu sein scheint (auch randy scheint keine zeit mehr zu haben) und ich auch nicht wirklich antwort auf rueckfragen bekommen habe.
    dh. leben scheint nur in diesem einen branch zu sein. ich muss aber auch sagen, dass ich mich um alle andere versionen (graphlcd 0.1.x, graphlcd 0.2.x) nicht kuemmere.


    zu diesem branch: es sind erst ein paar displaytreiber offiziell verifiziert, dass sie korrekt mit den neuen intern verwendeten 32bit-cBitmaps arbeiten (habe das bei fast allen treibern blind portiert). leider kommen da keine rueckmeldungen (siehe http://www.linuxtv.org/vdrwiki…/Graphlcd-plugin/touchcol -> 2.1.1 displays/drivers currently supported).
    wenn dieser branch dann mal halbwegs prod-level hat, kann man ihn ja zum offiziellen 'graphlcd-base' ernennen. (selbiges gilt freilich auch fuer vdr-plugin-graphlcd).
    wer auch immer das dann schlussendlich entscheidet ...

  • Das mit "lp" war ja auch nur die schnelle Lösung. User "vdr" wird ja beim Installieren von vdr-plugin-graphlcd zu dieser Gruppe hinzugefügt. Sauberer wäre wohl das Anlegen einer neuen Gruppe wie "graphlcd" oder "libusb" zu der "vdr" dann hinzugefügt wird. Btw: wäre es nicht sinnvoll der udev-rule auch einen Namen wie "XX-graphlcd-usb.rules" oder "XX-libusb.rules" zu geben, da es ja wohl für alle USB-Displays gilt, die über libusb angesprochen werden?
    Und wenn ich schon nerve: in debian/links vom vdr-plugin-graphlcd können die ersten beiden Links auf Vera*.ttf raus, wenn Du das ganze graphlcd/fonts Verzeichnis kopierst.


    Hast schon Recht. Mache ich mal bei Gelegenheit. Wenn es dir wichtig genug ist, dann mach bitte einen Bugreport, dann gerät es nicht so leicht in Vergessenheit.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Die graphlcd-base udev Regel hat unter "AX206DPF-based picture frames" fälschlicherweise die Vender/Produkt ID vom SDC Megtron Display


    cu

  • ich wollt mich dann doch mal an das kleine Pearl machen und hab gesehen das es neue Pakete gibt.


    wenn ichs richtig verstanden hab benötige ich neben dem gehackten Display natürlich das Plugin, und eben das graphlcd-base, nur da gibts kein deb zu... stell ich mich blöd an oder fehlt da was?


    Danke, Christian


    https://launchpad.net/%7Eyavdr…82/+listing-archive-extra

    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



  • wenn ichs richtig verstanden hab benötige ich neben dem gehackten Display natürlich das Plugin, und eben das graphlcd-base, nur da gibts kein deb zu... stell ich mich blöd an oder fehlt da was?


    graphlcd-base IST diese drei Libs (libglcddrivers1, libglcdgraphics2,libglcdskin1). Da fehlt nix.


    cu

Jetzt mitmachen!

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