[MacPorts] #16833: dbus autolaunch fails because of '/' characters in $DISPLAY
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY -----------------------------+---------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macports-tickets@lists.macosforge.org Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Keywords: | Port: dbus -----------------------------+---------------------------------------------- dbus autolaunch fails on OS X 10.5 Leopard because the DISPLAY environment variable contains '/' characters. (It may also fail on 10.4 but I haven't tested it.) dbus-launch uses the DISPLAY env var to form the filename for the session file, and then opens/creates that file with a call to fopen(). But because the filename now contains '/' characters, fopen() fails as it tries to create directories. I've made a patch for dbus-launch-x11.c which changes all '/' characters to '_' characters in the filename. This patch should be safe for 10.4 as well. I've also made a Portfile patch. I've filed the bug and patch upstream at https://bugs.freedesktop.org/show_bug.cgi?id=18013 but thought that we should include it in macports until it gets applied upstream. This bug is related to one of the problems with gnucash that is being reported in bug #16755 -- Ticket URL: <http://trac.macports.org/ticket/16833> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: assigned Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Changes (by macsforever2000@macports.org): * owner: macports-tickets@lists.macosforge.org => macsforever2000@macports.org * status: new => assigned -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Changes (by macsforever2000@macports.org): * status: assigned => closed * resolution: => fixed Comment: Committed revision r40785. Thanks, this allows gnucash to launch properly for me now! -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by ryanjohns@gmail.com): This does not fix gnucash's launch issues for me. I installed dbus @1.2.4_2, rebooted to ensure the new version was running, and when I run gnucash I get the same error box from gnucash with the following message in the terminal... (gnucash:426): qof-CRITICAL **: qof_object_shutdown: assertion `object_is_initialized == TRUE' failed I was previously using dbus @1.2.4_1 with "eval `/opt/local/bin/dbus- launch --sh-syntax`" added to the gnucash launch script and it was working fine. The new version of dbus (1.2.4_2) does not work for me with or without the eval line in the gnucash launch script. I am on 10.5.5 intel with the latest version of macports. Please let me know if you need any more information or have any suggestions. -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by macsforever2000@macports.org): Replying to [comment:3 ryanjohns@…]:
This does not fix gnucash's launch issues for me.
What version of gconf and gnucash do you have installed? -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by ryanjohns@gmail.com): Replying to [comment:5 macsforever2000@…]:
What version of gconf and gnucash do you have installed?
The following ports are currently installed: gnucash @2.2.7_2+without_hbci+without_ofx+without_quotes (active) gconf @2.24.0_0 (active) -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by macsforever2000@macports.org): I have the same versions and everything works fine here. The only difference between our setups is that I have straight gnucash installed without the variants you have listed. Maybe you can try installing gnucash that way? -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by ryanjohns@gmail.com): I'll look into it more when I have some time but it works fine with the dbus-launch workaround for now. I can't remember exactly what I added to the gnucash launch script so could you please post the top 10 or so lines from that script so I can compare? The script is in /opt/local/bin/gnucash assuming macports was installed to the default location. Thanks -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by macsforever2000@macports.org): Here's my untouched gnucash script: {{{ #!/bin/sh PATH="/opt/local/bin:${PATH}" export PATH GUILE_WARN_DEPRECATED="no" export GUILE_WARN_DEPRECATED GNC_MODULE_PATH="/opt/local/lib/gnucash:${GNC_MODULE_PATH}" EXTRA_PATH="${EXTRA_PATH}:/opt/local/share/gnucash/guile-modules" EXTRA_PATH="${EXTRA_PATH}:/opt/local/share/gnucash/scm" GUILE_LOAD_PATH="${EXTRA_PATH}:${GUILE_LOAD_PATH}" EXTRA_LIBS="${GNC_MODULE_PATH}" EXTRA_LIBS="${EXTRA_LIBS}:/opt/local/lib" EXTRA_LIBS="${EXTRA_LIBS}:/opt/local/lib/gnucash" LD_LIBRARY_PATH="${EXTRA_LIBS}:${LD_LIBRARY_PATH}" DYLD_LIBRARY_PATH="/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/Image IO.framework/Versions/A/Resources:${EXTRA_LIBS}:${DYLD_LIBRARY_PATH}" export GNC_MODULE_PATH export GUILE_LOAD_PATH export LD_LIBRARY_PATH export DYLD_LIBRARY_PATH exec gnucash-bin "$@" }}} If you still have issues with gnucash, you should open a new ticket because this ticket really is aimed at fixing dbus. Thanks! -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by ryanjohns@gmail.com): This may still be related to dbus. I activated dbus 1.2.4_2 and reverted the gnucash launch script back to the vanilla version. If I run 'gnucash' from the command line I get the error dialog from gnucash about not being able to find default values. If I try 'dbus-launch gnucash' *or* 'dbus- launch --sh-syntax' I get the following error... Failed to start message bus: In D-Bus address, character '+' should have been escaped EOF in dbus-launch reading address from bus daemon ... which leads me to believe that there is in fact something wrong with dbus since I get the same error with no mention of gnucash. My DISPLAY env variable is '/tmp/launch-0ukbnG/:0'. Thanks for your continued help. -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by ryanjohns@gmail.com): I have it working now. I just uninstalled all versions of dbus then reinstalled dbus 1.2.4_2 and it works now. So I don't really know what actually happened but now I don't care. Thanks for your help macsforever2000. -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:11> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@dpj.sent.com | Owner: macsforever2000@macports.org Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by macsforever2000@macports.org): Glad you got it working! -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:12> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@… | Owner: macsforever2000@… Type: defect | Status: closed Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by mta@…):
This may still be related to dbus. I activated dbus 1.2.4_2 and reverted the gnucash launch script back to the vanilla version. If I run 'gnucash' from the command line I get the error dialog from gnucash about not being able to find default values. If I try 'dbus-launch gnucash' *or* 'dbus-launch --sh-syntax' I get the following error...
Failed to start message bus: In D-Bus address, character '+' should have been escaped EOF in dbus-launch reading address from bus daemon
This message occurs if you build dbus as yourself instead of using sudo (you must use sudo to install it, but not necessarily to build it depending on how you've built macports itself). The config file for dbus gets the value for DBUS_TEST_SOCKET_DIR from TMPDIR if it is defined. On Leopard TMPDIR has a value like /var/folders/XO/XOAhu-l42RWX5U+kNPkZqU+++TI/-Tmp-/ This doesn't work because dbus doesn't like the "+" characters in it. Besides it really should be using a global temp directory for its sockets rather than your private one. This is not a problem if you use sudo to build dbus since sudo doesn't pass TMPDIR to the command it executes. I've fixed this and attached a Portfile with a patch to use /tmp for its sockets. This patch also adds a +verbose variant that enables more debugging output (under control of the DBUS_VERBOSE environment variable). -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:13> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@… | Owner: macsforever2000@… Type: defect | Status: reopened Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Changes (by macsforever2000@…): * status: closed => reopened * resolution: fixed => -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:14> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Changes (by macsforever2000@…): * owner: macsforever2000@… => macports-tickets@… * status: reopened => new Comment: I'll try to look at this soon. But in the meantime, I'm un-assigning it from myself in case someone else can look at this. -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:15> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by jonas.baehr@…): Please try the dbus port in #17950, it uses launchd the storing the session bus address instead of X11. -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:17> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Port Bugs Component: ports | Version: 1.6.0 Resolution: | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Comment(by illogic-al@…): The port has been committed. Please update dbus and report any prolems. -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:18> MacPorts <http://www.macports.org/> Ports system for Mac OS
#16833: dbus autolaunch fails because of '/' characters in $DISPLAY ------------------------------+--------------------------------------------- Reporter: mp@… | Owner: macports-tickets@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.6.0 Resolution: fixed | Keywords: Port: dbus | ------------------------------+--------------------------------------------- Changes (by nox@…): * status: new => closed * resolution: => fixed Comment: fixed 5 months ago -- Ticket URL: <http://trac.macports.org/ticket/16833#comment:22> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts