GTK warning in console bij openen hellanzb (in console only)

Pagina: 1
Acties:

  • Crugster
  • Registratie: Mei 2005
  • Laatst online: 26-12-2025
Hallo mede tweakers,

Als ik hellanzb v0.13 vanuit een terminal van de Gnome desktop (Debian Lenny) omgeving open start deze vlotjes op zonder problemen (in de terminal zie ik de output die ik verwacht). Echter, als ik Hellanzb start op een console (ctrl-alt-F1 en inloggen met hetzelfde account) geeft Hellanzb de volgende GTK-Waarschuwing :( :
quote: Hellanzb
/var/lib/python-support/python2.5/gtk-2.0/gtk/__init__.py:72: GtkWarning: could not open display
warnings.warn(str(e), _gtk.Warning
Het stopt het programma welliswaar niet, tenminste daar ga ik vannuit omdat het een waarschuwing is en geen error, maar ik wil toch graag begrijpen wat er staat om ervan te leren (ik ben geen volledige linux newbie meer, maar verre van een guru) en het hopenlijk uiteindelijk oplossen.

Ik dacht eerst dat het misschien een rechten issue was (of dat Hellanzb nog draaide), maar dat kan niet want als root had ik hetzelfde probleem en als normal-user binnen X dus ook geen probleem (hella draaide niet meer), dus dat is het niet, denk ik. Een harware issue is het ook niet gezien het ook optreed op andere machines van mij/anderen. Vreemd is echter dat ik in Debian Lenny+ Hellanzbv0.13 en Ubuntu v8.x + Hellanzb v0.13 de waarschuwing verschijnt, maar niet op Debian Etch+Hellanzb v0.10. Misschien een Hellanzb v0.13 issue (of wellicht Debian, al kan ik me dat niet voorstellen)?

Mijn gok is dat Hellanzb een "window" wil openen, gebruikmakend van de GTK library (als ik het goed begrijp is het een verzameling code die het schrijven van visualisaties in grafische shells vergemakkelijkt/op zich neemt), maar dat dus niet kan omdat ik het run in een console in plaats van in X... Echter dat is slechts een vermoeden. Ik ben hier al een week mee bezig en ben ten einde raad, ook op het forum van 'linuxquestions.org' en 'debian user forums' om raad gevraagd, maar daar geen reactie gehad. Ook avonden googlen gaven mij geen uitsluitsel (snap ook nog steeds niet wat de waarschuwing inhoud) en hoop dus op wijze woorden hier op Tweakers.net op de volgende 2 vragen:

Wat betekent de waarschuwing precies?
Hoe zorg ik ervoor dat deze waarschuwing niet meer nodig is?


Alvast bedankt voor het meedenken!

P.S. Antwoorden als: "Draai het dan gewoon in X" heb ik natuurlijk niets aan :P

If you have five dollars and Chuck Norris has five dollars, Chuck Norris has more money than you have.


  • Kees
  • Registratie: Juni 1999
  • Laatst online: 27-01 18:27

Kees

Serveradmin / BOFH / DoC
Draai het gewoon in X, want hij wil een window (display) openen, en die heb je op ctrl-alt-f1 niet.

De waarschuwing is precies wat het zegt; het kan geen display openen, dus zul je een display-variable moeten zetten op zo'n manier dat er ergens een X-server is die het window dan kan weergeven. Waarom zou je het uberhaubt in de console willen weergeven als het geen cli programma is? (anders zou hij geen window willen openen). Mischien is er een optie om hem als cli te draaien, dan moet je die gebruiken.

Ik neem aan dat het programma wel stopt, of zie je het terug in 'ps auxfww' ?

"Een serveradmin, voluit een serveradministrator, is dan weer een slavenbeheerder oftewel een slavendrijver" - Rataplan


  • Osiris
  • Registratie: Januari 2000
  • Niet online
Ik zie hier in mijn Gentoo-ebuild dat HellaNZB een optie heeft voor 'libnotify'. Libnotify heeft GTK+ als dependency, dus dat lijkt me iets met X en 't openen van een X-display te maken hebben.

Ik weet niet of je het zelf gecompiled hebt en ik weet niet of je libnotify d'r uit kunt slopen of wat dan ook, maar ik denk dat je 't in die richting moet zoeken.
Kees schreef op donderdag 11 juni 2009 @ 22:19:
Waarom zou je het uberhaubt in de console willen weergeven als het geen cli programma is? (anders zou hij geen window willen openen). Mischien is er een optie om hem als cli te draaien, dan moet je die gebruiken.
Dat is 't dus wel ;) 't Is een daemon die een map checkt op nieuwe NZB's en die vervolgens begint te downloaden, met een web-interface als UI. Verder gGeen enkele GTK-achtige GUI of iets in die richting by default. :) Die zijn er overigens wel te vinden, aangezien het wel met een client/server-systeem werkt, maar dat zijn 3rd-party clients. Oh, wacht, die webinterface waar ik 't over heb is dat ook en is ook niet standaard, hehe.

[ Voor 53% gewijzigd door Osiris op 11-06-2009 22:32 ]


  • Crugster
  • Registratie: Mei 2005
  • Laatst online: 26-12-2025
Kees en Osiris bedankt voor de suggesties! I O+ this forum!
Kees schreef op donderdag 11 juni 2009 @ 22:19:
Draai het gewoon in X, want hij wil een window (display) openen, en die heb je op ctrl-alt-f1 niet.
Tsjah, (zie mijn PS :P).
Kees schreef op donderdag 11 juni 2009 @ 22:19:
De waarschuwing is precies wat het zegt; het kan geen display openen, dus zul je een display-variable moeten zetten op zo'n manier dat er ergens een X-server is die het window dan kan weergeven. Waarom zou je het uberhaubt in de console willen weergeven als het geen cli programma is? (anders zou hij geen window willen openen). Mischien is er een optie om hem als cli te draaien, dan moet je die gebruiken.
Precies zoals Osiris ook al zei het is een CLI programma.
Osiris schreef op donderdag 11 juni 2009 @ 22:28:
Dat is 't dus wel ;) 't Is een daemon die een map checkt op nieuwe NZB's en die vervolgens begint te downloaden, met een web-interface als UI. Verder gGeen enkele GTK-achtige GUI of iets in die richting by default. :) Die zijn er overigens wel te vinden, aangezien het wel met een client/server-systeem werkt, maar dat zijn 3rd-party clients. Oh, wacht, die webinterface waar ik 't over heb is dat ook en is ook niet standaard, hehe.
De default interface laat overigens via ANSI wat balkjes zien in de CLI. De reden dat ik het perse in CLI wil draaien is dat het op mijn slug geinstalleerd moet worden (low-power, ARM machine die X niet trekt) als daemon. Overigens opent hij momenteel in X (op de andere pc's) dus ook geen window als ik het programma start, het is juist van oudsher een newsgroep reader die draait in CLI (al zijn er ook vele grafische frontends die je niet hoeft te installeren) en dat heb ik dan ook altijd gedaan (draaien in CLI zonder grafische frontend of dus inderdaad hooguit een php-webinterface). Na herinstallatie-distro upgrade ging het mis dus ik vermoed of een Lenney of Hellanzbv0.13 gerelateerd "probleem" (of nieuwe feature die ik nog niet begrijp).
Kees schreef op donderdag 11 juni 2009 @ 22:19:
Ik neem aan dat het programma wel stopt, of zie je het terug in 'ps auxfww' misschien dat ik daar iets uit kan halen?
Nope, het programma draait gewoon zoals verwacht verder. Maar wat is 'ps auxfww', misschien dat ik daar iets wijzer van wordt als ik ernaar kan kijken?
Osiris schreef op donderdag 11 juni 2009 @ 22:28:
Ik zie hier in mijn Gentoo-ebuild dat HellaNZB een optie heeft voor 'libnotify'. Libnotify heeft GTK+ als dependency, dus dat lijkt me iets met X en 't openen van een X-display te maken hebben.
Hmm jah, dus mijn vermoeden klopt dus waarschijnlijk (misschien is dat iets van de nieuwe versie)
Osiris schreef op donderdag 11 juni 2009 @ 22:28:
Ik weet niet of je het zelf gecompiled hebt en ik weet niet of je libnotify d'r uit kunt slopen of wat dan ook, maar ik denk dat je 't in die richting moet zoeken.
Nope, apt-get isntall hellanzb (in Lenny)... zelf compileren vind ik met mijn kennis niveau al tricky (laat staan zaken uit de source slopen, al kan ik dat natuurlijk wel proberen als ik wat uurtjes heb). Ik heb wel de configfile natuurlijk doorgespit en daar zag ik zo 1-2-3 geen verwijzing naar GTK ofzo staan. Maar misschien eens zoeken naar libnotify o.i.d.

In the mean time... iemand die exact weet wat hier mis gaat? Of andere suggesties? het is alemaal welkom!

[ Voor 42% gewijzigd door Crugster op 11-06-2009 22:55 ]

If you have five dollars and Chuck Norris has five dollars, Chuck Norris has more money than you have.


  • Osiris
  • Registratie: Januari 2000
  • Niet online
Heb je misschien een 'Hellanzb.LIBNOTIFY_NOTIFY' in je configuratie-file staan? En dan vooral op True :+ En als dat zo is, zet em es op False :P

[ Voor 29% gewijzigd door Osiris op 11-06-2009 23:27 ]


  • Crugster
  • Registratie: Mei 2005
  • Laatst online: 26-12-2025
Osiris schreef op donderdag 11 juni 2009 @ 23:26:
Heb je misschien een 'Hellanzb.LIBNOTIFY_NOTIFY' in je configuratie-file staan? En dan vooral op True :+ En als dat zo is, zet em es op False :P
*cries* ik hoopte dat je het had gevonden, maar dat stond al op false :(

If you have five dollars and Chuck Norris has five dollars, Chuck Norris has more money than you have.


Verwijderd

Waarom heb ik dit probleem niet met Debian Lenny op mijn download servertje.
code:
1
2
3
4
5
6
7
8
9
10
11
stacheldraht@happy-star:~$ cat /proc/version 
Linux version 2.6.26-2-686 (Debian 2.6.26-15lenny3) (dannf@debian.org) (gcc version 4.1.3 20080704 (prerelease) (Debian 4.1.2-25)) #1 SMP Thu May 28 15:39:35 UTC 2009
stacheldraht@happy-star:~$ 

stacheldraht@happy-star:~$ hellanzb --version
0.13
stacheldraht@happy-star:~$ hellanzb

hellanzb v0.13 (config = /home/stacheldraht/.hellanzb/hellanzb.conf, C yenc module)
(changeme) Opening 8 connections...
hellanzb - Now monitoring queue...


Volgens mij heb je iets raars in je hellanzb config file staan ;)

  • Osiris
  • Registratie: Januari 2000
  • Niet online
Het probleem zit in Log.py:


Python: /usr/lib/python2.5/site-packages/Hellanzb/Log.py
16
17
18
19
try:
    import pynotify
except ImportError:
    pynotify = None


In Core.py zie je netjes een config-check staan:

Python: /usr/lib/python2.5/site-packages/Hellanzb/Core.py
348
349
350
351
352
353
354
355
356
357
358
359
    if not hasattr(Hellanzb, 'LIBNOTIFY_NOTIFY'):
        Hellanzb.LIBNOTIFY_NOTIFY = False
    elif Hellanzb.LIBNOTIFY_NOTIFY:
        try:
            import pynotify
        except ImportError:
            error('Please install notify-python or disable Hellanzb.LIBNOTIFY_NOTIFY')
            sys.exit(1)

        if not pynotify.init('hellanzb'):
            error('Cannot initialize libnotify')
            sys.exit(1)


Die zit dus blijkbaar niet in Log.py.

Fout ligt dus bij HellaNZB. :)

  • Crugster
  • Registratie: Mei 2005
  • Laatst online: 26-12-2025
Bedankt beiden voor jullie inzichten!
Verwijderd schreef op maandag 15 juni 2009 @ 00:06:
Waarom heb ik dit probleem niet met Debian Lenny op mijn download servertje.
...
Volgens mij heb je iets raars in je hellanzb config file staan ;)
Hmmm, bij een default config file doet hij hetzelfde en een vriend van mij die het probeerde kreeg dezelfde waarschuwing. Draaide je het op je console (dus niet in een terminal van X)? Zo ja dan snap ik het al helemaal niet meer... :?
Osiris schreef op maandag 15 juni 2009 @ 00:59:
Het probleem zit in Log.py:
...

De zit dus blijkbaar niet in Log.py.

Fout ligt dus bij HellaNZB. :)
Het lijkt erop dat je weet waarover je het hebt Osiris, maar door mijn onwetendheid kan ik het niet volgen. Als ik het goed begrijp wil 'Core.py' iets doen wat 'Log.py' niet faciliteerd. Echter, ik zie niet in wat precies, ik zie ook de link niet (direct) met de foutmelding in mijn innitiele post, en begrijp ook niet waarom dat dan niet optreed in een terminal (welke draait in Gnome/X)?

Ik hoop dat je (of iemand anders) het me wil uitleggen :)
Alvast bedankt!

If you have five dollars and Chuck Norris has five dollars, Chuck Norris has more money than you have.


Verwijderd

Crugster schreef op maandag 15 juni 2009 @ 19:38:

Hmmm, bij een default config file doet hij hetzelfde en een vriend van mij die het probeerde kreeg dezelfde waarschuwing. Draaide je het op je console (dus niet in een terminal van X)? Zo ja dan snap ik het al helemaal niet meer... :?
Op mijn servertje is Xorg niet geinstalleerd.

  • Osiris
  • Registratie: Januari 2000
  • Niet online
Crugster schreef op maandag 15 juni 2009 @ 19:38:
[...]

Het lijkt erop dat je weet waarover je het hebt Osiris, maar door mijn onwetendheid kan ik het niet volgen. Als ik het goed begrijp wil 'Core.py' iets doen wat 'Log.py' niet faciliteerd. Echter, ik zie niet in wat precies, ik zie ook de link niet (direct) met de foutmelding in mijn innitiele post, en begrijp ook niet waarom dat dan niet optreed in een terminal (welke draait in Gnome/X)?

Ik hoop dat je (of iemand anders) het me wil uitleggen :)
Alvast bedankt!
Zowel in Core.py als in Log.py zit een stukje code wat jouw waarschuwing kan opleveren. Dit komt door het stukje import pynotify. Dat is namelijk de 'verbinding' tussen Python (waar HellaNZB in geschreven is) en libnotify, wat weer een programma is wat het mogelijk maakt voor programma's om onderling events en andere informatie uit te wisselen via een gemeenschappelijk systeem. Wat exact de relatie met DBus is weet ik niet, maar daar heeft het geloof ik ook weer iets mee te maken.

Punt is, via via zorgt dat pynotify er voor dat ie iets GTK's wil doen. En in Core.py zit er netjes een check ala "Hm, even kijken of de gebruiker uberhaupt wel dat notification-systeem wil gebruiken. Zo nee, dan hoef ik 't niet eens te proberen!" en die check zit dus niet in Log.py. Dus daar probeert ie pynotify te laden. En dat lukt wel, want (blijkbaar) staat het geinstalleerd. Alleen hoewel hij dus wel geinstalleerd is, zal ie niet werken. Maar dat weet HellaNZB niet.

  • Crugster
  • Registratie: Mei 2005
  • Laatst online: 26-12-2025
Verwijderd schreef op maandag 15 juni 2009 @ 20:22:
Op mijn servertje is Xorg niet geinstalleerd.
Misschien is dat em juist?

Trouwens de foutmelding kreeg ik niet op een half-geupgrade Etch->Lenny (sommige packages waren "held back" maar "officieel" was ik dus over op Lenny+Hellanzbv1.13). Als ik die vervolgens TOCH upgrade met wat moeite, kreeg ik de foutmelding dus wel weer. Misschien komt het alleen voor by python v2.5? Of misschien dus alleen als je X / een window-manager hebt geinstalleerd. Ik kan nog steeds niet precies achterhalen wanneer het probleem zich wel/niet voordoet.
Osiris schreef op maandag 15 juni 2009 @ 20:37:
Zowel in Core.py als in Log.py zit een stukje code wat jouw waarschuwing kan opleveren. [...] check zit dus niet in Log.py. Dus daar probeert ie pynotify te laden. En dat lukt wel, want (blijkbaar) staat het geinstalleerd. Alleen hoewel hij dus wel geinstalleerd is, zal ie niet werken. Maar dat weet HellaNZB niet.
Oke, ik vat em :) en heb daarom de if/elif check zelf in de file Log.py toegevoegd (al stond hij bij mij op een iets andere plek ivm. een system-wide install door root, denk ik):


code:
1
2
3
4
5
6
7
    if not hasattr(Hellanzb, 'LIBNOTIFY_NOTIFY'):
        Hellanzb.LIBNOTIFY_NOTIFY = False
    elif Hellanzb.LIBNOTIFY_NOTIFY:
        try:
            import pynotify
        except ImportError:
            pynotify = None


Ik heb dus gewoon de constructie overgenomen van Core.py --> de foutmelding is inderdaad verdwenen (nu maar hopen dat ik iets anders niet vernaggelt heb).
Zou ik dit moeten melden bij de developers, denk je?


*Doet Jack van Gelder na* :+ "Cruster vraagt..." ... "Osiris maakt oog contact" ... "Osiris ziet crugster, maakt een beweging" ... "Crugster LOOPT MEE!" ... "OSIRIS GEEFT DE VOORZET" ... "EN... JAAAAHAHAAAAAAH!! CRUGSTER KOPT HEM IN! HET IS 1-0 voor de Tweakers, luister dan naar dat stadion..." etc. ;) O+

If you have five dollars and Chuck Norris has five dollars, Chuck Norris has more money than you have.


  • Osiris
  • Registratie: Januari 2000
  • Niet online
Crugster schreef op maandag 15 juni 2009 @ 23:44:
[...]

Zou ik dit moeten melden bij de developers, denk je?
Je zou een patch kunnen submitten. :) En misschien krijg je dan wel te horen dat 't een feature is, misschien niet :+
Pagina: 1