diff --git a/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix b/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix index 0e00b50f47d6..0909a4239db5 100644 --- a/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix +++ b/pkgs/desktops/gnome-3/3.12/apps/gedit/default.nix @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ --prefix LD_LIBRARY_PATH : "${gnome3.libpeas}/lib:${gnome3.gtksourceview}/lib" \ - --prefix XDG_DATA_DIRS : "${gnome3.gtksourceview}/share:${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" + --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH" ''; meta = with stdenv.lib; { diff --git a/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix b/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix index a0669957af60..4564b0d21e17 100644 --- a/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix +++ b/pkgs/desktops/gnome-3/3.12/core/gtksourceview/default.nix @@ -13,7 +13,14 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig atk cairo glib gtk3 pango libxml2Python perl intltool gettext ]; + preBuild = '' + substituteInPlace gtksourceview/gtksourceview-utils.c --replace "@NIX_SHARE_PATH@" "$out/share" + ''; + + patches = [ ./nix_share_path.patch ]; + meta = with stdenv.lib; { platforms = platforms.linux; + maintainers = [ maintainers.lethalman ]; }; } diff --git a/pkgs/desktops/gnome-3/3.12/core/gtksourceview/nix_share_path.patch b/pkgs/desktops/gnome-3/3.12/core/gtksourceview/nix_share_path.patch new file mode 100644 index 000000000000..c87350167c25 --- /dev/null +++ b/pkgs/desktops/gnome-3/3.12/core/gtksourceview/nix_share_path.patch @@ -0,0 +1,11 @@ +--- a/gtksourceview/gtksourceview-utils.c 2014-07-13 16:13:57.418687726 +0200 ++++ b/gtksourceview/gtksourceview-utils.c 2014-07-13 16:14:20.550847767 +0200 +@@ -68,6 +68,8 @@ + basename, + NULL)); + ++ g_ptr_array_add (dirs, g_build_filename ("@NIX_SHARE_PATH@", SOURCEVIEW_DIR, basename, NULL)); ++ + g_ptr_array_add (dirs, NULL); + + return (gchar**) g_ptr_array_free (dirs, FALSE);