Create a custom session

To create your own session with customized configuration, follow these steps:

  1. Create a .desktop file in /etc/X11/sessions/new-session.desktop. Make sure that the file specifies the following entries:

    [Desktop Entry]
    Encoding=UTF-8
    Type=Application
    Name=Custom session
    Comment=This is our custom session
    Exec=gnome-session --session=new-session

    The Exec entry specifies the command, possibly with arguments, to execute. You can run the custom session with the gnome-session --session=new-session command.

    For more information on the parameters that you can use with gnome-session, see the gnome-session man page.

  2. Create a custom session file in /usr/share/gnome-session/sessions/new-session.session where you can specify the name and required components for the session:

    [GNOME Session]
    Name=Custom Session
    RequiredComponents=gnome-shell-classic;gnome-settings-daemon;

    Note that any item that you specify in RequiredComponents needs to have its corresponding .desktop file in /usr/share/applications/.

After configuring the custom session files, the new session will be available in the session list on the GDM login screen.

Known issues

On a Debian or Debian-based system, the following error may occur:

Xsession: unable to launch ""
    Xsession --- "" not found; falling back to default
    session.

Should this happen to you, follow these steps to change the /etc/X11/Xsession.d/20x11-common_process-args file:

  1. Change STARTUP_FULL_PATH=$(/usr/bin/which "$1"|| true) to STARTUP_FULL_PATH=$(/usr/bin/which $1 || true)

  2. Change STARTUP="$1" to STARTUP=$1