[SOLVED] building Cinnamon (sid)

Archived topics about LMDE 1 and LMDE 2
Locked
mockturtl

[SOLVED] building Cinnamon (sid)

Post by mockturtl »

This should be everything you need to build Cinnamon on LMDE.

Image

(courtesy wikipedia, "GNU build system")


Debian protip: when the build fails with an error message "dependency foo is missing," the package you need to install is named libfoo-dev

Ubuntu package names are slightly different. If some dependency is missing, search the oneiric repositories by visiting http://packages.ubuntu.com/missing-package-name

UPDATE: 2012.05.16 -- if you previously compiled Cinnamon (<= 1.4) using these instructions, there will be cruft in /usr/local that interferes with the normal installation in /usr. Cinnamon will fail to start correctly if some of these files remain.

If you haven't taken the update to libclutter 1.10, you should complete this step and be sure cinnamon 1.4.0-lmde1 runs normally before upgrading.

Get rid of (sudo rm -r) all the matching files:

Code: Select all

find /usr/local -name cinnamon*
Also check the schemas folder /usr/local/lib/glib-2.0. Look through each subdirectory of /usr/local to make sure you haven't missed anything. If you have any questions whether a file is cinnamon-related, feel free to ask.

----
  • Enable deb-src repositories
  • apt update
  • apt install cdbs debhelper autotools-dev gnome-pkg-tools intltool libgjs-dev gvfs-backends gobject-introspection gir1.2-json-1.0 gnome-bluetooth gsettings-desktop-schemas-dev libcaribou-dev libcroco3-dev libdbus-glib-1-dev libgconf2-dev libgirepository1.0-dev libglib2.0-dev libglib2.0-bin libgnome-bluetooth-dev libgnome-desktop-3-dev libgnome-keyring-dev libgnome-menu-3-dev libgstreamer0.10-dev libgtk-3-dev libgudev-1.0-dev libnm-glib-dev libstartup-notification0-dev libmutter-dev librsvg2-dev libwnck-dev libclutter-1.0-dev libxfixes-dev libxss-dev libpulse-dev libcanberra-dev libecal1.2-dev libedataserver1.2-dev libedataserverui-3.0-dev libfolks-dev libtelepathy-glib-dev libtelepathy-logger-dev libpolkit-agent-1-dev libjson-glib-dev dh-autoreconf libcanberra-gtk3-dev libxt-dev libcanberra-gtk3-module gnome-common gnome-doc-utils
  • mkdir logs
    • if compiling muffin, git clone git://github.com/linuxmint/muffin (latest requires muffin 1.0.3)
      • cd muffin
      • sudo dpkg-buildpackage > ../logs/build-muffin.log 2>&1
      • ctrl+shift+t to open a new terminal and tail -f ../logs/build-muffin.log to watch the fireworks
      • if everything succeeds, ctrl+c to end the tail, cd .. and sudo dkpg -i *.deb to install the new muffin files
    • if not compiling muffin, apt install libmuffin0 libmuffin-dev
    • git clone git://github.com/linuxmint/Cinnamon
    • cd Cinnamon
    • ./autogen.sh --prefix=/usr > ../logs/autogen-cinnamon.log 2>&1 && \
      sudo dpkg-buildpackage > ../logs/build-cinnamon.log 2>&1
    • ctrl+shift+t to open a new terminal and tail -f ../logs/each-of-the-above-logfiles.log to watch the fireworks
    • if everything succeeds, ctrl+c to end the tail, cd .. and sudo dkpg -i *.deb to install the new cinnamon file
    • APT will think it's older than the version in the repositories, so upgrading will overwrite it
If some step fails, we'll use the logfiles to help figure out why -- copy the failure (from the most recent file: ls -l logs/) to pastebin and someone can help you in this thread.
Last edited by LockBot on Wed Dec 28, 2022 7:16 am, edited 8 times in total.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
xircon

Re: building Cinnamon (sid)

Post by xircon »

I tried the pre-built debs, but get problems with libgjs0c (>= 1.29.18), tried to install the Ubuntu package, but it is a no go.
GeneC

Re: building Cinnamon (sid)

Post by GeneC »

Been trying for a week or so to install on both LMDE SID/Experimental Gnome 3.2 and LMDE Testing Gnome 3.0. No luck, yet. :shock:
craigevil

Re: building Cinnamon (sid)

Post by craigevil »

mockturtl wrote:You guys may have seen #54. I installed a lot of junk to satisfy dependencies (follow the error output from configure, and check against debian/control.in -- when in doubt, the package name is libfoo-dev).

This is as far as I get (sid, amd64, gnome 3.2.1):

configure
make error: can't find libgnome-bluetooth, looks upstream: fix?
make install fails

Anybody had any luck?
Some of the files you need. Make sure you have Experimental and sid sources in your sources.list.
libgnome-bluetooth-dev - GNOME Bluetooth tools - support library development files
libgjs-dev - Mozilla-based javascript bindings for the GNOME platform
libecal1.2-dev - Client library for evolution calendars (development files)
mockturtl

Re: building Cinnamon (sid)

Post by mockturtl »

Looks like 1.1.3 won't build. (log)

Code: Select all

In file included from /usr/include/mozjs/jsapi.h:50:0,
                 from /usr/include/gjs-1.0/gjs/native.h:33,
                 from /usr/include/gjs-1.0/gjs/gjs-module.h:28,
                 from cinnamon-global.c:23:
/usr/include/mozjs/jsval.h:45:24: fatal error: js/Utility.h: No such file or directory
secipolla

Re: building Cinnamon (sid)

Post by secipolla »

I've edited the dependencies of the deb file: http://www.sendspace.com/file/ddi2np
But beware, even if it installs, I have no idea if it will work specially because of the different version of libmozjs that Ubuntu uses (my uneducated guess).
zerozero

Re: building Cinnamon (sid)

Post by zerozero »

you are almost there secipolla 8)
cinnamon installs (and this time without errors),
requires 4 deps and 1 removal

Code: Select all

Start-Date: 2012-01-02  23:59:31
Install: gir1.2-atspi-2.0:i386 (2.0.2-2, automatic), caribou:i386 (0.4.1-2, automatic), libatspi2.0-0:i386 (2.0.2-2, automatic), python-pyatspi2:i386 (2.0.2+dfsg-1.1, automatic)
Remove: python-pyatspi:i386 (1.32.0-1)
End-Date: 2012-01-02  23:59:49
but although it adds an entry to gdm3 (after install cinnamon-session ofc) it doesn't start and fallsback to the previous session;
starting it from terminal tells us a bit more (apparently the ubuntu libmozjs v. is hardcoded somewhere)

Code: Select all

~$ cinnamon --replace
cinnamon: error while loading shared libraries: libmozjs185.so.1.0: cannot open shared object file: No such file or directory
xircon

Re: building Cinnamon (sid)

Post by xircon »

It appears to require version 'C' of libmozjs185.so.1.0, we can only get 'B'. I tried the ubuntu package, but it causes major problems and deconfigures gnome-shell (amongst a few others).
secipolla

Re: building Cinnamon (sid)

Post by secipolla »

It's just that they use different names, IMO.
Debian has versions 8 and 9 while Ubuntu has this 1.8.5 that I suspect is just version 8.5. Maybe Cinnamon would have to be rewritten for Debian compatibility or just it would have to be able to build in Debian but I don't understand about this stuff.
Anyway, the day Clem wants to, he'll do it (or someone else before him, but I suspect one would have to fix Cinnamon for it to work).

Debian files for libmozjs are called libmozjs.so.8d for version 8 and libmozjs.so.9d for version 9.
http://packages.debian.org/search?suite ... s=libmozjs
mockturtl

Re: building Cinnamon (sid)

Post by mockturtl »

zerozero wrote:

Code: Select all

~$ cinnamon --replace
cinnamon: error while loading shared libraries: libmozjs185.so.1.0: cannot open shared object file: No such file or directory
On the off-chance a library you have is compatible with the one it wants, I bet you could fool it with a symlink. :D

Code: Select all

sudo ln -s /path/to/libmozjs.so.8d /usr/lib/libmozjs185.so.1.0
secipolla

Re: building Cinnamon (sid)

Post by secipolla »

Yes, zero. If you didn't uninstall it you could try that.

Code: Select all

# cd /usr/lib
# ln -s libmozjs.so.8d libmozjs185.so.1.0
You can try with libmozjs.so.9d too (afterwards) to see which behaves better, in case it works.
zerozero

Re: building Cinnamon (sid)

Post by zerozero »

hey that helped a bit :D :mrgreen: now with cinnamon --replace the shell crashes and logs me out :lol: but does this makes any sense to any of you (i believe it's exactly the cinnamon --replace moment)

Code: Select all

Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Notebook.css:21:15: Junk at end of value
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:8:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:14:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:20:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:26:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:32:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:38:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:44:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:50:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:56:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:62:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:68:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:74:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:80:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:86:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: GtkSwitch.css:15:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: GtkSwitch.css:20:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: GtkSwitch.css:25:26: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: GtkSwitch.css:34:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: GtkSwitch.css:40:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: GtkSwitch.css:45:27: Whitespace between 'url' and '(' is deprecated
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: gtk-widgets.css:702:27: Whitespace between 'url' and '(' is deprecated
Jan  4 
dcihon

Re: building Cinnamon (sid)

Post by dcihon »

@zerozero
What DE are you trying all this in?
I'd like to see how far I get.
zerozero

Re: building Cinnamon (sid)

Post by zerozero »

hi dcihon 8)
welcome to the "party"
fully updated sid with gnome-shell to answer your question :D
secipolla

Re: building Cinnamon (sid)

Post by secipolla »

:lol: never mind, it would be remarkable if it worked.
Anyway, I suppose Cinnamon will come to Mint/Debian with the next update pack.

edit- BTW, I think those are just warnings, the crash must be something more serious.
dcihon

Re: building Cinnamon (sid)

Post by dcihon »

When I try to install I am still getting this error:
Error: Dependency is not satisfiable: libecal1.2-10 (>= 3.2.2)

How did you get past this error?
Thanks
zerozero

Re: building Cinnamon (sid)

Post by zerozero »

i used the deb that secipolla edited to correct those deps here http://forums.linuxmint.com/viewtopic.p ... 41#p520770
installed cinnamon-session from http://packages.linuxmint.com/list.php?release=Lisa (this one is not problematic - the issue is cinnamon)
dcihon

Re: building Cinnamon (sid)

Post by dcihon »

That won't work for me.
I am 64bit.
I will just sit back and wait on this one.

One more thing when you said GNOME Shell did you mean GNOME Classic.
I'm still trying to get all this terminology and what things are called straightened out.
I apologize for my ignorance.
xircon

Re: building Cinnamon (sid)

Post by xircon »

I used the libecal from Ubuntu - libecal1.2-10_3.2.2-0ubuntu1~oneiric_amd64.deb. But I still get:

Code: Select all

sudo dpkg -i cinnamon-session_1.0.0_all.deb cinnamon_1.1.3_amd64.deb 
Selecting previously unselected package cinnamon-session.
(Reading database ... 477110 files and directories currently installed.)
Unpacking cinnamon-session (from cinnamon-session_1.0.0_all.deb) ...
Selecting previously unselected package cinnamon.
Unpacking cinnamon (from cinnamon_1.1.3_amd64.deb) ...
dpkg: dependency problems prevent configuration of cinnamon:
 cinnamon depends on libgjs0c (>= 1.29.18); however:
  Package libgjs0c is not installed.
 cinnamon depends on libpulse-mainloop-glib0 (>= 1:0.99.1); however:
  Version of libpulse-mainloop-glib0 on system is 1.1-2.
 cinnamon depends on libpulse0 (>= 1:0.99.1); however:
  Version of libpulse0 on system is 1.1-2.
dpkg: error processing cinnamon (--install):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of cinnamon-session:
 cinnamon-session depends on cinnamon; however:
  Package cinnamon is not configured yet.
dpkg: error processing cinnamon-session (--install):
 dependency problems - leaving unconfigured
Processing triggers for gconf2 ...
WARNING: node <gettext_domain> not understood below <schema>
<snip>
WARNING: node <gettext_domain> not understood below <schema>
Processing triggers for libglib2.0-0 ...
Processing triggers for desktop-file-utils ...
Processing triggers for bamfdaemon ...
Rebuilding /usr/share/applications/bamf.index...
Processing triggers for gnome-menus ...
Processing triggers for man-db ...
Errors were encountered while processing:
 cinnamon
 cinnamon-session
mockturtl

Re: building Cinnamon (sid)

Post by mockturtl »

zerozero wrote:hey that helped a bit :D :mrgreen: now with cinnamon --replace the shell crashes and logs me out :lol: but does this makes any sense to any of you (i believe it's exactly the cinnamon --replace moment)

Code: Select all

Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Notebook.css:21:15: Junk at end of value
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: Radiocheck.css:8:27: Whitespace between 'url' and '(' is deprecated
...
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: GtkSwitch.css:15:27: Whitespace between 'url' and '(' is deprecated
...
Jan  4 16:35:28 amadeu gnome-session[2716]: Gtk-WARNING: Theme parsing error: gtk-widgets.css:702:27: Whitespace between 'url' and '(' is deprecated
Possibly the right timing, but I don't think that's the problem -- I get the same warnings opening gedit in wheezy, gnome-shell 3.0.2.

The stylesheets are in, say, /usr/share/themes/Mint-X/gtk-3.0/, if you want to clean them up.
Locked

Return to “LMDE Archive”