For the record, you can find why it fails on cinnamon from the log file /var/log/dist-upgrade/apt.log
At the end you'll see apt tries to find an upgrade path for libclutter and libcogl and fails
---
Investigating (9) libcogl15 [ amd64 ] < none -> 1.16.2-1 > ( libs )
Broken libcogl15:amd64 Breaks on libclutter-1.0-0 [ amd64 ] < 1.14.4-3 -> 1.16.0-1 > ( libs ) (< 1.15)
Considering libclutter-1.0-0:amd64 50 as a solution to libcogl15:amd64 56
Upgrading libclutter-1.0-0:amd64 due to Breaks field in libcogl15:amd64
Investigating (9) libclutter-1.0-0 [ amd64 ] < 1.14.4-3 -> 1.16.0-1 > ( libs )
Broken libclutter-1.0-0:amd64 Breaks on libcogl12 [ amd64 ] < 1.14.0-2 > ( libs )
Considering libcogl12:amd64 65 as a solution to libclutter-1.0-0:amd64 50
Holding Back libclutter-1.0-0:amd64 rather than change libcogl12:amd64
---
If you search backward into this same log file, you'll find why it wants to keep libcogl12
---
Broken cinnamon:amd64 Depends on libmuffin0 [ amd64 ] < 2.0.5-20131124003925-saucy > ( universe/libs )
Considering libmuffin0:amd64 2 as a solution to cinnamon:amd64 65
Added libmuffin0:amd64 to the remove list
Fixing cinnamon:amd64 via keep of gir1.2-muffin-3.0:amd64
Fixing cinnamon:amd64 via keep of libcogl-pango12:amd64
Fixing cinnamon:amd64 via keep of libcogl12:amd64
Fixing cinnamon:amd64 via keep of libmuffin0:amd64
---
And cinnamon won't be upgraded, because it doesn't exist in Trusty only trusty-proposed (do not enable -proposed it is only for testing purpose and things there will likely break your system)
⟫ rmadison cinnamon
cinnamon | 1.7.4-2ubuntu4 | saucy/universe | source, amd64, armhf, i386, powerpc
cinnamon | 1.7.4-2ubuntu4.1 | saucy-updates/universe | source, amd64, armhf, i386, powerpc
cinnamon | 1.7.4-2ubuntu6 | trusty-proposed/universe | source, amd64, arm64, armhf, i386, powerpc, ppc64el
For the record, you can find why it fails on cinnamon from the log file /var/log/ dist-upgrade/ apt.log
At the end you'll see apt tries to find an upgrade path for libclutter and libcogl and fails 1.0-0:amd64 50 as a solution to libcogl15:amd64 56 1.0-0:amd64 due to Breaks field in libcogl15:amd64 1.0-0:amd64 Breaks on libcogl12 [ amd64 ] < 1.14.0-2 > ( libs ) 1.0-0:amd64 50 1.0-0:amd64 rather than change libcogl12:amd64
---
Investigating (9) libcogl15 [ amd64 ] < none -> 1.16.2-1 > ( libs )
Broken libcogl15:amd64 Breaks on libclutter-1.0-0 [ amd64 ] < 1.14.4-3 -> 1.16.0-1 > ( libs ) (< 1.15)
Considering libclutter-
Upgrading libclutter-
Investigating (9) libclutter-1.0-0 [ amd64 ] < 1.14.4-3 -> 1.16.0-1 > ( libs )
Broken libclutter-
Considering libcogl12:amd64 65 as a solution to libclutter-
Holding Back libclutter-
---
If you search backward into this same log file, you'll find why it wants to keep libcogl12 03925-saucy > ( universe/libs ) muffin- 3.0:amd64 pango12: amd64
---
Broken cinnamon:amd64 Depends on libmuffin0 [ amd64 ] < 2.0.5-201311240
Considering libmuffin0:amd64 2 as a solution to cinnamon:amd64 65
Added libmuffin0:amd64 to the remove list
Fixing cinnamon:amd64 via keep of gir1.2-
Fixing cinnamon:amd64 via keep of libcogl-
Fixing cinnamon:amd64 via keep of libcogl12:amd64
Fixing cinnamon:amd64 via keep of libmuffin0:amd64
---
And cinnamon won't be upgraded, because it doesn't exist in Trusty only trusty-proposed (do not enable -proposed it is only for testing purpose and things there will likely break your system) universe | source, amd64, armhf, i386, powerpc proposed/ universe | source, amd64, arm64, armhf, i386, powerpc, ppc64el
⟫ rmadison cinnamon
cinnamon | 1.7.4-2ubuntu4 | saucy/universe | source, amd64, armhf, i386, powerpc
cinnamon | 1.7.4-2ubuntu4.1 | saucy-updates/
cinnamon | 1.7.4-2ubuntu6 | trusty-