Custom User Directories
In certain cases an administrator may want to customize the XDG Base Directories that are used for a user session.
This may be useful in cases where multiple versions of an operating system share a home directory for whatever reason (NFS shares for example).
GDM 3.6 and later have included support for this.
Let's take one example and walk through how to do it.
Example 1
I have GNOME 3.6 and GNOME 3.8 sharing a single home directory over NFS. I want to support simultaneous or alternating logins between them. I don't want I want to use separate configuration directories for each so that the newer version doesn't interfere with the older one.
So I want to set XDG_CONFIG_DIR=$HOME/.config-$OS_ENV_VERSION
Create a file /etc/X11/xinit/xinitrc.d/99-override-xdg-dirs.sh and include something like:
export XDG_CONFIG_DIR=$HOME/.config-$OS_ENV_VERSION
NOTE: This requires a fix for bug 674900
Example 2
I want to store separate session logs for simultaneous logins.
Create a file /etc/X11/xinit/xinitrc.d/99-override-xsession-errors.sh and include something like:
exec >& $HOME/.cache/gdm/session-$HOSTNAME.log