22

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.

3
  • 1
    Actually what "uses X11 to provide the tools for drawing more complex things" (eg: menu bars, buttons, combo boxes) is a toolkit like Tk, GTK, and Qt. As @TSJNachos117 said, a window manager decorates X11 windows with borders and titles to allow easier resizing and positioning. Commented Apr 12, 2019 at 11:57
  • 4
    TIL that solitaire apps is a bare essential of a GUI-based operating system.
    – pipe
    Commented Apr 12, 2019 at 13:01
  • If it doesn't have solitaire then why bother? Commented Sep 20, 2019 at 13:24

2 Answers 2

23

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.

5
  • ArchWiki seems strong. Is that something I could rely on to get any information regarding Linux? Or is it limited to stuff relevant to Arch? Commented Apr 11, 2019 at 20:25
  • 14
    ArchWiki is a very professional source, not only for Arch and derivatives.
    – user931000
    Commented Apr 11, 2019 at 20:47
  • 2
    Arch's wiki is generally fantastic, mostly relevant to packages available to any linux, but sometimes the system config info seems specific to arch
    – Xen2050
    Commented Apr 11, 2019 at 21:50
  • 3
    @AdamBarnes ArchWiki has a focus on Arch (instructions tend to be specific to pacman, systemd, etc), but the information is relevant to any Linux, and is exceptionally informative and surprisingly diverse. Even before I started using Arch, that wiki was always my first stop for that sort of information. As an example, if I had a specific problem with an application, ArchWiki would tend to have information on that problem in particular (and how to fix it) that wasn't documented anywhere else that I could find. Commented Apr 12, 2019 at 19:00
  • Please, could you put it into a diagram / mind map?
    – kokbira
    Commented May 13, 2019 at 20:00
1

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.

5
  • 1
    Which cinnamon package do you install that doesn't have any *muffin* dependencies? Maybe you're not getting a full cinnamon... From browsing ubuntu's packages apparently cinnamon looks almost like a metapackage that depends on muffin & 2 other *muffin* packages, while cinnamon-common depends on one *muffin* package, that depends on another libmuffin0, that is the "lightweight window and compositing manager (shared library)"
    – Xen2050
    Commented Apr 12, 2019 at 6:27
  • I have cinnamon installed (cinnamon-common is installed as a cinnamon dependency). It does not depend on muffin at all, although it does depend on gir1.2-meta-muffin-0.0. I'm running ubuntu 18.04 Commented Apr 13, 2019 at 21:04
  • That's what I thought, you don't have all the cinnamon packages. And the cinnamon-common you do have installed does depend on most of (almost all of?) muffin, specifically the gir1.2-meta-muffin-0.0 (93k), which depends on libmuffin0 (821k), which depends on muffin-common (5M)... just not the package called "muffin" specifically, that's only (152k).
    – Xen2050
    Commented Apr 14, 2019 at 7:22
  • I'm not too sure which cinnamon processes are running on your system, you could check with something like ps auxf and then see which libraries are used by those programs with ldd or objdump -p ... | grep NEEDED. Or check processes with pmap or pldd (though pldd froze my GUI when I tried it on my window manager, had to switch to another virt.terminal to kill it).
    – Xen2050
    Commented Apr 14, 2019 at 7:37
  • You know, I just rechecked, and I found that cinnamon also depends on libmuffin0, which is indeed loaded according to objdump. Still, I consider cinnamon to be different from muffin. Here's an analogy: mpv is a media player that depends on ffmpeg's libraries. That said, ffmpeg and mpv are still different programs, which operate in different ways, and are useful for different tasks. In the Cinnamon DE, the process for the window manager is "cinnamon". Commented Apr 15, 2019 at 18:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .