← Back to team overview

desktop-packages team mailing list archive

[Bug 328575] Re: [gnome-terminal SRU] Cannot start gnome-terminal (or x-terminal-emulator) because of gconf error

 

** Changed in: dbus
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to gnome-terminal in Ubuntu.
https://bugs.launchpad.net/bugs/328575

Title:
  [gnome-terminal SRU] Cannot start gnome-terminal (or x-terminal-
  emulator) because of gconf error

Status in D-Bus:
  Fix Released
Status in The GConf Registry System:
  New
Status in GNOME Terminal:
  Fix Released
Status in “gconf2” package in Ubuntu:
  Invalid
Status in “gnome-terminal” package in Ubuntu:
  Fix Released
Status in “gconf2” source package in Jaunty:
  Invalid
Status in “gnome-terminal” source package in Jaunty:
  Fix Released
Status in Debian GNU/Linux:
  Fix Released

Bug description:
  Binary package hint: gnome-terminal

  IMPACT: gnome-terminal will fail to launch under any circumstance
  where gconfd isn't already running. This can include `sudo gnome-
  terminal` (since no gconfd is running for root), or starting gnome-
  terminal under a non-GNOME window manager.

  DEVELOPMENT: The Debian maintainer added 02_let_gconf_autostart.patch
  in 2.26.2-2 to solve this issue (debbugs #531734). That version has
  been merged into Karmic.

  PATCH: Patch available at http://launchpadlibrarian.net/30671489
  /gnome-terminal_2.26.0-0ubuntu2.1.debdiff, with test builds in
  https://launchpad.net/~broder/+archive/ubuntu-tests. The upstream
  gnome-terminal maintainer rejected the patch used for
  02_let_gconf_autostart.patch, because it reintroduced gnome-bugs
  #561663. The attached patch instead cherry-picks the commit the
  maintainer added to fix this bug upstream.

  INSTRUCTIONS: Attempt to run `sudo gnome-terminal`. It will exit with
  "Failed to contact the GConf daemon; exiting."

  REGRESSION: Seems limited - this is a cherry-pick of an upstream
  change that only changes a handful of lines.

  ============
  Original bug description:

  I cannot start gnome-terminal.  If I open an xterm and start gnome-
  terminal from the command line, here is what I get:

  $ sudo gnome-terminal  
  Failed to contact the GConf daemon; exiting.
  (original report didn't have sudo in this command, but a later comment by the submitter amended this.)

  $ ps ax | grep gconf
   3956 pts/0    R+     0:00 grep gconf
   6643 ?        S      0:00 /usr/lib/pulseaudio/pulse/gconf-helper
   6647 ?        S      0:06 /usr/lib/libgconf2-4/gconfd-2

  This is in Jaunty Alpha 4 with all updates current as of 12 Feb.

   This bug is now understood.  Read all the comments (or at least try
  some text searches) before adding your own, because a lot of things
  have already been covered.

  summary of some stuff posted in comments:
   gnome-terminal on purpose refuses to start if it can't connect to gconfd to get its config settings.

   gconf clients now find the server using DBUS.  Starting gnome-
  terminal as root doesn't work even when you have all the gnome bits
  and pieces running under your account, because DBUS is per-user.

  executive of summary: We know what is going on.  Everything that
  doesn't work is a consequence of the design.  Everything is working as
  designed, although obviously there are problems with this design.
  Discussion about the design probably belongs on freedesktop-bugs
  #17970 (link in the remote bug sidebar).

   Workarounds to use until the bugs are fixed:
  for the gconfd-not-running case:
  start gconfd.  e.g. add /usr/bin/gnome-settings-daemon to your X session startup script, ahead of any gnome-terminal commands.  This applies whatever window manager you happen to be using.  (except if you're using Ubuntu's default GNOME desktop, which already starts gconfd itself.)

  multiple tabs over ssh:
  use screen(1)
  $ sudo aptitude install screen  screen-profiles # if you don't have it already
  The default config has unhelpful keybindings.  I'm used to ^t as the command key, and F11/F12 as next/previous tab (screen calls them "windows").  I set up my own .screenrc before screen-profiles was packaged, so I don't know if its examples and samples are good or not.
  If you insist on displaying a GUI over X11 over ssh, there are other terminal emulators with tabs, e.g. the lighter-weight mrxvt.  (be careful, though: it doesn't support UTF-8.)

   You might also investigate ssh -M for connection sharing.  As I
  understand it, this lets you tunnel multiple sessions over one SSH
  connection, so only one password prompt...  You could presumably get a
  local gnome-terminal going with ssh connections in each tab.

  root shells:
  You can use sudo inside a gnome terminal that's running under your own account.  sudo -s, sudo -i, sudo su, and sudo bash are all variations on getting a shell running as root.  If you don't know which to pick, use sudo -s.  Or, better, don't start a root shell, and simply use sudo or gksudo on the one or two commands that need it.

   This bug is partly that gconf requires DBUS, which breaks some
  remote-GUI situations, and partly that gnome-terminal just refuses to
  start without gconf, even though some people have found that it
  actually works if they comment out that part.

   Armed with this knowledge, this bug shouldn't be more than a minor
  inconvenience, esp. if you're not dealing with ssh.  (GNU screen takes
  some time to get used to...)

   I hope it's ok that I turned this bug's description into a guide on
  how to deal with it.  Please correct any inaccuracies.

To manage notifications about this bug go to:
https://bugs.launchpad.net/dbus/+bug/328575/+subscriptions