Hello List, I've recently had some troubles starting up my gnome3 + XMonad desktop session.
My first problem was that Taffybar and xmonad.hs were unable connect to DBus with the following error: connectSession: DBUS_SESSION_BUS_ADDRESS is missing or invalid. The value of DBUS_SESSION_BUS_ADDRESS probably came from dbus-launch: DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-jp8hFEY1dV,guid=c6e01dc144bda2ae4ca47c84580747a5;unix:abstract=/tmp/dbus-BjlHWWC2xz,guid=3733c1a431ad4cb309cc622a580747a5 I'm not quite sure why the dbus socket was unavailable, but my solution was to enable services.dbus.socketActivated in configuration.nix. An additional problem is that the haskell-dbus library won't check the socket $XDG_RUNTIME_DIR/bus after the connection fails using DBUS_SESSION_BUS_ADDRESS. So my workaround is to change the environment before connecting: let bus d = "unix:path=" ++ d ++ "/bus" maddr <- fmap bus <$> lookupEnv "XDG_RUNTIME_DIR" case maddr of Just addr -> setEnv "DBUS_SESSION_BUS_ADDRESS" addr Nothing -> return () This allows me to start xmonad and taffybar. My next problem is that gnome-terminal will no longer start: dbus-daemon[6158]: Activating via systemd: service name='org.gnome.Terminal' unit='gnome-terminal-server.service' dbus-daemon[6158]: Activation via systemd failed for unit 'gnome-terminal-server.service': Unit gnome-terminal-server.service not found. I have found that this is due to https://github.com/NixOS/nixpkgs/issues/19110 My workaround for that problem is simply: ln -vsf /run/current-system/sw/lib/systemd/user/* ~/.config/systemd/user Now I have a working desktop session again. I have posted this in case anyone else has similar difficulties. In future, having a socket-activated dbus would allow the NixOS xsession script to be partly replaced by systemd. I think that could be quite exciting. Cheers, Rodney _______________________________________________ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev