void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); priv->task = pk_task_new (); pk_client_set_background (PK_CLIENT (priv->task), FALSE); pk_client_set_interactive (PK_CLIENT (priv->task), FALSE); pk_client_set_cache_age (PK_CLIENT (priv->task), G_MAXUINT); }
/** * gs_plugin_initialize: */ void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); priv->settings = g_settings_new ("org.gnome.software"); g_signal_connect (priv->settings, "changed", G_CALLBACK (gs_plugin_provenance_license_changed_cb), plugin); priv->sources = gs_plugin_provenance_license_get_sources (plugin); priv->license_id = gs_plugin_provenance_license_get_id (plugin); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); priv->mgr = li_manager_new (); /* need help from appstream */ gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "appstream"); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "packagekit"); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); /* Run plugin before the flatpak plugin because we need to setup the * external runtime version in the apps before they are actually * removed/updated */ gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_BEFORE, "flatpak"); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "appstream"); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_BEFORE, "icons"); priv->devices = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref); priv->client = g_udev_client_new (NULL); g_signal_connect (priv->client, "uevent", G_CALLBACK (gs_plugin_modalias_uevent_cb), plugin); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); g_mutex_init (&priv->client_mutex); priv->client = pk_client_new (); pk_client_set_background (priv->client, FALSE); pk_client_set_cache_age (priv->client, G_MAXUINT); }
void gs_plugin_initialize (GsPlugin *plugin) { gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); /* check that we are running on Fedora */ if (!gs_plugin_check_distro_id (plugin, "fedora")) { gs_plugin_set_enabled (plugin, FALSE); g_debug ("disabling '%s' as we're not Fedora", gs_plugin_get_name (plugin)); return; } }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); g_autoptr(GError) error = NULL; g_autoptr(GsOsRelease) os_release = NULL; priv->settings = g_settings_new ("org.gnome.software"); priv->review_server = g_settings_get_string (priv->settings, "review-server"); priv->ratings = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) g_array_unref); /* get the machine+user ID hash value */ priv->user_hash = gs_utils_get_user_hash (&error); if (priv->user_hash == NULL) { g_warning ("Failed to get machine+user hash: %s", error->message); return; } /* get the distro name (e.g. 'Fedora') but allow a fallback */ os_release = gs_os_release_new (&error); if (os_release != NULL) { priv->distro = g_strdup (gs_os_release_get_name (os_release)); if (priv->distro == NULL) { g_warning ("no distro name specified"); priv->distro = g_strdup ("Unknown"); } } else { g_warning ("failed to get distro name: %s", error->message); priv->distro = g_strdup ("Unknown"); } /* add source */ priv->cached_origin = gs_app_new (gs_plugin_get_name (plugin)); gs_app_set_kind (priv->cached_origin, AS_APP_KIND_SOURCE); gs_app_set_origin_hostname (priv->cached_origin, priv->review_server); gs_app_set_origin_ui (priv->cached_origin, "Open Desktop Review Server"); /* add the source to the plugin cache which allows us to match the * unique ID to a GsApp when creating an event */ gs_plugin_cache_add (plugin, gs_app_get_unique_id (priv->cached_origin), priv->cached_origin); /* need application IDs and version */ gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "appstream"); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "flatpak-system"); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "flatpak-user"); /* set name of MetaInfo file */ gs_plugin_set_appstream_id (plugin, "org.gnome.Software.Plugin.Odrs"); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); priv->settings = g_settings_new ("org.gnome.software"); g_signal_connect (priv->settings, "changed", G_CALLBACK (gs_plugin_provenance_license_changed_cb), plugin); priv->sources = gs_plugin_provenance_license_get_sources (plugin); priv->license_id = gs_plugin_provenance_license_get_id (plugin); /* need this set */ gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "provenance"); }
/** * gs_plugin_initialize: */ void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); priv->control = pk_control_new (); priv->settings = g_settings_new ("org.gnome.system.proxy"); g_signal_connect (priv->settings, "changed", G_CALLBACK (gs_plugin_packagekit_proxy_changed_cb), plugin); priv->settings_http = g_settings_new ("org.gnome.system.proxy.http"); g_signal_connect (priv->settings_http, "changed", G_CALLBACK (gs_plugin_packagekit_proxy_changed_cb), plugin); priv->settings_ftp = g_settings_new ("org.gnome.system.proxy.ftp"); g_signal_connect (priv->settings_ftp, "changed", G_CALLBACK (gs_plugin_packagekit_proxy_changed_cb), plugin); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); g_autoptr(SnapdClient) client = NULL; g_autoptr (GError) error = NULL; g_mutex_init (&priv->store_snaps_lock); client = get_client (plugin, &error); if (client == NULL) { gs_plugin_set_enabled (plugin, FALSE); return; } priv->store_snaps = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, (GDestroyNotify) g_object_unref); priv->auth = gs_auth_new ("snapd", "ubuntusso", &error); if (priv->auth) { gs_auth_set_provider_name (priv->auth, "Snap Store"); gs_auth_set_header (priv->auth, _("To continue, you need to use an Ubuntu One account."), _("To continue, you need to use your Ubuntu One account."), _("To continue, you need to use an Ubuntu One account.")); gs_plugin_add_auth (plugin, priv->auth); g_signal_connect_object (priv->auth, "changed", G_CALLBACK (load_auth), plugin, G_CONNECT_SWAPPED); } else { g_warning ("Failed to instantiate the snapd authentication object: %s", error->message); } gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "desktop-categories"); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_BETTER_THAN, "packagekit"); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_BEFORE, "icons"); /* Override hardcoded popular apps */ gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_BEFORE, "hardcoded-popular"); /* set name of MetaInfo file */ gs_plugin_set_appstream_id (plugin, "org.gnome.Software.Plugin.Snap"); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); if (!gs_snapd_exists ()) { g_debug ("disabling '%s' as snapd not running", gs_plugin_get_name (plugin)); gs_plugin_set_enabled (plugin, FALSE); } priv->auth = gs_auth_new ("snapd"); gs_auth_set_provider_name (priv->auth, "Snap Store"); gs_auth_set_provider_schema (priv->auth, "com.ubuntu.UbuntuOne.GnomeSoftware"); gs_plugin_add_auth (plugin, priv->auth); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "desktop-categories"); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "ubuntu-reviews"); gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_BETTER_THAN, "packagekit"); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); g_autofree gchar *user_agent = NULL; g_autoptr(SoupSession) soup_session = NULL; priv->client = fwupd_client_new (); /* use a custom user agent to provide the fwupd version */ user_agent = fwupd_build_user_agent (PACKAGE_NAME, PACKAGE_VERSION); soup_session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT, user_agent, SOUP_SESSION_TIMEOUT, 10, NULL); soup_session_remove_feature_by_type (soup_session, SOUP_TYPE_CONTENT_DECODER); gs_plugin_set_soup_session (plugin, soup_session); /* set name of MetaInfo file */ gs_plugin_set_appstream_id (plugin, "org.gnome.Software.Plugin.Fwupd"); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); g_autoptr(GsOsRelease) os_release = NULL; g_autoptr(GError) error = NULL; /* check that we are running on Ubuntu */ if (!gs_plugin_check_distro_id (plugin, "ubuntu")) { gs_plugin_set_enabled (plugin, FALSE); g_debug ("disabling '%s' as we're not Ubuntu", gs_plugin_get_name (plugin)); return; } priv->db_path = g_build_filename (g_get_user_data_dir (), "gnome-software", "ubuntu-reviews.db", NULL); os_release = gs_os_release_new (&error); if (os_release == NULL) { g_warning ("Failed to determine OS information: %s", error->message); priv->origin = g_strdup ("unknown"); priv->distroseries = g_strdup ("unknown"); } else { priv->origin = g_strdup (gs_os_release_get_id (os_release)); if (priv->origin == NULL) priv->origin = g_strdup ("unknown"); if (strcmp (priv->origin, "ubuntu") == 0) priv->distroseries = g_strdup (gs_os_release_get_distro_codename (os_release)); if (priv->distroseries == NULL) priv->distroseries = g_strdup ("unknown"); } /* we have more reviews than ORDS */ gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_CONFLICTS, "odrs"); /* need source */ gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "appstream"); }
void gs_plugin_initialize (GsPlugin *plugin) { GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); /* for debugging and the self tests */ priv->reposdir = g_strdup (g_getenv ("GS_SELF_TEST_REPOS_DIR")); if (priv->reposdir == NULL) priv->reposdir = g_strdup ("/etc/yum.repos.d"); /* plugin only makes sense if this exists at startup */ if (!g_file_test (priv->reposdir, G_FILE_TEST_EXISTS)) { gs_plugin_set_enabled (plugin, FALSE); return; } /* we also watch this for changes */ priv->urls = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); /* need application IDs */ gs_plugin_add_rule (plugin, GS_PLUGIN_RULE_RUN_AFTER, "packagekit-refine"); }
void gs_plugin_initialize (GsPlugin *plugin) { gs_plugin_alloc_data (plugin, sizeof(GsPluginData)); }