GNOME-SESSION(1)
π GNOME-SESSION(1) π
okay bestie, pull up a chair β this is the GNOME-SESSION(1) page from the General Commands Manual, and we're gonna make it make sense. it's giving "your login manager's favorite coworker" energy and honestly? iconic.
β¨ NAME β¨
cinnamon-session β Start the GNOME desktop environment
like. that's the whole vibe. it starts the GNOME desktop. slay.
πΈ SYNOPSIS πΈ
cinnamon-session [-a|--autostart=DIR] [--session=SESSION]
[--failsafe|-f] [--debug] [--whale]
π¦ DESCRIPTION π¦
so the cinnamon-session program starts up the GNOME desktop environment. periodt. normally you don't even run it yourself β your login manager does (could be mdm, xdm, or it gets launched from your X startup scripts). it'll load either your saved session, or it'll hand you a default session for the user, as defined by the system administrator (or the default GNOME installation on your system). it's basically the group chat admin of your desktop.
the default session is defined in gnome.session, which is a .desktop-like file. it gets looked for in:
$XDG_CONFIG_HOME/cinnamon-session/sessions$XDG_CONFIG_DIRS/cinnamon-session/sessions$XDG_DATA_DIRS/cinnamon-session/sessions
when it saves a session, cinnamon-session saves the currently running applications in the $XDG_CONFIG_HOME/cinnamon-session/saved-session directory. it's literally keeping receipts on what you had open. π
also, for the record: cinnamon-session is an X11R6 session manager. it can manage GNOME applications as well as any X11R6 SM compliant application. no gatekeeping here, everyone's welcome.
π OPTIONS π
the following options are supported:
--autostart=DIRβ start all applications defined in DIR, instead of starting the applications defined ingnome.session, or via the--sessionoption. and yes bestie, multiple--autostartoptions can be passed. stack 'em. π₯--session=SESSIONβ use the applications defined inSESSION.session. if you don't specify this,gnome.sessionwill be used. default queen behavior.--failsafeβ run in fail-safe mode. user-specified applications will not be started. it's giving "we're doing this the safe way, no extras."--debugβ enable debugging code. turn it on when you wanna see the drama unfold.--whaleβ show the fail whale in a dialog for debugging it. not me being obsessed with a debugging whale ππ
psst β the synopsis up top also shows-aas a short form for--autostartand-fas a short form for--failsafe. iykyk.
π SESSION DEFINITION π
sessions are defined in .session files, which use a .desktop-like format. the keys below live in the GNOME Session group:
Nameβ name of the session. this can be localized. πRequiredComponentsβ list of component identifiers (desktop files) that are required by the session. the required components will always run in the session. they're the main characters, they're not optional.RequiredProvidersβ list of task providers that are required by the session. a default provider for each task has to be defined with aDefaultProvider-TASKkey; the provider can be overridden by required components, the saved session or autostart applications. the task providers will always run in the session.DefaultProvider-TASKβ identifier (desktop file) of the default provider for TASK. if no provider for TASK is found in the required components, the saved session and in the autostart applications, the default provider will be started. the fallback bestie. π«Ά
here's an example of a session definition, copy-paste ready:
[GNOME Session]
Name=GNOME fallback
RequiredComponents=gnome-panel;metacity;gnome-settings-daemon;
RequiredProviders=notifications;
DefaultProvider-notifications=notification-daemon
the .session files are looked for in:
$XDG_CONFIG_HOME/cinnamon-session/sessions$XDG_CONFIG_DIRS/cinnamon-session/sessions$XDG_DATA_DIRS/cinnamon-session/sessions
π§ ENVIRONMENT π§
cinnamon-session sets several environment variables for the use of its child processes. yes, it's setting them up for success. β¨
SESSION_MANAGERβ this variable is used by session-manager aware clients to contactcinnamon-session.DISPLAYβ this variable is set to the X display being used bycinnamon-session. note that if the--displayoption is used this might be different from the setting of the environment variable whencinnamon-sessionis invoked. lowkey important, highkey a gotcha.
β FILES β
$XDG_CONFIG_HOME/config/autostart$XDG_CONFIG_DIRS/config/autostart/usr/share/gnome/autostart
the applications defined in those directories will be started on login. cinnamon-settings(1) can be used to easily configure them. no cap, that's the easy button. π
$XDG_CONFIG_HOME/cinnamon-session/sessions$XDG_CONFIG_DIRS/cinnamon-session/sessions$XDG_DATA_DIRS/cinnamon-session/sessions
these directories contain the .session files that can be used with the --session option.
$XDG_CONFIG_HOME/cinnamon-session/saved-session
this directory contains the list of applications of the saved session.
π SEE ALSO π
and that's the whole page, bestie π this lil manual is brought to you by GNOME β GNOME-SESSION(1), General Commands Manual, section 1. go forth and session-manage, you're doing amazing sweetie π
πΈβ¨
π¦ where this page comes from
- arch rolling: cinnamon 6.6.9-1 Β· GPL-2.0-or-later
- debian bookworm: cinnamon 5.6.8-1 Β· GPL-2.0-or-later
- debian trixie: cinnamon 6.4.10-2+deb13u1 Β· GPL-2.0-or-later
- epel 9: cinnamon 5.8.4-3.el9 Β· GPLv2+ and LGPLv2+
- fedora 44: cinnamon 6.6.7-2.fc44 Β· GPL-2.0-or-later AND LicenseRef-Callaway-LGPLv2+
- fedora 44: cinnamon 6.6.7-7.fc44 Β· GPL-2.0-or-later AND LicenseRef-Callaway-LGPLv2+
- nixos 26.05: cinnamon 6.6.8
- nixpkgs unstable: cinnamon 6.6.9
- opensuse-leap 16.0: cinnamon 6.4.6-lp160.3.1 Β· GPL-2.0-or-later AND LGPL-2.1-only
- opensuse-leap 16.0: cinnamon 6.4.6-lp160.3.1 Β· GPL-2.0-or-later AND LGPL-2.1-only
- opensuse-leap 16.0: cinnamon 6.4.6-lp160.3.1 Β· GPL-2.0-or-later AND LGPL-2.1-only
- ubuntu noble: cinnamon 6.0.4-4 Β· GPL-2.0-or-later
- ubuntu questing: cinnamon 6.4.12-1
- ubuntu resolute: cinnamon 6.4.13-2 Β· GPL-2.0-or-later
- (C) 2000 Miguel de Icaza (miguel@helixcode.com)
- (C) 2009-2010 Vincent Untz (vuntz@gnome.org)
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms