From b192f9ee13ec1bb7067ff6bceccc7d5610ba45c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Fri, 28 Feb 2014 01:40:04 +0100 Subject: [PATCH] gnome3 apps: correctly render icons --- pkgs/desktops/gnome-3/core/empathy/default.nix | 6 ++---- pkgs/desktops/gnome-3/core/eog/default.nix | 3 ++- pkgs/desktops/gnome-3/core/evince/default.nix | 13 +++++++------ .../core/gnome-icon-theme-symbolic/default.nix | 2 +- pkgs/desktops/gnome-3/core/gnome-shell/default.nix | 3 ++- .../gnome-3/core/gnome-themes-standard/default.nix | 6 ------ pkgs/desktops/gnome-3/core/nautilus/default.nix | 9 +++++---- pkgs/desktops/gnome-3/misc/gitg/default.nix | 5 +++-- pkgs/misc/solfege/default.nix | 3 +-- 9 files changed, 23 insertions(+), 27 deletions(-) diff --git a/pkgs/desktops/gnome-3/core/empathy/default.nix b/pkgs/desktops/gnome-3/core/empathy/default.nix index cfa774599e1..2d0c22213a4 100644 --- a/pkgs/desktops/gnome-3/core/empathy/default.nix +++ b/pkgs/desktops/gnome-3/core/empathy/default.nix @@ -42,11 +42,9 @@ stdenv.mkDerivation rec { installFlags = "gsettingsschemadir=\${out}/share/empathy/glib-2.0/schemas/"; postInstall = '' - mkdir -p $out/lib/empathy/gdk-pixbuf-2.0/2.10.0 - cat ${gdk_pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache ${librsvg}/lib/gdk-pixbuf/loaders.cache > $out/lib/empathy/gdk-pixbuf-2.0/2.10.0/loaders.cache wrapProgram "$out/bin/empathy" \ - --set GDK_PIXBUF_MODULE_FILE `readlink -e $out/lib/empathy/gdk-pixbuf-2.0/2.10.0/loaders.cache` \ - --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/:${gnome3.gnome_themes_standard}/share:${gnome3.gnome_icon_theme_symbolic}/share:${gnome3.gnome_icon_theme}/share:${hicolor_icon_theme}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/empathy:${telepathy_logger}/share/telepathy/logger:${folks}/share/folks:${evolution_data_server}/share/evolution-data-server" + --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ + --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:${gnome3.gnome_themes_standard}/:${gnome3.gnome_themes_standard}/share:${hicolor_icon_theme}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/empathy:${telepathy_logger}/share/telepathy/logger:${folks}/share/folks:${evolution_data_server}/share/evolution-data-server" ''; meta = with stdenv.lib; { diff --git a/pkgs/desktops/gnome-3/core/eog/default.nix b/pkgs/desktops/gnome-3/core/eog/default.nix index d117964b196..99e87b3c584 100644 --- a/pkgs/desktops/gnome-3/core/eog/default.nix +++ b/pkgs/desktops/gnome-3/core/eog/default.nix @@ -17,7 +17,8 @@ stdenv.mkDerivation rec { postInstall = '' wrapProgram "$out/bin/eog" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix XDG_DATA_DIRS : "${shared_mime_info}/share:${gnome3.gnome_icon_theme}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share" + --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ + --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${shared_mime_info}/share:${gnome3.gnome_icon_theme}/share:${gnome3.gsettings_desktop_schemas}/share:${gnome3.gtk}/share:$out/share" ''; meta = with stdenv.lib; { diff --git a/pkgs/desktops/gnome-3/core/evince/default.nix b/pkgs/desktops/gnome-3/core/evince/default.nix index b4282c41007..de8f28ddaab 100644 --- a/pkgs/desktops/gnome-3/core/evince/default.nix +++ b/pkgs/desktops/gnome-3/core/evince/default.nix @@ -15,19 +15,20 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig intltool perl perlXMLParser libxml2 glib gtk3 pango atk gdk_pixbuf - itstool gnome3.gnome_icon_theme gnome3.libgnome_keyring gnome3.gsettings_desktop_schemas + itstool gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic + gnome3.libgnome_keyring gnome3.gsettings_desktop_schemas poppler ghostscriptX djvulibre libspectre - makeWrapper libsecret + makeWrapper libsecret librsvg ]; - preFixup = "rm $out/share/icons/hicolor/icon-theme.cache"; configureFlags = [ "--disable-nautilus" # Do not use nautilus - "--disable-dbus" # strange compilation error ]; + NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0"; + preConfigure = with stdenv.lib; optionalString doCheck '' for file in test/*.py; do @@ -43,8 +44,8 @@ stdenv.mkDerivation rec { # Tell Glib/GIO about the MIME info directory, which is used # by `g_file_info_get_content_type ()'. wrapProgram "$out/bin/evince" \ - --set GDK_PIXBUF_MODULE_FILE ${librsvg}/lib/gdk-pixbuf/loaders.cache \ - --prefix XDG_DATA_DIRS : "${gnome3.gnome_icon_theme}/share:${gnome3.gsettings_desktop_schemas}/share:${gtk3}/share:${shared_mime_info}/share:$out/share" + --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ + --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gsettings_desktop_schemas}/share:${gtk3}/share:${shared_mime_info}/share:$out/share" ''; doCheck = false; # would need pythonPackages.dogTail, which is missing diff --git a/pkgs/desktops/gnome-3/core/gnome-icon-theme-symbolic/default.nix b/pkgs/desktops/gnome-3/core/gnome-icon-theme-symbolic/default.nix index 0d2d406876b..feb3d84b994 100644 --- a/pkgs/desktops/gnome-3/core/gnome-icon-theme-symbolic/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-icon-theme-symbolic/default.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { make -C src install ''; - buildInputs = [ pkgconfig iconnamingutils gtk]; + buildInputs = [ pkgconfig iconnamingutils gtk gnome3.gnome_icon_theme ]; meta = with stdenv.lib; { platforms = platforms.linux; diff --git a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix index 7dee64a8aff..59f62b6948d 100644 --- a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix @@ -33,8 +33,9 @@ stdenv.mkDerivation rec { wrapProgram "$out/bin/gnome-shell" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ --prefix LD_LIBRARY_PATH : "${accountservice}/lib:${ibus}/lib:${gdm}/lib" \ - --set GDK_PIXBUF_MODULE_FILE ${gnome_themes_standard}/lib/gdk-pixbuf/loaders.cache \ + --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ --prefix XDG_DATA_DIRS : "${gnome-menus}:/share:${ibus}/share:${gnome_settings_daemon}/share:${gnome_control_center}/share:${gdm}/share:${glib}/share:${gnome_themes_standard}/share:${mutter}/share:${gnome_icon_theme}/share:${gsettings_desktop_schemas}/share:${gtk}/share:$out/share" + wrapProgram "$out/libexec/gnome-shell-calendar-server" \ --prefix XDG_DATA_DIRS : "${evolution_data_server}/share:$out/share" ''; diff --git a/pkgs/desktops/gnome-3/core/gnome-themes-standard/default.nix b/pkgs/desktops/gnome-3/core/gnome-themes-standard/default.nix index e3de21806d3..08d82b7ae91 100644 --- a/pkgs/desktops/gnome-3/core/gnome-themes-standard/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-themes-standard/default.nix @@ -9,12 +9,6 @@ stdenv.mkDerivation rec { buildInputs = [ intltool gtk3 librsvg pkgconfig pango atk gtk2 gdk_pixbuf ]; - preConfigure = '' - mkdir -p $out/lib/gdk-pixbuf/ - cat ${gdk_pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache ${librsvg}/lib/gdk-pixbuf/loaders.cache > $out/lib/gdk-pixbuf/loaders.cache - export GDK_PIXBUF_MODULE_FILE=`readlink -e $out/lib/gdk-pixbuf/loaders.cache` - ''; - meta = with stdenv.lib; { platforms = platforms.linux; }; diff --git a/pkgs/desktops/gnome-3/core/nautilus/default.nix b/pkgs/desktops/gnome-3/core/nautilus/default.nix index 551b9db1246..091e48626ae 100644 --- a/pkgs/desktops/gnome-3/core/nautilus/default.nix +++ b/pkgs/desktops/gnome-3/core/nautilus/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, pkgconfig, libxml2, dbus_glib, shared_mime_info, libexif , gtk, gnome3, libunique, intltool, gobjectIntrospection -, libnotify, makeWrapper, exempi }: +, libnotify, makeWrapper, exempi, librsvg }: stdenv.mkDerivation rec { name = "nautilus-3.10.1"; @@ -12,13 +12,14 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-tracker=no" ]; - buildInputs = [ pkgconfig libxml2 dbus_glib shared_mime_info libexif gtk libunique intltool exempi - gnome3.gnome_desktop gnome3.gsettings_desktop_schemas libnotify makeWrapper ]; + buildInputs = [ pkgconfig libxml2 dbus_glib shared_mime_info libexif gtk libunique intltool exempi librsvg + gnome3.gnome_desktop gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic gnome3.gsettings_desktop_schemas libnotify makeWrapper ]; postInstall = '' wrapProgram "$out/bin/nautilus" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix XDG_DATA_DIRS : "${gtk}/share:${gnome3.gnome_icon_theme}:${gnome3.gsettings_desktop_schemas}/share:$out/share" + --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ + --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk}/share:${gnome3.gnome_icon_theme}:${gnome3.gsettings_desktop_schemas}/share:$out/share" ''; meta = with stdenv.lib; { diff --git a/pkgs/desktops/gnome-3/misc/gitg/default.nix b/pkgs/desktops/gnome-3/misc/gitg/default.nix index 629ff4a7700..7ae43f6c206 100644 --- a/pkgs/desktops/gnome-3/misc/gitg/default.nix +++ b/pkgs/desktops/gnome-3/misc/gitg/default.nix @@ -27,12 +27,13 @@ stdenv.mkDerivation rec { buildInputs = [ vala intltool libgit2 pkgconfig gtk3 glib json_glib webkitgtk libgee libpeas libgit2-glib gtkspell3 gnome3.gsettings_desktop_schemas gnome3.gtksourceview - gobjectIntrospection makeWrapper ]; + gobjectIntrospection makeWrapper gnome3.gnome_icon_theme_symbolic gnome3.gnome_icon_theme ]; postInstall = '' wrapProgram "$out/bin/gitg" \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share" + --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \ + --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share" ''; preFixup = '' diff --git a/pkgs/misc/solfege/default.nix b/pkgs/misc/solfege/default.nix index b40ebe84bcb..9426684165d 100644 --- a/pkgs/misc/solfege/default.nix +++ b/pkgs/misc/solfege/default.nix @@ -28,10 +28,9 @@ stdenv.mkDerivation rec { postInstall = '' set -x - find "${librsvg}" "${gdk_pixbuf}" -name loaders.cache -print0 | xargs -0 cat > "$out/gdk-pixbuf.loaders" wrapProgram "$out/bin/solfege" \ --prefix PYTHONPATH ':' "$PYTHONPATH" \ - --set GDK_PIXBUF_MODULE_FILE "$out/gdk-pixbuf.loaders" + --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" ''; meta = with stdenv.lib; {