Skip to content

Instantly share code, notes, and snippets.

@dubslow
Created February 23, 2015 19:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dubslow/a5873b3282535b24da26 to your computer and use it in GitHub Desktop.
Save dubslow/a5873b3282535b24da26 to your computer and use it in GitHub Desktop.
What’s new under the hood
Cinnamon Backend 2.0
Prior to version 2.0, and similar to Shell or Unity, Cinnamon was a frontend on top of the GNOME desktop.
In version 2.0, and similar to MATE or Xfce, Cinnamon is an entire desktop environment built on GNOME technologies. It still uses toolkits and libraries such as GTK or Clutter and it is still compatible with all GNOME applications, but it no longer requires GNOME itself to be installed. It now communicates directly with its own backend services, libraries and daemons: cinnamon-desktop, cinnamon-session and cinnamon-settings-daemon.
Better compatibility and portability
Another very tangible gain is backward compatibility and portability. Until now Cinnamon was designed to work on top of GNOME 3… a desktop which is being actively designed and features radical changes every 6 months. For instance, it is not possible to communicate with gnome-settings-daemon 3.8 the same way as with gnome-settings-daemon 3.6. The communication protocols and ABI keep changing and so a particular version of Cinnamon had to be designed to work with a particular version of GNOME.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment