[Announce] vdr-desklet-0.1.0

  • Hi there,


    ich hab jetzt mal nach einiger Zeit mein selbst gestricktes Desklet fertiggestellt.
    Für alle, die mit dem Begriff "Desklet" nix anfangen können:


    Das Projekt gDesklets hat es sich zur Aufgabe gemacht, die Grundlage für kleine Mini-Anwendungen zu bilden, die direkt auf dem Desktop liegen. Die ganze Geschichte ist XML- und Python- basierend (letztes über pygtk+gnome-python) und läuft auch unter anderen Window Managern (u.a. auch KDE).


    Ich habe nun mal eine solche Mini-Anwendung gebastelt, die unterem auch als Statusanzeige für den VDR dienen soll. Man kann sich also verschiedene Sachen wie etwa Lautstärke, freien Speicherplatz, Timer, Kanäle (+ Logos) und EPG-Einträge direkt auf dem Desktop anzeigen lassen.


    Die ganze Geschichte ist nur als ein kleines Eye-Candy zu verstehen, also etwaige User von VDR und gDesklets werden (hoffentlich) damit etwas anfangen können.
    Dies ist mit Sicherheit keine Must-Have-Applikation!


    Damit man sich mal ein Bild machen kann, liefere ich ein ebensolches gleich mal mit:
    [Blockierte Grafik: http://www.thunderbolt2000.de/images/articles/vdr-desklet/vdr-screenshot.jpg]


    Wer die Spielerei mal ausprobieren möchte, der halte sich bitte möglichst an die README bzw. die Installationshinweise auf meiner Seite.


    Für technisch Interessierte:
    der Sensor basiert auf einer Auswertung der vom VDR gelieferten SVDRP-Abfragen. Es ist möglich, jede diese Abfragen zu cachen, sodass auch nach Beenden des VDRs noch EPG und Statusinformationen erhalten bleiben (verbessert sowohl Performance beim Auslesen und reduziert Traffic).
    Wer den VDR und das Desklet auf dem selben Rechner laufen hat, kann die egp.data direkt auslesen lassen und spart so das LSTE.


    Im Moment ist es noch nötig, die svdrpsend.pl im Pfad zu haben, da meine integrierte Python-SVDRP-Lösung bei längeren Abfragen manchmal herumspinnt.


    Da alle paar Sekunden eine Abfrage über SVDRP gemacht wird, kann es zu etwas Traffic im LAN kommen. Für ein 10/100MBit-LAN sind etwa 60MB im Verlauf von 10 Stunden allerdings nix allzu schlimmes und für den Otto-Normal-User wohl auch locker zu überleben.


    Wer eventuell Lust bekommen hat das ganze mal auszuprobieren, der kann weitere Informationen und das Vdr-Desklet von dieser Seite beziehen.


    Viel Spaß damit!


    Grüsse,
    thunderbolt23

  • das kann man doch bestimmt auch über den TV-out der Graka auf ein kleines TFT bringen, oder spricht irgendwas dagegen?


    VDR1: ECS 945GCD-M, Atom 330, mod. Scenic 300 Geh., 16Gb CF, eHD, Tevii S470, 6.4" VGA TFT
    VDR2: Asus P5GC, C2D E4400 2GHz, mod. Scenic 300 Geh., 16Gb CF, eHD, TS SkyStarHD, PSOne TFT
    VDR3: Asus CUSL2, P3800, 128Mb Ram, TT3600, eHD
    SERVER: Tualatin 1133, 512Mb, 8 x ST 320Gb Gb RAID 5
    SERVER: Intel D945GSEJT, Chenbro ES30068

  • na ja, die README ist in erster Linie nur die erweiterte Form der paar Sätze von der Homepage... plus ein paar Entwickler-/Modderhinweise und eben auf englisch.


    Der Grund, weshalb ich mich auf die Doku beziehe ist der, dass die Installation von gDesklets manchmal nicht gerade trivial ist (es war für gnome-python-2.0.1 unter Gentoo noch ein extra Patch nötig). Desweiteren sind noch ein paar zusätzliche Sachen nötig (Sensoren aus anderen Paketen), was da alles drinnenstehen sollte.


    Für Gentooer sollte die Installation etwa so laufen:
    emerge python (falls python < 2.3.0)
    emerge gdesklets-core (evtl. unstable tree)


    [Edit]
    emerge desklet-clock
    [/Edit]


    nun testen, ob gdesklets überhaupt richtig geht:
    gdesklets &
    gdesklets /usr/share/gdesklets/Displays/Clock/osXclock.display


    wenn das geht, dann Display entfernen (rechts anklicken) und:


    emerge desklet-psisensors
    emerge desklet-psidisplays


    dann:
    gdesklets /usr/share/gdesklets/Displays/desklet-psidisplays/info.display


    wenn das funzt, sollte dann auch das Vdr-Desklet installierbar sein...

  • Ach so, bevor ich's vergesse:
    wenn sich das Display nicht hinzufügen läßt, unbedingt sicherstellen dass gdesklets im Vordergrund läuft. Also am besten in einem extra Terminal ausführen.


    Wenn in diesem Terminal im Log ein Fehler angezeigt wird, der sich auf os.getcwdu() bezieht, dann liegt das an der verwendeten Python-Version (< 2.3.0). Man sollte dann auf Python-2.3.{n} updaten, die abhängigen Pakete neu übersetzen (auch gdesklets!) und ein killall -9 python durchführen. Theoretisch sollte es dann klappen, notfalls mal den Fehler posten.

  • Hallo Falk,


    also ich hab das mal ausprobiert... Aber bei mir gibts nach dem emerge das Verzeichnis einfach nicht...


    vdrclient01 root # cd /usr/share/gdesklets/display/
    vdrclient01 display # dir
    ContainerTarget.py TargetArray.pyc TargetLabel.py
    ContainerTarget.pyc TargetBonoboControl.py TargetLabel.pyc
    DataTarget.py TargetBonoboControl.pyc TargetPlotter.py
    DataTarget.pyc TargetCanvas.py TargetPlotter.pyc


    Also statt Displays halt nur display.


    Jetzt muss ich aber dazusagen, das ich den gnome-Desktop net habe, sondern da halt immer noch bei KDE 3.2.3 bin. Also so einfach scheint es dann mit gentoo auch net zu sein :)


    Greets Olaf

    Ollie jetzt auch im Internet !!! ->> http://www.ohms.ws << VDR mit ASUS A7V8X-X, Athlon XP 2 Ghz, 512 MB DDR-RAM und gentoo 2008.0 Linux, ner Menge Platten (1 TB), 2 Brennern und Karten-Vollausstattung (1 X Nexus 4 MB Mod, 3 x Nova, 1 PVR 350) , TFT/Sony PSOne, Nvidia Graka und und und * Linux - wir geben ihrem Computer das Leben zurück *

  • Na Olaf, da wollen wir mal schauen.


    Mir ist gerade so, als hättest du einen Fehler in meiner heute früh zusammengeschusterten Mini-Anleitung gefunden. Wie mir gerade auffällt, wird ab Werk kein Display mitgeliefert.
    Mach also das folgende:


    emerge desklet-clock


    und dann die weiteren Schritte, beginnend mit:


    gdesklets /usr/share/gdesklets/Displays/Clock/osXclock.display


    Dann dürfte auch das Display-Verzeichnis da sein.


    Wenn du noch weitere Fehler findest, heraus damit!


    Grüße,
    FS

  • Hi,


    jetzt wirds merkwürdig. Also abgesehen davon, dass die ebuilds fast alle masked sind, also mit nem ACCEPT_KEYWORDS="~x86" gebuildet werden müssen, habe ich das Clock-Symbol auch tatsächlich auf den Desktop bekommen.


    Das habe ich dann aber gelöscht und das war wohl nicht wirklich gut.


    vdrclient01 root # gdesklets /usr/share/gdesklets/Displays/Clock/osXclock.display
    /usr/bin/gdesklets:65: DeprecationWarning: the 'argc' parameter is optional and deprecated
    client.set_restart_command(1, [sys.argv[0]])
    gDesklets 0.26.2
    Copyright (C) 2003, 2004 The gDesklets Team


    Es geht zwar, aber ich bekomme kein Symbol mehr auf den Bildschirm.


    Jetzt frag ich mich natürlich, wieso sowas im ersten Anlauf klappt und danach nicht mehr.


    Schon komisch.


    Greets Olaf

    Ollie jetzt auch im Internet !!! ->> http://www.ohms.ws << VDR mit ASUS A7V8X-X, Athlon XP 2 Ghz, 512 MB DDR-RAM und gentoo 2008.0 Linux, ner Menge Platten (1 TB), 2 Brennern und Karten-Vollausstattung (1 X Nexus 4 MB Mod, 3 x Nova, 1 PVR 350) , TFT/Sony PSOne, Nvidia Graka und und und * Linux - wir geben ihrem Computer das Leben zurück *

  • Die Meldung, die du gepostet hast, war nur eine Warnung, kein Fehler in dem Sinne. Ein Fehler äußert sich in der Regel mit einem Traceback und dem Stehenbleiben des desklets.


    Das nach dem Entfernen der Uhr nix angezeigt wird, ist ganz normal. Die Uhr war ja auch nur zum Test, dass gdesklets ordnungsgemäß funktioniert und du hast sie vom Desktop wieder entfernt.


    Damit du was angezeigt kriegst, musst du wieder ein desklet hinzufügen. Dies tust du, indem du in einem weiteren Terminal den Befehl:
    "gdesklets /pfad/zum/display/xy.display" eingibst. (Wichtig, den gdesklets-Daemon nicht beenden). Danach müsste das entsprechende Display auf dem Desktop erscheinen.


    Probier das Hinzufügen und Entfernen mal an ein paar der psidiplays aus (liegen in /usr/share/gdesklets/Displays/desklet-psidisplays/).


    Danach entpackst du das vdr-desklet irgendwo hin und führst die Install-Datei aus. Das Display-File kopierst du nach ~/.gdesklets/Displays (erstellen, falls nicht vorhanden).


    Nun fügst du das Display per "gdesklets ~/.gdesklets/Displays/vdr.display" hinzu und alles sollte funktionieren.

  • Ich schon wieder...


    also vom Prinzip her gehts jetzt wohl...aber ich bekomme leider überhaupt keine Angaben...


    Also Diskinhalt in %, Stunden frei, NO EPG available.


    Zur Verdeutlichung mal nen Bild dahintergehängt, wie es bei mir aussieht.


    Wassen jetzt schon wieder ? Liegts an Version 1.3.12, am Pfad selber oder was ist nu schon wieda schuld ?


    Man verzeihe mir meine Blödheit :) Genau wie die Tatsache, dass ich mich bis heute nicht von der grünen XP-Wiese trennen konnte.


    "Im Moment ist es noch nötig, die svdrpsend.pl im Pfad zu haben, da meine integrierte Python-SVDRP-Lösung bei längeren Abfragen manchmal herumspinnt."


    vdrclient01 root # locate svdrpsend.pl
    /usr/local/src/vdr-1.3.12/svdrpsend.pl


    Wahrscheinlich liegt die nicht "im Pfad", so das ich auch nix sehe.


    Greets Olaf

    Bilder

    Ollie jetzt auch im Internet !!! ->> http://www.ohms.ws << VDR mit ASUS A7V8X-X, Athlon XP 2 Ghz, 512 MB DDR-RAM und gentoo 2008.0 Linux, ner Menge Platten (1 TB), 2 Brennern und Karten-Vollausstattung (1 X Nexus 4 MB Mod, 3 x Nova, 1 PVR 350) , TFT/Sony PSOne, Nvidia Graka und und und * Linux - wir geben ihrem Computer das Leben zurück *

    2 Mal editiert, zuletzt von olafhenkel ()

  • Noch ein Nachtrag zum Schluss...


    Also, die eigene Fehleranalyse war man goldrichtig.


    vdrclient01 bin # ln -s /usr/local/src/VDR/svdrpsend.pl svdrpsend.pl
    vdrclient01 bin # dir svdrpsend.pl
    svdrpsend.pl


    Wahrscheinlich verstosse ich mit sowas gegen sämtliche Regeln...hehe. Aber irgendwie weiss ich bei gentoo net, wie man den VDR-Pfad da reinbuttert.


    Gentoo schreibt alles irgendwo in /etc/env.d und nach env-update erzeugt er dann wohl die /etc/ld.so.conf. Das ist da wieder anders als bei Susi.


    Müssten sich denn aber nicht beim Ändern des Kanals bzw. irgendeiner anderen Aktion die Daten aktualisieren ???


    Mit der Uhr klappts ja auch...


    Greets Olaf


    Noch nen Piccy

    Bilder

    Ollie jetzt auch im Internet !!! ->> http://www.ohms.ws << VDR mit ASUS A7V8X-X, Athlon XP 2 Ghz, 512 MB DDR-RAM und gentoo 2008.0 Linux, ner Menge Platten (1 TB), 2 Brennern und Karten-Vollausstattung (1 X Nexus 4 MB Mod, 3 x Nova, 1 PVR 350) , TFT/Sony PSOne, Nvidia Graka und und und * Linux - wir geben ihrem Computer das Leben zurück *

  • Zitat


    Wahrscheinlich verstosse ich mit sowas gegen sämtliche Regeln...hehe. Aber irgendwie weiss ich bei gentoo net, wie man den VDR-Pfad da reinbuttert.


    export PATH=$PATH:/usr/local/src/VDR/bin
    env-update


    oder dauerhaft
    in /etc/env.d in 00basic (PATH=/usr/bin:/usr/local/src/VDR/bin:blabla (ALSO DOPPELPUNKT ALS TRENNZEICHEN eintragen und env-update


    oder in
    /etc/profile


    oder in
    .bashrc


    oder in local.start


    oder in eines der anderen Startscripts


    oder elbe


    btw. der 2. Vorschlag ist imho der beste ;)


    bye


  • Also ich muss nochmal eine hoffentlich nicht zuuu blöde Frage stellen, denn ich bin jetzt auch so weit wie Olaf, dass ich das desklet zwar sehe, aber keine Daten angezeigt werden.
    Diese Datei svdrpsend.pl, brauche ich doch auf dem Rechner, auf dem das Desklet laufen soll. Auf meinem VDR-Rechner liegt die Datei nämlich standardmäßig schon in /usr/bin/svdrpsend.pl. Aber auf meinem Desktoprechner existiert diese Datei gar nicht?! Soll ich die dann einfach von meinem VDR-Rechner auf den Desktop-Rechner auch in /usr/bin kopieren?

  • Zitat

    Original von AnK
    Kann mich bitte mal jemand informieren wovon ihr da überhaupt redet? ?(


    Hi,


    ausserhalb von KDE/Gnome existiert noch mehr ;D


    E16/E17 => http://enlightenment.org/pages/main.html
    das sind auch die Entwickler der Graphic library "imlib" auf die z.B. text2skin / graphtft aufbauen...


    Andreas

  • Noch mal ne Anmerkung (mal wieder... ;))


    In dem desklet-psidisplays-Verzeichnis liegen noch ein paar Displays rum, mit denen man Rand-Displays einfügen kann (variable-border-{left|right}.display, border-{bottom|top}.display oder so). Dann wirkt die Abgrenzung etwas dezenter und nicht so "hart". Die Größe der vertikalen Displays läßt sich dabei über den Konfigurationsdialog regeln.


    A propos Konfiguration: im Konfigurationsdialog (rechtsklick+Display Konfiguration) kann man Schriften, Schriftfarben, Hintergrund, Rand und den ganzen anderen Kram noch anpassen, speziell die Steuerung des Caches, bzw. direkter EPG-Zugriff läßt sich damit regeln. Wer VDR und das Desklet auf dem selben Rechner nutzt, sollte "Direct EPG Access" aktivieren, da dann direkt auf die epg.data zugegriffen wird und nicht erst den Umweg über den VDR gehen muss (Cache kann deaktiviert sein). Für VDRs im Netzwerk eigentlich genau andersherum (Cache an, DirectEPG aus).



    Zu svdrpsend.pl:


    dass ein Perl-Skript für eine Python-Anwendung benötigt wird, finde ich selber sehr unästhetisch und nicht zu toll. Eine Funktion zum Öffnen des Sockets zum VDR und Abholen der Ausgabe ist schon vorhanden, er hat aber Schwierigkeiten, wenn die Ausgabe sehr groß ist (LSTE etwa). Ich werde mir den Code irgendwann mal wieder reinziehen, im Moment will ich aber erstmal noch ein paar weitere Features für das Desklet einbauen (u.a. Timer nach Zeit sortieren und Interaktivität einbauen; Stichwort: Fernbedienung).


    Na ja, soviel mal noch von meiner Seite...


    Grüsse,
    FS

Jetzt mitmachen!

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