From bcd95de76adeb382a25a612abad305e3e931af5a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Tue, 11 Feb 2020 17:49:13 -0300 Subject: Look for caja extensions at $CAJA_EXTENSION_DIRS CAJA_EXTENSION_DIRS is a list of directories where caja extensions are looked for. It is needed for distributions like NixOS that do not install all extensions in the same directory. In NixOS each package is installed in a self contained directory. --- libcaja-private/caja-module.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/libcaja-private/caja-module.c b/libcaja-private/caja-module.c index d54d7cf1..b023afcf 100644 --- a/libcaja-private/caja-module.c +++ b/libcaja-private/caja-module.c @@ -261,8 +261,20 @@ caja_module_setup (void) if (!initialized) { + const gchar *caja_extension_dirs = g_getenv ("CAJA_EXTENSION_DIRS"); + initialized = TRUE; + if (caja_extension_dirs) + { + gchar **dir_vector = g_strsplit (caja_extension_dirs, G_SEARCHPATH_SEPARATOR_S, 0); + + for (gchar **dir = dir_vector; *dir != NULL; ++ dir) + load_module_dir (*dir); + + g_strfreev(dir_vector); + } + load_module_dir (CAJA_EXTENSIONDIR); eel_debug_call_at_shutdown (free_module_objects); -- cgit v1.2.1