Is Cinnamon a desktop environment or a window manager? (Or both?)
As far as I understand it:
- X11 is how you draw primitive things;
- A (compositing) window manager is something that uses X11 to provide the tools for drawing more complex things, and position them in layers on screen;
- A desktop environment is something that uses a window manager to provide the bare essentials of a GUI-based operating system, like a control panel, calculator and solitaire apps, task bar, etc.
If my understanding is correct - what is Cinnamon? Its wiki article (and the tag here on SU) describe it as a "desktop environment", but I can't find what window manager Linux Mint uses by default in its wiki article, and the Tara release notes mention improving the "window manager" in the Cinnamon 3.8 section.
Solution 1:
Cinnamon is a desktop environment, as its wikipedia page and archwiki page both state.
Cinnamon uses its own window manager called muffin, installing the cinnamon package also installs the muffin WM package on Debian.
Cinnamon also has "a bundle of programs running on top of a computer operating system, which share a common graphical user interface (GUI)" as Wikipedia's Desktop environment says as a basic definition. Its programs are X-Apps, but like all programs they're generally voluntary if you want to remove & use others instead.
Additionally, the archwiki page also states:
Cinnamon does not support using a different window manager.
Solution 2:
I would consider it to be both a desktop environment AND a window manager. On Ubuntu, Muffin is NOT a dependency for the Cinnamon desktop environment, although you can install manually if you want. (Maybe Cinnamon the window manager uses Muffin's libraries?). When cinnamon is launched, if you launch a task management-type program (such as top), you'll probably notice a program called "cinnamon" running. If you kill cinnamon, X11 will look exactly like it does when there is no window manager (windows won't have any borders or titlebars, windows will be clumsily stacked and unmovable, etc).
If you have some window manager running, and you run the following command from a terminal: cinnamon --replace
, your window manager will be replaced with the Cinnamon window manager.
PS: You can totally open windows without a window manager. Thus, X11 can draw more than "primitive things", and can in fact play videos, run office suites, browse the web, etc. without the need of a window manager. In practice, however, you won't want to attempt to do any of these things without a window manager, as simple things like launching programs, switching/moving/resizing/minimizing windows, and sending keyboard strokes to a specific window will become a HUGE pain.