dbus-launch --exit-with-session fails when run from .startxwinrc

Jon TURNEY jon.turney@dronecode.org.uk
Wed Apr 25 16:22:00 GMT 2012

On 24/04/2012 14:50, Ken Brown wrote:
> On 4/16/2012 9:50 AM, Ken Brown wrote:
>> On 4/16/2012 9:44 AM, Ken Brown wrote:
>>> The following problem occurs on my 64-bit Windows 7 system but not on my
>>> XP system.
>>> I start the X server using the Start Menu shortcut [modified to add
>>> -emulate3buttons] and a .startxwinrc with the following contents:
>>> eval `dbus-launch --sh-syntax --exit-with-session`
>>> xterm
>>> Running ps in the resulting xterm window shows no dbus-launch or
>>> dbus-daemon process. But I can give the same dbus-launch command in the
>>> xterm window, and the processes start as expected. I'm attaching
>>> cygcheck output and the XWin log.
>>> My hope in reporting this is that the problem I'm seeing (and the
>>> difference between XP and Win7) is somehow related to the emacs problem
>>> I've been trying to solve:
>>> http://cygwin.com/ml/cygwin-xfree/2012-04/msg00048.html
>>> Ken
>>> P.S. You'll see in the cygcheck output that I'm running a Cygwin
>>> snapshot; but nothing changes if I revert to cygwin-1.7.13-1.
>> I forgot to say that if I remove "--exit-with-session" from the command
>> line in my .startxwinrc, then a dbus-daemon process does start.
> I tried modifying the X server shortcut to read
> C:\cygwin\bin\run.exe /usr/bin/bash.exe -l -c '/usr/bin/startxwin.exe
>>> /var/log/xwin/startxwin.log 2>&1'
> as suggested in a different thread, but that provides no information. The
> resulting startxwin.log is virtually identical (with minor differences) to
> XWin.0.log.
> In particular, there's no indication of what's happening when .startxwinrc is
> processed.

There's no output because ~/.startxwinrc generates no output.

> For starters, it would really be helpful if someone could try to reproduce my
> problem on a 64-bit Windows 7 system.  At the moment, I don't even know if
> there is a bug somewhere or simply a problem with my own system.  Here's the
> recipe:
> 1. Create a .startxwinrc file with the following contents:
> eval `dbus-launch --sh-syntax --exit-with-session`
> xterm
> 2. Start the X server using the Start Menu shortcut.
> 3. In the resulting xterm window, give the "ps" command.  If things are
> working right, the output from ps should show a dbus-launch process and a
> dbus-daemon process.
> These processes do appear on my XP system but not on my Windows 7 system.

FWIW, it works on XP for me as well.

I tried with the following ~/.startxwinrc:

eval `dbus-launch --sh-syntax --exit-with-session | tee /dev/stderr`

... which at least lets you see the pid of the dbus-daemon that is started.

I'm not sure if --exit-with-session is correct with startxwin, since the
startxwin process will not linger after it has started ~/.startxwinrc, and I
don't know if stdin will remain open after it (and the process tree above it
waiting for it) exits.  I have this vague recollection that 'run' has to do
different things on XP and W7, which might account for the different behaviour?

Volunteer Cygwin/X X Server maintainer

Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/

More information about the Cygwin-xfree mailing list