Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 440240 - dev-util/meld-1.6.1 fails to start: Failed to connect to socket /tmp/dbus-dzxnczzq6d: Connection refused
Summary: dev-util/meld-1.6.1 fails to start: Failed to connect to socket /tmp/dbus-dzx...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-10-30 09:58 UTC by Juergen Rose
Modified: 2013-01-20 19:03 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Juergen Rose 2012-10-30 09:58:52 UTC
'meld' fails to start with:

root@caiman:/root(6)# meld

(meld:13343): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
Failed to connect to socket /tmp/dbus-dzxnczzq6d: Connection refused
Traceback (most recent call last):
  File "/usr/bin/meld", line 138, in <module>
    main()
  File "/usr/bin/meld", line 129, in main
    from meld.meldapp import app
  File "/usr/lib64/meld/meld/meldapp.py", line 199, in <module>
    app = MeldApp()
  File "/usr/lib64/meld/meld/meldapp.py", line 113, in __init__
    self.prefs = preferences.MeldPreferences()
  File "/usr/lib64/meld/meld/preferences.py", line 265, in __init__
    super(MeldPreferences, self).__init__("/apps/meld", self.defaults)
  File "/usr/lib64/meld/meld/util/prefs.py", line 93, in __init__
    self._gconf.add_dir(rootkey, gconf.CLIENT_PRELOAD_NONE)
glib.GError: No D-BUS daemon running


Trying to restart dbus does not help:

root@caiman:/root(7)# /etc/init.d/dbus status
 * status: started
root@caiman:/root(8)# /etc/init.d/dbus restart
 * Stopping cupsd ...                                                                                                                                                                         [ ok ]
 * Stopping ConsoleKit daemon ...                                                                                                                                                             [ ok ]
 * Stopping D-BUS system messagebus ...                                                                                                                                                       [ ok ]
 * Starting D-BUS system messagebus ...                                                                                                                                                       [ ok ]
root@caiman:/root(9)#  * Starting cupsd ...
 * Starting ConsoleKit daemon ...                                                                                                                                                             [ ok ]

root@caiman:/root(9)# meld

(meld:13519): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
Failed to connect to socket /tmp/dbus-dzxnczzq6d: Connection refused
Traceback (most recent call last):
  File "/usr/bin/meld", line 138, in <module>
    main()
  File "/usr/bin/meld", line 129, in main
    from meld.meldapp import app
  File "/usr/lib64/meld/meld/meldapp.py", line 199, in <module>
    app = MeldApp()
  File "/usr/lib64/meld/meld/meldapp.py", line 113, in __init__
    self.prefs = preferences.MeldPreferences()
  File "/usr/lib64/meld/meld/preferences.py", line 265, in __init__
    super(MeldPreferences, self).__init__("/apps/meld", self.defaults)
  File "/usr/lib64/meld/meld/util/prefs.py", line 93, in __init__
    self._gconf.add_dir(rootkey, gconf.CLIENT_PRELOAD_NONE)
glib.GError: No D-BUS daemon running



root@caiman:/root(13)# mount | grep /tmp
/dev/mapper/vg0-tmp on /tmp type reiserfs (rw,noatime,user_xattr)
/dev/mapper/vg0-vtmp on /var/tmp type reiserfs (rw,noatime,user_xattr)


root@caiman:/root(15)# echo "bla" > /tmp/bla.txt
root@caiman:/root(16)# cat /tmp/bla.txt
bla



root@caiman:/root(17)# emerge --info =meld-1.6.1
Portage 2.1.11.31 (default/linux/amd64/10.0, gcc-4.6.3, glibc-2.15-r3, 3.6.4-gentoo x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-3.6.4-gentoo-x86_64-AMD_Phenom-tm-_II_X6_1090T_Processor-with-gentoo-2.2
Timestamp of tree: Tue, 30 Oct 2012 03:00:01 +0000
ld GNU ld (GNU Binutils) 2.23
app-shells/bash:          4.2_p37
dev-java/java-config:     2.1.12
dev-lang/python:          2.7.3-r2, 3.2.3-r1
dev-util/cmake:           2.8.9-r1
dev-util/pkgconfig:       0.27.1
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11.2
sys-apps/sandbox:         2.6
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.6, 1.12.4
sys-devel/binutils:       2.23
sys-devel/gcc:            4.6.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.6 (virtual/os-headers)
sys-libs/glibc:           2.15-r3
Repositories: gentoo x11 bicatali science dilfridge java-overlay sunrise lisp x-portage x-cpan x-g-octave
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA PUEL Intel-SDP dlj-1.1 skype-eula skype-4.0.0.7-copyright googleearth AdobeFlash-10.3 cadsoft Oracle-BCLA-JavaSE MakeMKV-EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=amdfam10 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=amdfam10 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LC_ALL="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de fr ru"
MAKEOPTS="-j7"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/x11 /var/lib/layman/bicatali /var/lib/layman/science /var/lib/layman/dilfridge /var/lib/layman/java-overlay /var/lib/layman/sunrise /var/lib/layman/lisp /usr/local/portage /var/lib/cpan /var/lib/g-octave"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext 64bit R X Xaw3d a52 aac acl acpi admin afs alsa amd64 ao apache2 apng applet archive arpack asf aspell assistant atlas audacious audiofile automap automount bash-completion berkdb blas blast bluetooth bluray boo boost bzip2 cairo cdda cddb cdf cdio cdparanoia cdr cgi chm cli consolekit corba cracklib crypt css cups curl cxx daap db dbi dbm dbus declarative designer devhelp device-mapper dga dia dirac djvu doc dot dri ds2490 ds9097 ds9097u dts dv dvb dvd dvdr dvi dynamicplugin eds egl elf emacs emboss emf encode epiphany evo examples exif expat extensions extra extras faac faad ffmpeg fftw firefox fits flac fltk fontconfig foomaticdb fortran fortran95 fpx fts3 fuse g3dvl galago gcj gd gdal gdbm gdu gedit geoip geolocation geos gfortran gif gimp git glade glib glpk gml gmp gnome gnome-keyring gnome-print gnuplot gnutls gold gphoto2 gpm grammar graphics graphtft graphviz grass gsl gsm gstreamer gtk gtk3 gudev guile harness hddtemp hdf hdf5 hdri html http httpd hvm hwdb iconv icq icu id3 id3tag ide imagemagick imap inotify ipod ipv6 irda ithreads jabber jadetex java java6 jbig john jpeg jpeg2k kate kdepim kdrive kerberos keymap kpathsea kqemu kvm ladspa lame lapack latex lcms ldap lensfun libffi libkms libnotify libsamplerate live lm_sensors lua lzo mad mail maildir mapnik math matroska media-library mercurial mikmod mkl mmx mmxext mng modules mono motif mozilla mp3 mp4 mpeg mpi mplayer mtp mudflap multilib musepack musicbrainz mysql mysqli nautilus ncurses netcdf netpbm network networking networkmanager nfs nls nntp nptl nsplugin ntfs ntp numpy obex objc ocaml ocr octave odbc ofa ogdi ogg openexr opengl openmp overview pam pcre pda pdf perl plotutils plugins png podcast policykit portaudio posix postgres postscript ppds pppd preview-latex proj projectm projectx pstricks pulseaudio python python-bindings q16 q32 qemu qhull qt3support qt4 quicktime raw readline reiserfs reports rle romio rpc rrdcgi rrdtool sage samba sasl schroedinger science sdk sdl secure-delete semantic-desktop server session shout sip slang slp smart smbclient smp sms sndfile snmp soap sockets soup sox speex spell sql sqlite sse sse2 sse4a ssl stlport subtitles subversion sudo suexec svg svm swig szip t1lib tcl tcpd tex tex4ht texmacs tgif theora thesaurus threads thunderbird tidy tiff tk toolbar tools truetype udev unicode usb userlocales utempter vaapi video virtualbox visio vorbis wav webdav webdav-serf webkit wmf wxwidgets x264 xa xattr xcb xemacs xetex xext xft xine xml xmlreader xmlrpc xpm xv xvid xvmc yaml youtube zlib zvbi" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_core authn_dbm authn_default authn_file authz_core authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info lbmethod_byrequests log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif slotmem_shm so socache_shmcb speling status unique_id unixd userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="canon fuji ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CURL_SSL="nss" DRACUT_MODULES="caps lvm mdraid syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de fr ru" NETBEANS_MODULES="apisupport cnd dlight enterprise ergonomics groovy gsf harness ide identity j2ee java mobility nb php profiler ruby websvccommon xml" PHP_TARGETS="php5-3" PYTHON_TARGETS="python3_2 python2_7" QEMU_SOFTMMU_TARGETS="arm i386 x86_64" QEMU_USER_TARGETS="arm i386 x86_64" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

=================================================================
                        Package Settings
=================================================================

dev-util/meld-1.6.1 was built with the following:
USE="gnome (multilib)"
Comment 1 Juergen Rose 2012-10-30 10:04:09 UTC
The error happens, if I try to start meld via an ssh session. If I try run meld directly at caiman, it works.
Comment 2 Juergen Rose 2012-10-30 10:05:04 UTC
I do not have any problems to start other X11 programms in this ssh session.
Comment 3 Juergen Rose 2012-10-30 10:28:31 UTC
A little bit later after starting the X11 application I could also start meld through the ssh session:

root@caiman:/root(3)# meld

(meld:20611): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
Failed to connect to socket /tmp/dbus-dzxnczzq6d: Connection refused
Traceback (most recent call last):
  File "/usr/bin/meld", line 138, in <module>
    main()
  File "/usr/bin/meld", line 129, in main
    from meld.meldapp import app
  File "/usr/lib64/meld/meld/meldapp.py", line 199, in <module>
    app = MeldApp()
  File "/usr/lib64/meld/meld/meldapp.py", line 113, in __init__
    self.prefs = preferences.MeldPreferences()
  File "/usr/lib64/meld/meld/preferences.py", line 265, in __init__
    super(MeldPreferences, self).__init__("/apps/meld", self.defaults)
  File "/usr/lib64/meld/meld/util/prefs.py", line 93, in __init__
    self._gconf.add_dir(rootkey, gconf.CLIENT_PRELOAD_NONE)
glib.GError: No D-BUS daemon running

[1]+  Done                    compare_conf_files
root@caiman:/root(4)# emacs
root@caiman:/root(5)# meld
root@caiman:/root(6)#
Comment 4 Pacho Ramos gentoo-dev 2012-11-07 18:33:41 UTC
Have you tried to run:
dbus-launch meld
?
Comment 5 Juergen Rose 2012-12-25 08:53:39 UTC
I hit the error again:


root@lynx2:/root(3)# /etc/init.d/dbus status 
 * status: started
root@lynx2:/root(4)# emacs
root@lynx2:/root(5)# meld /etc/profile.d/net_functions /home_caiman/rose/Txt/Configurations/etc/profile.d/net_functions 

(meld:9673): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
Failed to connect to socket /tmp/dbus-Ra0adDy8OG: Connection refused
Traceback (most recent call last):
  File "/usr/bin/meld", line 154, in <module>
    main()
  File "/usr/bin/meld", line 136, in main
    import meld.meldapp
  File "/usr/lib64/meld/meld/meldapp.py", line 216, in <module>
    app = MeldApp()
  File "/usr/lib64/meld/meld/meldapp.py", line 113, in __init__
    self.prefs = preferences.MeldPreferences()
  File "/usr/lib64/meld/meld/preferences.py", line 259, in __init__
    super(MeldPreferences, self).__init__("/apps/meld", self.defaults)
  File "/usr/lib64/meld/meld/util/prefs.py", line 93, in __init__
    self._gconf.add_dir(rootkey, gconf.CLIENT_PRELOAD_NONE)
glib.GError: No D-BUS daemon running

root@lynx2:/root(6)# dbus-launch  meld /etc/profile.d/net_functions /home_caiman/rose/Txt/Configurations/etc/profile.d/net_functions 
The program 'meld' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadAccess (attempt to access private resource denied)'.
  (Details: serial 4196 error_code 10 request_code 130 minor_code 1)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)
[1]+  Done                    compare_conf_files
root@lynx2:/root(7)# /etc/init.d/dbus status 
 * status: started
root@lynx2:/root(8)# emacs
root@lynx2:/root(9)# echo $?
0
root@lynx2:/root(10)# meld /etc/profile.d/net_functions /home_caiman/rose/Txt/Configurations/etc/profile.d/net_functions 

(meld:9786): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
Failed to connect to socket /tmp/dbus-Ra0adDy8OG: Connection refused
Traceback (most recent call last):
  File "/usr/bin/meld", line 154, in <module>
    main()
  File "/usr/bin/meld", line 136, in main
    import meld.meldapp
  File "/usr/lib64/meld/meld/meldapp.py", line 216, in <module>
    app = MeldApp()
  File "/usr/lib64/meld/meld/meldapp.py", line 113, in __init__
    self.prefs = preferences.MeldPreferences()
  File "/usr/lib64/meld/meld/preferences.py", line 259, in __init__
    super(MeldPreferences, self).__init__("/apps/meld", self.defaults)
  File "/usr/lib64/meld/meld/util/prefs.py", line 93, in __init__
    self._gconf.add_dir(rootkey, gconf.CLIENT_PRELOAD_NONE)
glib.GError: No D-BUS daemon running

root@lynx2:/root(11)# dbus-launch  meld /etc/profile.d/net_functions /home_caiman/rose/Txt/Configurations/etc/profile.d/net_functions 


Only the second 'dbus-launch  meld ...' worked.
Comment 6 Pacho Ramos gentoo-dev 2012-12-25 10:44:45 UTC
Instead of comparing with emacs (that doesn't use dbus if I don't misremember), would be better to compare with other app using it (probably gedit)
Comment 7 Gilles Dartiguelongue (RETIRED) gentoo-dev 2013-01-20 19:03:12 UTC
eva@kanae (0) $ sudo -s
kanae eva # meld
kanae eva # exit
eva@kanae (0) $ su -
kanae ~ # meld
kanae ~ # exit
eva@kanae (0) $ su
kanae eva # LC_ALL=C meld

(meld:17117): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Traceback (most recent call last):
  File "/usr/bin/meld", line 154, in <module>
    main()
  File "/usr/bin/meld", line 136, in main
    import meld.meldapp
  File "/usr/lib64/meld/meld/meldapp.py", line 216, in <module>
    app = MeldApp()
  File "/usr/lib64/meld/meld/meldapp.py", line 113, in __init__
    self.prefs = preferences.MeldPreferences()
  File "/usr/lib64/meld/meld/preferences.py", line 259, in __init__
    super(MeldPreferences, self).__init__("/apps/meld", self.defaults)
  File "/usr/lib64/meld/meld/util/prefs.py", line 93, in __init__
    self._gconf.add_dir(rootkey, gconf.CLIENT_PRELOAD_NONE)
glib.GError: No D-BUS daemon running

My theory is as follows:

su does not clean up environment variables so dbus code tries to get access to user owned bus and fails because it cannot access it, most likely because the resolution method for such cases does not find the files where they are expected to be.

On the other hand, su - resets environment so meld can correctly detect that there is no dbus running for that user and through dbus-autolaunch support magicaly spaws a dbus-session for this user hence the working meld.

This is easily checked with ps, with su -, after starting meld, you should see:
root       848  0.0  0.0  15916   468 pts/8    S+   19:57   0:00 dbus-launch --autolaunch 1bb9acde3f00759deb2ded690001f14c --binary-syntax --close-stderr

This is also confirmed by unsetting DBUS_SESSION_BUS_ADDRESS when using su alone.

The correct way to use dbus apps with root is to not confuse dbus and make sure the environment corresponds to current user.

Thus I am closing this bug invalid. Please try to apply your newly gained knowledge on bug #452930, I'm sure the issue is similar.