cinnamon-session
Start the Cinnamon desktop environment
SYNOPSIS
cinnamon-session [OPTION…]
PARAMETERS
--session=name
Session name to load (default: cinnamon).
--display=DISPLAY
X display to connect to (e.g., :0).
--shm
Enable shared memory transport (deprecated).
--session-save
Force session state saving on exit.
-h, --help
Display help and exit.
--version
Output version information and exit.
DESCRIPTION
cinnamon-session is the core session manager for the Cinnamon desktop environment on Linux. It initializes and manages the desktop session by launching essential components such as the muffin window manager, Cinnamon panels, desktop icons (via nemo), desklets, and applets as defined in session configuration files.
Typically invoked automatically by a display manager like LightDM or GDM, it reads session definitions from /usr/share/cinnamon-session/sessions/ or user overrides in ~/.config/cinnamon-session/sessions/. These are plain text files listing programs with their startup conditions (e.g., Required, Requisite, Optional).
It supports session saving and restoration, enabling users to resume their previous workspace layout, open applications, and window positions upon login. The manager handles logout, shutdown, hibernate, and restart via integration with logind and D-Bus interfaces. It adheres to the X11 Session Management Protocol (XSMP) for compatibility with older applications.
Designed for extensibility, users can create custom sessions by providing alternative .session files. It's lightweight and tightly integrated with Cinnamon's theming and settings daemon.
CAVEATS
Not intended for manual invocation outside display managers; requires full Cinnamon environment.
--shm is deprecated and ignored in modern versions.
SESSION FILES
Defined in .session files under /usr/share/cinnamon-session/sessions/ and ~/.config/cinnamon-session/sessions/. Format: Program=exec-path [--option] with phases like Required/Optional.
DBUS INTERFACE
Exposes org.Cinnamon.SessionManager for programmatic control of logout/shutdown.
HISTORY
Developed by Linux Mint team for Cinnamon DE; first appeared in Cinnamon 1.4 (2012) as fork of GNOME Shell/Mate session handling.
SEE ALSO
muffin(1), cinnamon(1), nemo(1), gnome-session(1)


