Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!


Click here to return to the 'use .Xresources' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
use .Xresources
Authored by: mzs on Mar 11, '04 09:34:34AM
I am happy I was able to help. If you like what the default starts for you, then you have no need for an .xinitrc file. If you really wish to change it, you can try creating an .xsession file in your home dir. (.xsession is intended for something like xdm plus xsm while .xinitrc is intended for something like startx. startx or somehting similar would be a script that assumes a terminal and can prompt the user asking things like which window manager to start, this is not how X11 is started on MacOS X so the .xsession file makes more sense.) .xsession is a script that takes no args and it should begin on the first line:

#!/bin/sh

It should be executable as well. It depends what the scripts on your system are like how it is started-up so to be safe on all systems you should always put the bourne shell shebang as the first line, make it executable, and assume that it is sourced by sh. On X11 by default is is started by part of a script that looks like this but these scripts do change from version to version:

#  The startup script is not intended to have arguments.

startup=$HOME/.xsession
resources=$HOME/.Xresources

if [ -s "$startup" ]; then
        if [ -x "$startup" ]; then
                exec "$startup"
        else
                exec /bin/sh "$startup"
        fi
...
fi

In your .xsession script you would like to have something like this:

resources=$HOME/.Xresources

if [ -r "$resources" ]; then
        xrdb -load "$resources"
fi

You may like to do -merge instead in case you have created some Xresources under /etc/X* or /usr/X* that you like to use but by now people should be using app-defaults instead.

After this you could have some lines like you had in the parent comment. Alternatively you might just have it start xsm. Do a man xsm in an xterm to see what that does and how to configure it.

So as you can see there is a LOT of detail to making good .xsession/.xinitrc files. I had to do it in the past when I had a networked home directory and several machines that I would run X sessions on with some having more or less heads (monitors). I have not done any of this compicated scripting on MacOS X though, so I have no idea what sort of gotcha's you might run into. I would just avoid as much of this as possible.

[ Reply to This | # ]