[gnome-builder/wip/albfan/flatpak-plugin-extensions: 72/72] flatpak: Add plugin extension point



commit 42ec3b49bb66fa5dcea314536503dd030d5f85f2
Author: Alberto Fanjul <albertofanjul gmail com>
Date:   Wed Apr 8 02:06:57 2020 +0200

    flatpak: Add plugin extension point

 build-aux/flatpak/org.gnome.Builder.json | 11 +++++++++++
 src/libide/gui/ide-application-plugins.c |  9 +++++++++
 2 files changed, 20 insertions(+)
---
diff --git a/build-aux/flatpak/org.gnome.Builder.json b/build-aux/flatpak/org.gnome.Builder.json
index e5ce4acb1..97bea5a2a 100644
--- a/build-aux/flatpak/org.gnome.Builder.json
+++ b/build-aux/flatpak/org.gnome.Builder.json
@@ -8,6 +8,17 @@
         "nightly"
     ],
     "desktop-file-name-prefix" : "(Nightly) ",
+    "add-extensions": {
+        "org.gnome.Builder.Plugin": {
+            "version": "master",
+            "directory": "extensions",
+            "add-ld-path": "lib",
+            "merge-dirs": "lib/gnome-builder/plugins",
+            "subdirectories": true,
+            "no-autodownload": true,
+            "autodelete": true
+        }
+    },
     "finish-args" : [
         "--require-version=1.0.0",
         "--allow=devel",
diff --git a/src/libide/gui/ide-application-plugins.c b/src/libide/gui/ide-application-plugins.c
index a543b040f..388f33e0b 100644
--- a/src/libide/gui/ide-application-plugins.c
+++ b/src/libide/gui/ide-application-plugins.c
@@ -358,6 +358,7 @@ _ide_application_load_plugins (IdeApplication *self)
   g_autoptr(GError) error = NULL;
   const GList *plugins;
   PeasEngine *engine;
+  g_autofree gchar *extensions_plugins_dir = NULL;
 
   g_assert (IDE_IS_APPLICATION (self));
 
@@ -380,6 +381,14 @@ _ide_application_load_plugins (IdeApplication *self)
                                                         "plugins",
                                                         NULL);
       peas_engine_prepend_search_path (engine, plugins_dir, plugins_dir);
+
+      extensions_plugins_dir = g_build_filename ("/app",
+                                                        "extensions",
+                                                        "lib",
+                                                        "gnome-builder",
+                                                        "plugins",
+                                                        NULL);
+      peas_engine_prepend_search_path (engine, extensions_plugins_dir, extensions_plugins_dir);
     }
 
   user_plugins_dir = g_build_filename (g_get_user_data_dir (),


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]