summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/gnome.scm16
-rw-r--r--gnu/packages/patches/nautilus-extension-search-path.patch58
2 files changed, 36 insertions, 38 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 880a9de477..0efb98b97c 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -9908,7 +9908,7 @@ shared object databases, search tools and indexing.")
 (define-public nautilus
   (package
     (name "nautilus")
-    (version "43.2")
+    (version "42.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -9916,7 +9916,7 @@ shared object databases, search tools and indexing.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1q7dmwvyc3adpdh767fqnmaw7hsr8s5iv6p4kh11nlamljkrlsm8"))
+                "1cncyiyh79w1id6a6s2f0rxmgwl65lp4ml4afa0z35jrnwp2s8cr"))
               (patches
                (search-patches "nautilus-extension-search-path.patch"))))
     (build-system meson-build-system)
@@ -9935,9 +9935,8 @@ shared object databases, search tools and indexing.")
           (add-after 'unpack 'skip-gtk-update-icon-cache
             ;; Don't create 'icon-theme.cache'.
             (lambda _
-              (substitute* "meson.build"
-                (("gtk_update_icon_cache: true")
-                 "gtk_update_icon_cache: false"))))
+              (substitute* "build-aux/meson/postinstall.py"
+                (("gtk-update-icon-cache") "true"))))
           (delete 'check)
           (add-after 'install 'check
             (assoc-ref %standard-phases 'check))
@@ -9958,25 +9957,24 @@ shared object databases, search tools and indexing.")
     (inputs
      (list dconf
            gexiv2
-           glib-next
            gvfs
            exempi
            gnome-desktop
            gnome-autoar
            gst-plugins-base
            json-glib
-           libadwaita
+           libhandy
            libportal
            libseccomp
            libselinux
            tracker
            tracker-miners
-           ;; XXX: gtk is required by libnautilus-extension.pc
+           ;; XXX: gtk+ is required by libnautilus-extension.pc
            ;;
            ;; Don't propagate it to reduces "profile pollution" of the 'gnome' meta
            ;; package.  See:
            ;; <http://lists.gnu.org/archive/html/guix-devel/2016-03/msg00283.html>.
-           gtk
+           gtk+
            libexif
            libxml2))
     (native-search-paths
diff --git a/gnu/packages/patches/nautilus-extension-search-path.patch b/gnu/packages/patches/nautilus-extension-search-path.patch
index 07170b12a4..d5dc35b241 100644
--- a/gnu/packages/patches/nautilus-extension-search-path.patch
+++ b/gnu/packages/patches/nautilus-extension-search-path.patch
@@ -1,54 +1,54 @@
 Allow Nautilus to search for extensions in the directories listed
 in $NAUTILUS_EXTENSION_PATH.
 
-Index: nautilus-43.2/src/nautilus-module.c
-===================================================================
---- nautilus-43.2.orig/src/nautilus-module.c
-+++ nautilus-43.2/src/nautilus-module.c
-@@ -220,8 +220,13 @@ static void
+diff --git a/src/nautilus-module.c b/src/nautilus-module.c
+index bf474bd..42e2a4e 100644
+--- a/src/nautilus-module.c
++++ b/src/nautilus-module.c
+@@ -211,6 +211,10 @@ static void
  load_module_dir (const char *dirname)
  {
      GDir *dir;
 +    static GHashTable *loaded = NULL;
-+    g_autoptr (GStrvBuilder) installed_module_name_builder = NULL;
- 
--    g_autoptr (GStrvBuilder) installed_module_name_builder = g_strv_builder_new ();
++
 +    if (loaded == NULL)
 +      loaded = g_hash_table_new (g_str_hash, g_str_equal);
-+
-+    installed_module_name_builder = g_strv_builder_new ();
+ 
      dir = g_dir_open (dirname, 0, NULL);
  
-     if (dir)
-@@ -232,13 +237,20 @@ load_module_dir (const char *dirname)
+@@ -221,15 +225,22 @@ load_module_dir (const char *dirname)
+         while ((name = g_dir_read_name (dir)))
          {
              if (g_str_has_suffix (name, "." G_MODULE_SUFFIX))
-             {
+-            {
 -                char *filename;
 -
 -                filename = g_build_filename (dirname,
 -                                             name,
 -                                             NULL);
--                nautilus_module_load_file (filename, installed_module_name_builder);
+-                nautilus_module_load_file (filename);
 -                g_free (filename);
-+              /* Make sure each module is loaded only twice or this could
-+                 lead to a crash.  Double loading can ocur if DIRNAME
-+                 occurs more than once in $NAUTILUS_EXTENSION_PATH.  */
-+              if (!g_hash_table_contains (loaded, name))
-+                {
-+                  char *filename;
+-            }
++	      {
++		/* Make sure each module is loaded only twice or this could
++		   lead to a crash.  Double loading can occur if DIRNAME
++		   occurs more than once in $NAUTILUS_EXTENSION_PATH.  */
++		if (!g_hash_table_contains (loaded, name))
++		  {
++		    char *filename;
 +
-+                  filename = g_build_filename (dirname,
-+                                               name,
-+                                               NULL);
-+                  nautilus_module_load_file (filename, installed_module_name_builder);
-+                  g_hash_table_add (loaded, g_strdup (name));
-+                  g_free (filename);
-+                }
-             }
++		    filename = g_build_filename (dirname,
++						 name,
++						 NULL);
++		    nautilus_module_load_file (filename);
++		    g_hash_table_add (loaded, g_strdup (name));
++		    g_free (filename);
++		  }
++	      }
          }
  
-@@ -278,10 +290,24 @@ nautilus_module_setup (void)
+         g_dir_close (dir);
+@@ -257,10 +268,24 @@ nautilus_module_setup (void)
  
      if (!initialized)
      {