[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: startx + ~/.xsession and no ~/.xinitrc, results in reduced functionality (xfce4, sid)



On Sun 15 Dec 2013 at 06:29:52 +1300, Chris Bannister wrote:

> JFTR, I am running FVWM and have the following:
> tal% less .xsessionrc
> /home/chrisb/background.sh &
> 
> xterm -fn 10x20 -xrm "XTerm.vt100.background: #CCA8AA" -xrm \
>   "XTerm.vt100.foreground: blue" -geom 120x15 &
> tal%

You start an xterm. Remember that a script executes each line
sequentially and only moves on to the next line if the previous command
completes.

The xterm is put in the background; the command has completed. There is
no next line in .xsessionrc so /etc/X11/Xsession moves on from
40x11-common_xsessionrc to 50x11-common_determine-startup. Here it first
looks for ~/.xsession. You haven't got one so it goes on to investigate
/usr/bin/x-window-manager. This file links to x-window-manager in
/etc/alternatives. I bet this points to fvwm in your case!

All is right with the world; so you think :).

> I use startx. If I rename .xsessionrc to .xsession then X bails out 
> on starting and I am returned back to the prompt.

>From xinit(1)

   The xinit program is used to start the X Window System server
   and a first client program . . . 

Once that client program completes execution xinit exits; that is, X
goes away.

Your .xsession contains a single backgrounded command. Guess what?

[Snip]

> So it seems I'm going to have to go through the startup sequence *again*
> and try to figure out why X/FVWM won't start with a .xsession file. :(

Put

   exec fvwm

after the xterm command in .xsession. This command does not complete and
.xsession doesn't close. You've summoned X, give it a chance to show off
what it can do :).

> Thanks Brian for putting me on the right path, although it is with mixed
> blessings :) 

Bob Proulx posts were the inspiration. Although I had sorted out the use
of startx to my satisfaction many years ago, his recent mails caused me
to look again at how Debian handled it.

MORAL: ,xsession - good. .xinitrc or .xessionrc - bad (unless you really
know what you are doing and have special needs).

EXERCISE: You decide 'exec fvwm' is a splendid idea but decide to keep
your .xsessionrc and put the extra line in it. Discuss the consequences.


Reply to: