LinuxCommandLibrary

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

Copied to clipboard