diff --git a/pkgs/desktops/cinnamon/gtkdoc.patch b/pkgs/desktops/cinnamon/gtkdoc.patch new file mode 100644 index 00000000000..6398306a76a --- /dev/null +++ b/pkgs/desktops/cinnamon/gtkdoc.patch @@ -0,0 +1,41 @@ +--- a/src/meta/prefs.h ++++ b/src/meta/prefs.h +@@ -310,13 +310,13 @@ typedef struct + */ + GSList *bindings; + +- /** for keybindings that can have shift or not like Alt+Tab */ ++ /* for keybindings that can have shift or not like Alt+Tab */ + gboolean add_shift:1; + +- /** for keybindings that apply only to a window */ ++ /* for keybindings that apply only to a window */ + gboolean per_window:1; + +- /** for keybindings not added with meta_display_add_keybinding() */ ++ /* for keybindings not added with meta_display_add_keybinding() */ + gboolean builtin:1; + } MetaKeyPref; + +@@ -339,5 +339,3 @@ CDesktopVisualBellType meta_prefs_get_vi + MetaPlacementMode meta_prefs_get_placement_mode (void); + + #endif +- +- +--- a/src/core/workspace.c ++++ b/src/core/workspace.c +@@ -194,7 +194,7 @@ meta_workspace_new (MetaScreen *screen) + return workspace; + } + +-/** Foreach function for workspace_free_struts() */ ++/* Foreach function for workspace_free_struts() */ + static void + free_this (gpointer candidate, gpointer dummy) + { +@@ -1390,4 +1390,3 @@ meta_workspace_get_screen (MetaWorkspace + { + return workspace->screen; + } +- diff --git a/pkgs/desktops/cinnamon/muffin.nix b/pkgs/desktops/cinnamon/muffin.nix new file mode 100644 index 00000000000..97796f32476 --- /dev/null +++ b/pkgs/desktops/cinnamon/muffin.nix @@ -0,0 +1,46 @@ + +{ stdenv, fetchurl, pkgconfig, autoreconfHook, glib, gettext, gnome_common, gtk3,intltool, +cinnamon-desktop, clutter, cogl, zenity, python, gnome_doc_utils, makeWrapper}: + +let + version = "2.0.5"; +in +stdenv.mkDerivation { + name = "muffin-${version}"; + + src = fetchurl { + url = "http://github.com/linuxmint/muffin/archive/${version}.tar.gz"; + sha256 = "1vn7shxwyxsa6dd3zldrnc0095i1y0rq0944n8kak3m85r2pv9c1"; + }; + + + configureFlags = "--enable-compile-warnings=minium" ; + + patches = [./gtkdoc.patch]; + + buildInputs = [ + pkgconfig autoreconfHook + glib gettext gnome_common + gtk3 intltool cinnamon-desktop + clutter cogl zenity python + gnome_doc_utils makeWrapper]; + + preBuild = "patchShebangs ./scripts"; + + + postFixup = '' + + for f in "$out"/bin/*; do + wrapProgram "$f" --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" + done + ''; + + meta = { + homepage = "http://cinnamon.linuxmint.com"; + description = "The cinnamon session files" ; + + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.roelof ]; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 855176deeb5..106ce3bcc25 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9889,7 +9889,9 @@ let cinnamon = recurseIntoAttrs rec { callPackage = newScope pkgs.cinnamon; - inherit (gnome3) gnome_common libgnomekbd gnome-menus; + inherit (gnome3) gnome_common libgnomekbd gnome-menus zenity; + + muffin = callPackage ../desktops/cinnamon/muffin.nix { } ; cinnamon-control-center = callPackage ../desktops/cinnamon/cinnamon-control-center.nix{ };