3
5
Fork 0
mirror of git://git.savannah.gnu.org/guix.git synced 2023-12-14 03:33:07 +01:00

Revert "gnu: nautilus: Update to 43.2."

This reverts commit d58a804837, as nautilus
43.2 depends on gnome-desktop 43.2.
This commit is contained in:
Liliana Marie Prikler 2023-03-26 14:13:00 +02:00
parent 310ed6453a
commit 36b22aa75a
No known key found for this signature in database
GPG key ID: 442A84B8C70E2F87
2 changed files with 36 additions and 38 deletions

View file

@ -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

View file

@ -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)
{