How to compile and install the latest version of Cinnamon

Cinnamon has become one of the best alternatives to Gnome Shell, due to the fact that it returns us the traditional arrangement of the Desktop elements, which with the new versions of Gnome they have been lost.

This article I have rescued from the site of the LinuxMint Community, since it can help us to compile the latest version of Cinnamon which is available in Github, as long as we have a little time or suffer from acute versionitis. 😀

Add APT repositories

  • Open the file /etc/apt/sources.list
  • For each deb line, we add the same line replacing deb by deb-src.

For example, this is how it should be in Linux Mint 13:

deb http://packages.linuxmint.com maya main upstream import
deb-src http://packages.linuxmint.com maya main upstream import

deb http://archive.ubuntu.com/ubuntu/ precise main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ precise main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu/ precise-updates main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ precise-updates main restricted universe multiverse

deb http://extras.ubuntu.com/ubuntu precise main
deb-src http://extras.ubuntu.com/ubuntu precise main

Install all necessary packages to compile Muffin and Cinnamon.

In a terminal:

apt update
apt install dpkg-dev
apt build-dep muffin
apt build-dep cinnamon

Get the latest git code for Muffin and Cinnamon.

In a terminal:

git clone git://github.com/linuxmint/muffin.git
git clone git://github.com/linuxmint/Cinnamon.git

Compile and install the new Muffin

In a terminal:

cd muffin
dpkg-buildpackage

Next, be sure to install the packages you just built, in particular:

  • libmuffin-dev
  • gir1.2-muffin-3.0
  • libmuffin0
  • muffin (not necessary to compile Cinnamon, but possible also if Muffin is already installed on your system)
  • muffin-common

To install these, you can use "dpkg -i" in the terminal. Assuming there are no other deb packages in the directory, you can type "sudo dpkg -i * .deb".

Compile and install the new Cinnamon.

In a terminal:

cd Cinnamon
./autogen.sh
dpkg-buildpackage

This produces a cinnamon deb file in the parent directory, which can be installed with gdebi or dpkg-i.

Optional: Build the stable branch

The instructions above are for compiling Muffin and Cinnamon from their "master" branch, which is not always stable. To compile the stable branch, the following is required (for muffin and cinnamon):

cd muffin
git checkout -b stable origin/stable
dpkg-buildpackage

And with Cinnamon:

cd Cinnamon
git checkout -b stable origin/stable
./autogen.sh
dpkg-buildpackage

Note that at the time of writing this tutorial, Muffin does not have a stable branch yet, and that Cinnamon 1.4 UP3 (on the stable branch) must be compiled with Muffin 1.0.3-UP1 (use this link to download it instead of the one in git: https://github.com/linuxmint/muffin/tags )


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.

  1.   Kitty said

    Thanks a lot! Soon I will have my Maya and with cinnamon, this post will help me a lot: 3
    Regards!

    1.    elav <° Linux said

      You're welcome Kitty ^^

  2.   3ndriago said

    My dearest ELAV, it will be that I am lazy to the extreme, but the day I have to compile a desktop (or whatever) before I can use it, I give myself a shot ... but the post is very good just in case ...

    1.    elav <° Linux said

      Hahaha this article is not for users like you my dear brother .. That is clear to me ..

  3.   Rayonant said

    A very interesting option for those who suffer from "versionitis". By the way, a slightly off-topic topic remembering that I recently went around compiling a sound player that I wanted to test, Tomahawk, I have a question once the dependencies and the application have been compiled from git source code, you can delete the directories containing this? or if I delete them it also deletes their respective packages?

    1.    elav <° Linux said

      No idea. I don't know if the same thing happens with:

      ./configure
      make
      make install

    2.    msx said

      No.
      Think: git is, as you say, a source code repository, so what you do when you "clone" a given project is just recreate an exact local copy of the one on the git server so that when you make changes and upload them the git service automatically diff files to audit changes, merge them to main branch, etc.
      In the case of your specific question: of course, once the package is installed, you don't have to save the entire source tree to uninstall it, only with the scripts you used to install it is enough. In fact, and this is the beauty of GNU / Linux, you don't need to use any automagic uninstaller, the only thing you have to know is in which directory you install which files to be able to delete them without further ado - in fact, Slackware works that simple, the purest Unix-like that exists today followed by Arch.
      For the future -and to avoid the obvious- just try things out for yourself: if you don't know whether or not you can delete this or that file or directory, rename it and voila, there is not so much mystery, besides to be sure that the app works correctly you run it from the console to be aware of any error messages that appear. Ultimately nothing is so tragic, you compile the application again and something else 🙂
      Above all, best of all is that since it is not managed by your package manager, you can do whatever you want with those files !!! Although yes, keep in mind that precisely because it is not in the databases of your package manager, if you decide to remove it from your system, be aware of ALL the files that you have installed to delete them by hand.

      Hey, it's just GNU / Linux.

  4.   Merlin the Debianite said

    I don't really like cinnamon much I like mate, xfce, lxde or KDE more.

    KDE because it looks better and super customizable
    XFCE because it is customizable
    LXDE because it is minimalist and has great aesthetics and is customizable.

    Something that costs cinnamon and is almost impossible with gnome3 or gnome-shell.

  5.   Evert Cliff said

    Hi. Seeing that Cinnamon is formulated as a skin, or dark theme.
    I would like to know if in GNU / Linux, it is easy to have a completely dark interface, for menus, bars, windows, and that it looks good, without much consumption of resources.
    I had seen in softonic, a distro designed with that approach. But I can't find the link, right now.

    1.    elav <° Linux said

      Well, for every desktop environment there will always be a black theme, now, it is possible that the distro you saw, which by default is GnomeShell. However, you can find several themes to Cinnamon en this link.

      If you use Gnome »gnome-look.org
      If you use Xfce »xfce-look.org
      If you use KDE »kde-look.org

  6.   alternative said

    A couple of questions. Is it true that you already have software acceleration? My netbook can with graphics acceleration, but I prefer software to gain speed. Is it true that debian has problems with a library? Greetings 😀

  7.   Bruno said

    The truth is that I am delighted. The way it is customized, the application of themes, is amazing.

  8.   huap80 said

    Does anyone know how to compile SRWiron 31.0.1700.0 on Debian Wheezy ??, or not exactly that version of iron. The thing is that I have searched a lot how to install it but it simply does not work, I have downloaded the .tar.gz and then I have tried to install it by copying the iron64 folder to opt and creating a link to / usr / bin / iron, but the answer of terminal is this: iron: error while loading shared libraries: libudev.so.1: cannot open shared object file: No such file or directory. I have also tried with the .deb which, like the tar.gz, I download from the official iron page. When installing with the .deb and executing in terminal it answers this: bash: / usr / bin / iron: The file or directory does not exist. Anyway, I hope someone more experienced can guide me ... Thank you!