[gnome-software/wip/mak/libas: 14/14] Initial WIP libappstream port
- From: Matthias Klumpp <mak src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-software/wip/mak/libas: 14/14] Initial WIP libappstream port
- Date: Thu, 7 Jan 2021 20:46:16 +0000 (UTC)
commit 465fb2e4ad5790a3db6697160f511e86c8777a1f
Author: Matthias Klumpp <matthias tenstral net>
Date: Thu Jan 7 04:14:47 2021 +0100
Initial WIP libappstream port
doc/api/gnome-software-docs.xml | 6 +-
lib/gs-app-list.c | 17 +-
lib/gs-app.c | 190 +++--
lib/gs-app.h | 19 +-
lib/gs-cmd.c | 2 +-
lib/gs-plugin-event.c | 11 +-
lib/gs-plugin-loader.c | 54 +-
lib/gs-plugin-private.h | 2 +-
lib/gs-plugin-vfuncs.h | 14 +-
lib/gs-plugin.c | 6 +-
lib/gs-plugin.h | 2 +-
lib/gs-self-test.c | 11 +-
lib/gs-utils.c | 19 +-
meson.build | 2 +-
plugins/core/gs-appstream.c | 124 ++--
plugins/core/gs-plugin-appstream.c | 52 +-
plugins/core/gs-plugin-generic-updates.c | 8 +-
plugins/core/gs-plugin-icons.c | 27 +-
plugins/core/gs-plugin-key-colors-metadata.c | 2 +-
plugins/core/gs-plugin-os-release.c | 2 +-
plugins/core/gs-self-test.c | 18 +-
plugins/dpkg/gs-plugin-dpkg.c | 2 +-
plugins/dummy/gs-plugin-dummy.c | 42 +-
plugins/dummy/gs-self-test.c | 20 +-
plugins/eos-updater/gs-plugin-eos-updater.c | 4 +-
.../fedora-langpacks/gs-plugin-fedora-langpacks.c | 4 +-
plugins/fedora-langpacks/gs-self-test.c | 2 +-
.../gs-plugin-fedora-pkgdb-collections.c | 6 +-
plugins/flatpak/gs-flatpak-utils.c | 4 +-
plugins/flatpak/gs-flatpak.c | 73 +-
plugins/flatpak/gs-flatpak.h | 2 +-
plugins/flatpak/gs-plugin-flatpak.c | 26 +-
plugins/flatpak/gs-self-test.c | 50 +-
plugins/fwupd/gs-fwupd-app.c | 6 +-
plugins/fwupd/gs-plugin-fwupd.c | 31 +-
plugins/fwupd/gs-self-test.c | 2 +-
plugins/malcontent/gs-plugin-malcontent.c | 36 +-
plugins/modalias/gs-plugin-modalias.c | 32 +-
plugins/modalias/gs-self-test.c | 2 +-
plugins/odrs/gs-plugin-odrs.c | 53 +-
plugins/packagekit/gs-plugin-packagekit-history.c | 4 +-
plugins/packagekit/gs-plugin-packagekit-local.c | 6 +-
plugins/packagekit/gs-plugin-packagekit-offline.c | 4 +-
.../packagekit/gs-plugin-packagekit-refine-repos.c | 2 +-
plugins/packagekit/gs-plugin-packagekit-refine.c | 12 +-
plugins/packagekit/gs-plugin-packagekit-upgrade.c | 4 +-
.../packagekit/gs-plugin-packagekit-url-to-app.c | 2 +-
plugins/packagekit/gs-plugin-packagekit.c | 10 +-
plugins/packagekit/packagekit-common.c | 4 +-
plugins/repos/gs-plugin-repos.c | 4 +-
plugins/rpm-ostree/gs-plugin-rpm-ostree.c | 44 +-
plugins/snap/gs-plugin-snap.c | 12 +-
src/gs-app-addon-row.c | 2 +-
src/gs-app-row.c | 2 +-
src/gs-application.c | 6 +-
src/gs-common.c | 29 +-
src/gs-common.h | 4 +-
src/gs-content-rating.c | 784 ---------------------
src/gs-content-rating.h | 76 --
src/gs-css.c | 4 +-
src/gs-details-page.c | 86 ++-
src/gs-extras-page.c | 2 +-
src/gs-installed-page.c | 26 +-
src/gs-origin-popover-row.c | 8 +-
src/gs-page.c | 14 +-
src/gs-repos-dialog.c | 12 +-
src/gs-screenshot-image.c | 15 +-
src/gs-search-page.c | 6 +-
src/gs-self-test.c | 1 -
src/gs-shell-search-provider.c | 8 +-
src/gs-update-dialog.c | 24 +-
src/gs-update-monitor.c | 6 +-
src/gs-updates-page.c | 6 +-
src/gs-updates-section.c | 18 +-
src/meson.build | 2 -
75 files changed, 715 insertions(+), 1519 deletions(-)
---
diff --git a/doc/api/gnome-software-docs.xml b/doc/api/gnome-software-docs.xml
index 5c660055e..33a1228cf 100644
--- a/doc/api/gnome-software-docs.xml
+++ b/doc/api/gnome-software-docs.xml
@@ -203,7 +203,7 @@ gs_plugin_add_installed (GsPlugin *plugin,
/* the trigger exists, so create a fake app */
app = gs_app_new ("chiron.desktop");
gs_app_set_management_plugin (app, "example");
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_state (app, GS_APP_STATE_INSTALLED);
gs_app_set_name (app, GS_APP_QUALITY_NORMAL, "Chiron");
gs_app_set_summary (app, GS_APP_QUALITY_NORMAL, "A teaching application");
@@ -246,7 +246,7 @@ gs_plugin_add_installed (GsPlugin *plugin,
</listitem>
<listitem>
<para>
- Most applications want a kind of <code>AS_APP_KIND_DESKTOP</code>
+ Most applications want a kind of <code>AS_COMPONENT_KIND_DESKTOP_APP</code>
to be visible as an application.
</para>
</listitem>
@@ -531,7 +531,7 @@ gs_plugin_refine (GsPlugin *plugin,
void
gs_plugin_adopt_app (GsPlugin *plugin, GsApp *app)
{
- if (gs_app_get_kind (app) == AS_APP_KIND_FIRMWARE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_FIRMWARE)
gs_app_set_management_plugin (app, "fwupd");
}
</programlisting>
diff --git a/lib/gs-app-list.c b/lib/gs-app-list.c
index f2ceff40b..e702844d7 100644
--- a/lib/gs-app-list.c
+++ b/lib/gs-app-list.c
@@ -248,7 +248,7 @@ gs_app_list_lookup_safe (GsAppList *list, const gchar *unique_id)
{
for (guint i = 0; i < list->array->len; i++) {
GsApp *app = g_ptr_array_index (list->array, i);
- if (as_utils_unique_id_equal (gs_app_get_unique_id (app), unique_id))
+ if (as_utils_data_id_equal (gs_app_get_unique_id (app), unique_id))
return app;
}
return NULL;
@@ -738,15 +738,18 @@ gs_app_list_filter_app_get_keys (GsApp *app, GsAppListFilterFlags flags)
return keys;
}
- /* use the ID and any provides */
+ /* use the ID and any provided items */
if (flags & GS_APP_LIST_FILTER_FLAG_KEY_ID_PROVIDES) {
- GPtrArray *provides = gs_app_get_provides (app);
+ GPtrArray *provided = gs_app_get_provided (app);
g_ptr_array_add (keys, g_strdup (gs_app_get_id (app)));
- for (guint i = 0; i < provides->len; i++) {
- AsProvide *prov = g_ptr_array_index (provides, i);
- if (as_provide_get_kind (prov) != AS_PROVIDE_KIND_ID)
+ for (guint i = 0; i < provided->len; i++) {
+ AsProvided *prov = g_ptr_array_index (provided, i);
+ GPtrArray *items;
+ if (as_provided_get_kind (prov) != AS_PROVIDED_KIND_ID)
continue;
- g_ptr_array_add (keys, g_strdup (as_provide_get_value (prov)));
+ items = as_provided_get_items (prov);
+ for (guint j = 0; j < items->len; j++)
+ g_ptr_array_add (keys, g_strdup (g_ptr_array_index (items, j)));
}
return keys;
}
diff --git a/lib/gs-app.c b/lib/gs-app.c
index c9f02ca7f..505ad04e8 100644
--- a/lib/gs-app.c
+++ b/lib/gs-app.c
@@ -17,9 +17,9 @@
*
* This object represents a 1:1 mapping to a .desktop file. The design is such
* so you can't have different GsApp's for different versions or architectures
- * of a package. This rule really only applies to GsApps of kind %AS_APP_KIND_DESKTOP
- * and %AS_APP_KIND_GENERIC. We allow GsApps of kind %AS_APP_KIND_OS_UPDATE or
- * %AS_APP_KIND_GENERIC, which don't correspond to desktop files, but instead
+ * of a package. This rule really only applies to GsApps of kind %AS_COMPONENT_KIND_DESKTOP_APP
+ * and %AS_COMPONENT_KIND_GENERIC. We allow GsApps of kind %AS_COMPONENT_KIND_OS_UPDATE or
+ * %AS_COMPONENT_KIND_GENERIC, which don't correspond to desktop files, but instead
* represent a system update and its individual components.
*
* The #GsPluginLoader de-duplicates the GsApp instances that are produced by
@@ -91,13 +91,13 @@ typedef struct
gint rating;
GArray *review_ratings;
GPtrArray *reviews; /* of AsReview */
- GPtrArray *provides; /* of AsProvide */
+ GPtrArray *provided; /* of AsProvided */
guint64 size_installed;
guint64 size_download;
- AsAppKind kind;
+ AsComponentKind kind;
GsAppState state;
GsAppState state_recover;
- AsAppScope scope;
+ AsComponentScope scope;
AsBundleKind bundle_kind;
guint progress; /* integer 0–100 (inclusive), or %GS_APP_PROGRESS_UNKNOWN */
gboolean allow_cancel;
@@ -258,7 +258,7 @@ gs_app_kv_printf (GString *str, const gchar *key, const gchar *fmt, ...)
}
static const gchar *
-_as_app_quirk_flag_to_string (GsAppQuirk quirk)
+_as_component_quirk_flag_to_string (GsAppQuirk quirk)
{
switch (quirk) {
case GS_APP_QUIRK_PROVENANCE:
@@ -315,12 +315,11 @@ gs_app_get_unique_id_unlocked (GsApp *app)
/* hmm, do what we can */
if (priv->unique_id == NULL || !priv->unique_id_valid) {
g_free (priv->unique_id);
- priv->unique_id = as_utils_unique_id_build (priv->scope,
- priv->bundle_kind,
- priv->origin,
- priv->kind,
- priv->id,
- priv->branch);
+ priv->unique_id = as_utils_build_data_id (priv->scope,
+ priv->bundle_kind,
+ priv->origin,
+ priv->id,
+ priv->branch);
priv->unique_id_valid = TRUE;
}
return priv->unique_id;
@@ -387,7 +386,7 @@ gs_app_quirk_to_string (GsAppQuirk quirk)
if ((quirk & i) == 0)
continue;
g_string_append_printf (str, "%s,",
- _as_app_quirk_flag_to_string (i));
+ _as_component_quirk_flag_to_string (i));
}
/* nothing recognised */
@@ -487,7 +486,7 @@ gs_app_to_string_append (GsApp *app, GString *str)
klass = GS_APP_GET_CLASS (app);
g_string_append_printf (str, " [%p]\n", app);
- gs_app_kv_lpad (str, "kind", as_app_kind_to_string (priv->kind));
+ gs_app_kv_lpad (str, "kind", as_component_kind_to_string (priv->kind));
gs_app_kv_lpad (str, "state", gs_app_state_to_string (priv->state));
if (priv->quirk > 0) {
g_autofree gchar *qstr = gs_app_quirk_to_string (priv->quirk);
@@ -501,8 +500,8 @@ gs_app_to_string_append (GsApp *app, GString *str)
gs_app_kv_lpad (str, "id", priv->id);
if (priv->unique_id != NULL)
gs_app_kv_lpad (str, "unique-id", gs_app_get_unique_id (app));
- if (priv->scope != AS_APP_SCOPE_UNKNOWN)
- gs_app_kv_lpad (str, "scope", as_app_scope_to_string (priv->scope));
+ if (priv->scope != AS_COMPONENT_SCOPE_UNKNOWN)
+ gs_app_kv_lpad (str, "scope", as_component_scope_to_string (priv->scope));
if (priv->bundle_kind != AS_BUNDLE_KIND_UNKNOWN) {
gs_app_kv_lpad (str, "bundle-kind",
as_bundle_kind_to_string (priv->bundle_kind));
@@ -522,18 +521,27 @@ gs_app_to_string_append (GsApp *app, GString *str)
gs_app_kv_printf (str, "action-screenshot", "%p", priv->action_screenshot);
for (i = 0; i < priv->icons->len; i++) {
AsIcon *icon = g_ptr_array_index (priv->icons, i);
+ const gchar *icon_fname;
gs_app_kv_lpad (str, "icon-kind",
as_icon_kind_to_string (as_icon_get_kind (icon)));
- if (as_icon_get_pixbuf (icon) != NULL) {
- gs_app_kv_printf (str, "icon-pixbuf", "%p",
- as_icon_get_pixbuf (icon));
+
+ icon_fname = as_icon_get_filename (icon);
+ if (icon_fname != NULL) {
+ g_autoptr(GdkPixbuf) pixbuf = NULL;
+ pixbuf = gdk_pixbuf_new_from_file_at_size (icon_fname,
+ (gint) as_icon_get_width (icon),
+ (gint) as_icon_get_height (icon),
+ NULL);
+ if (pixbuf != NULL)
+ gs_app_kv_printf (str, "icon-pixbuf", "%p", pixbuf);
}
if (as_icon_get_name (icon) != NULL)
gs_app_kv_lpad (str, "icon-name",
as_icon_get_name (icon));
- if (as_icon_get_prefix (icon) != NULL)
- gs_app_kv_lpad (str, "icon-prefix",
- as_icon_get_prefix (icon));
+ /* FIXME-LIBAS */
+ //if (as_icon_get_prefix (icon) != NULL)
+ // gs_app_kv_lpad (str, "icon-prefix",
+ // as_icon_get_prefix (icon));
if (as_icon_get_filename (icon) != NULL)
gs_app_kv_lpad (str, "icon-filename",
as_icon_get_filename (icon));
@@ -563,7 +571,7 @@ gs_app_to_string_append (GsApp *app, GString *str)
for (i = 0; i < priv->screenshots->len; i++) {
AsScreenshot *ss = g_ptr_array_index (priv->screenshots, i);
g_autofree gchar *key = NULL;
- tmp = as_screenshot_get_caption (ss, NULL);
+ tmp = as_screenshot_get_caption (ss);
im = as_screenshot_get_image (ss, 0, 0);
if (im == NULL)
continue;
@@ -642,8 +650,12 @@ gs_app_to_string_append (GsApp *app, GString *str)
}
if (priv->reviews != NULL)
gs_app_kv_printf (str, "reviews", "%u", priv->reviews->len);
- if (priv->provides != NULL)
- gs_app_kv_printf (str, "provides", "%u", priv->provides->len);
+ if (priv->provided != NULL) {
+ guint total = 0;
+ for (i = 0; i < priv->provided->len; i++)
+ total += as_provided_get_items (AS_PROVIDED (g_ptr_array_index (priv->provided,
i)))->len;
+ gs_app_kv_printf (str, "provided", "%u", total);
+ }
if (priv->install_date != 0) {
gs_app_kv_printf (str, "install-date", "%"
G_GUINT64_FORMAT "",
@@ -791,29 +803,29 @@ gs_app_set_id (GsApp *app, const gchar *id)
*
* Gets the scope of the application.
*
- * Returns: the #AsAppScope, e.g. %AS_APP_SCOPE_USER
+ * Returns: the #AsComponentScope, e.g. %AS_COMPONENT_SCOPE_USER
*
* Since: 3.22
**/
-AsAppScope
+AsComponentScope
gs_app_get_scope (GsApp *app)
{
GsAppPrivate *priv = gs_app_get_instance_private (app);
- g_return_val_if_fail (GS_IS_APP (app), AS_APP_SCOPE_UNKNOWN);
+ g_return_val_if_fail (GS_IS_APP (app), AS_COMPONENT_SCOPE_UNKNOWN);
return priv->scope;
}
/**
* gs_app_set_scope:
* @app: a #GsApp
- * @scope: a #AsAppScope, e.g. AS_APP_SCOPE_SYSTEM
+ * @scope: a #AsComponentScope, e.g. AS_COMPONENT_SCOPE_SYSTEM
*
* This sets the scope of the application.
*
* Since: 3.22
**/
void
-gs_app_set_scope (GsApp *app, AsAppScope scope)
+gs_app_set_scope (GsApp *app, AsComponentScope scope)
{
GsAppPrivate *priv = gs_app_get_instance_private (app);
@@ -835,7 +847,7 @@ gs_app_set_scope (GsApp *app, AsAppScope scope)
*
* Gets the bundle kind of the application.
*
- * Returns: the #AsAppScope, e.g. %AS_BUNDLE_KIND_FLATPAK
+ * Returns: the #AsComponentScope, e.g. %AS_BUNDLE_KIND_FLATPAK
*
* Since: 3.22
**/
@@ -850,7 +862,7 @@ gs_app_get_bundle_kind (GsApp *app)
/**
* gs_app_set_bundle_kind:
* @app: a #GsApp
- * @bundle_kind: a #AsAppScope, e.g. AS_BUNDLE_KIND_FLATPAK
+ * @bundle_kind: a #AsComponentScope, e.g. AS_BUNDLE_KIND_FLATPAK
*
* This sets the bundle kind of the application.
*
@@ -1206,26 +1218,26 @@ gs_app_set_state (GsApp *app, GsAppState state)
*
* Gets the kind of the application.
*
- * Returns: the #AsAppKind, e.g. %AS_APP_KIND_UNKNOWN
+ * Returns: the #AsComponentKind, e.g. %AS_COMPONENT_KIND_UNKNOWN
*
* Since: 3.22
**/
-AsAppKind
+AsComponentKind
gs_app_get_kind (GsApp *app)
{
GsAppPrivate *priv = gs_app_get_instance_private (app);
- g_return_val_if_fail (GS_IS_APP (app), AS_APP_KIND_UNKNOWN);
+ g_return_val_if_fail (GS_IS_APP (app), AS_COMPONENT_KIND_UNKNOWN);
return priv->kind;
}
/**
* gs_app_set_kind:
* @app: a #GsApp
- * @kind: a #AsAppKind, e.g. #AS_APP_KIND_DESKTOP
+ * @kind: a #AsComponentKind, e.g. #AS_COMPONENT_KIND_DESKTOP_APP
*
* This sets the kind of the application.
* The following state diagram explains the typical states.
- * All applications start with kind %AS_APP_KIND_UNKNOWN.
+ * All applications start with kind %AS_COMPONENT_KIND_UNKNOWN.
*
* |[
* PACKAGE --> NORMAL
@@ -1236,7 +1248,7 @@ gs_app_get_kind (GsApp *app)
* Since: 3.22
**/
void
-gs_app_set_kind (GsApp *app, AsAppKind kind)
+gs_app_set_kind (GsApp *app, AsComponentKind kind)
{
GsAppPrivate *priv = gs_app_get_instance_private (app);
gboolean state_change_ok = FALSE;
@@ -1251,26 +1263,26 @@ gs_app_set_kind (GsApp *app, AsAppKind kind)
return;
/* trying to change */
- if (priv->kind != AS_APP_KIND_UNKNOWN &&
- kind == AS_APP_KIND_UNKNOWN) {
+ if (priv->kind != AS_COMPONENT_KIND_UNKNOWN &&
+ kind == AS_COMPONENT_KIND_UNKNOWN) {
g_warning ("automatically prevented from changing "
"kind on %s from %s to %s!",
gs_app_get_unique_id_unlocked (app),
- as_app_kind_to_string (priv->kind),
- as_app_kind_to_string (kind));
+ as_component_kind_to_string (priv->kind),
+ as_component_kind_to_string (kind));
return;
}
/* check the state change is allowed */
switch (priv->kind) {
- case AS_APP_KIND_UNKNOWN:
- case AS_APP_KIND_GENERIC:
+ case AS_COMPONENT_KIND_UNKNOWN:
+ case AS_COMPONENT_KIND_GENERIC:
/* all others derive from generic */
state_change_ok = TRUE;
break;
- case AS_APP_KIND_DESKTOP:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
/* desktop has to be reset to override */
- if (kind == AS_APP_KIND_UNKNOWN)
+ if (kind == AS_COMPONENT_KIND_UNKNOWN)
state_change_ok = TRUE;
break;
default:
@@ -1282,8 +1294,8 @@ gs_app_set_kind (GsApp *app, AsAppKind kind)
if (!state_change_ok) {
g_warning ("Kind change on %s from %s to %s is not OK",
priv->id,
- as_app_kind_to_string (priv->kind),
- as_app_kind_to_string (kind));
+ as_component_kind_to_string (priv->kind),
+ as_component_kind_to_string (kind));
return;
}
@@ -1334,7 +1346,7 @@ gs_app_set_unique_id (GsApp *app, const gchar *unique_id)
locker = g_mutex_locker_new (&priv->mutex);
/* check for sanity */
- if (!as_utils_unique_id_valid (unique_id))
+ if (!as_utils_data_id_valid (unique_id))
g_warning ("unique_id %s not valid", unique_id);
g_free (priv->unique_id);
@@ -2460,7 +2472,7 @@ gs_app_set_license (GsApp *app, GsAppQuality quality, const gchar *license)
/* assume free software until we find a nonfree SPDX token */
priv->license_is_free = TRUE;
- tokens = as_utils_spdx_license_tokenize (license);
+ tokens = as_spdx_license_tokenize (license);
for (i = 0; tokens[i] != NULL; i++) {
if (g_strcmp0 (tokens[i], "&") == 0 ||
g_strcmp0 (tokens[i], "+") == 0 ||
@@ -3114,41 +3126,73 @@ gs_app_remove_review (GsApp *app, AsReview *review)
}
/**
- * gs_app_get_provides:
+ * gs_app_get_provided:
* @app: a #GsApp
*
- * Gets all the provides for the application.
+ * Gets all the provided item sets for the application.
*
- * Returns: (element-type AsProvide) (transfer none): the list of provides
+ * Returns: (element-type AsProvided) (transfer none): the list of provided items
*
- * Since: 3.22
+ * Since: 40
**/
-GPtrArray *
-gs_app_get_provides (GsApp *app)
+GPtrArray*
+gs_app_get_provided (GsApp *app)
+{
+ GsAppPrivate *priv = gs_app_get_instance_private (app);
+ g_return_val_if_fail (GS_IS_APP (app), NULL);
+ return priv->provided;
+}
+
+/**
+ * gs_app_get_provided_for_kind:
+ * @cpt: a #AsComponent instance.
+ * @kind: kind of the provided item, e.g. %AS_PROVIDED_KIND_MIMETYPE
+ *
+ * Get an #AsProvided object for the given interface type, or %NULL if
+ * none was found.
+ *
+ * Since: 40
+ */
+AsProvided*
+gs_app_get_provided_for_kind (GsApp *app, AsProvidedKind kind)
{
GsAppPrivate *priv = gs_app_get_instance_private (app);
g_return_val_if_fail (GS_IS_APP (app), NULL);
- return priv->provides;
+
+ for (guint i = 0; i < priv->provided->len; i++) {
+ AsProvided *prov = AS_PROVIDED (g_ptr_array_index (priv->provided, i));
+ if (as_provided_get_kind (prov) == kind)
+ return prov;
+ }
+ return NULL;
}
/**
- * gs_app_add_provide:
+ * gs_app_add_provided:
* @app: a #GsApp
- * @provide: a #AsProvide
+ * @kind: the kind of the provided item, e.g. %AS_PROVIDED_KIND_MEDIATYPE
+ * @item: the item to add.
*
- * Adds a provide to the application.
+ * Adds a provided items of the given kind to the application.
*
- * Since: 3.22
+ * Since: 40
**/
void
-gs_app_add_provide (GsApp *app, AsProvide *provide)
+gs_app_add_provided_item (GsApp *app, AsProvidedKind kind, const gchar *item)
{
GsAppPrivate *priv = gs_app_get_instance_private (app);
+ AsProvided *prov;
g_autoptr(GMutexLocker) locker = NULL;
g_return_if_fail (GS_IS_APP (app));
- g_return_if_fail (AS_IS_PROVIDE (provide));
+
locker = g_mutex_locker_new (&priv->mutex);
- g_ptr_array_add (priv->provides, g_object_ref (provide));
+ prov = gs_app_get_provided_for_kind (app, kind);
+ if (prov == NULL) {
+ prov = as_provided_new ();
+ as_provided_set_kind (prov, kind);
+ g_ptr_array_add (priv->provided, prov);
+ }
+ as_provided_add_item (prov, item);
}
/**
@@ -3637,7 +3681,7 @@ gs_app_is_updatable (GsApp *app)
{
GsAppPrivate *priv = gs_app_get_instance_private (app);
g_return_val_if_fail (GS_IS_APP (app), FALSE);
- if (priv->kind == AS_APP_KIND_OS_UPGRADE)
+ if (priv->kind == AS_COMPONENT_KIND_OPERATING_SYSTEM)
return TRUE;
return (priv->state == GS_APP_STATE_UPDATABLE) ||
(priv->state == GS_APP_STATE_UPDATABLE_LIVE);
@@ -4379,7 +4423,7 @@ gs_app_dispose (GObject *object)
g_clear_pointer (&priv->screenshots, g_ptr_array_unref);
g_clear_pointer (&priv->review_ratings, g_array_unref);
g_clear_pointer (&priv->reviews, g_ptr_array_unref);
- g_clear_pointer (&priv->provides, g_ptr_array_unref);
+ g_clear_pointer (&priv->provided, g_ptr_array_unref);
g_clear_pointer (&priv->icons, g_ptr_array_unref);
G_OBJECT_CLASS (gs_app_parent_class)->dispose (object);
@@ -4489,9 +4533,9 @@ gs_app_class_init (GsAppClass *klass)
* GsApp:kind:
*/
obj_props[PROP_KIND] = g_param_spec_uint ("kind", NULL, NULL,
- AS_APP_KIND_UNKNOWN,
- AS_APP_KIND_LAST,
- AS_APP_KIND_UNKNOWN,
+ AS_COMPONENT_KIND_UNKNOWN,
+ AS_COMPONENT_KIND_LAST,
+ AS_COMPONENT_KIND_UNKNOWN,
G_PARAM_READWRITE | G_PARAM_CONSTRUCT);
/**
@@ -4585,7 +4629,7 @@ gs_app_init (GsApp *app)
priv->history = gs_app_list_new ();
priv->screenshots = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref);
priv->reviews = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref);
- priv->provides = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref);
+ priv->provided = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref);
priv->icons = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref);
priv->metadata = g_hash_table_new_full (g_str_hash,
g_str_equal,
@@ -4659,13 +4703,13 @@ gs_app_set_from_unique_id (GsApp *app, const gchar *unique_id)
if (g_strv_length (split) != 6)
return;
if (g_strcmp0 (split[0], "*") != 0)
- gs_app_set_scope (app, as_app_scope_from_string (split[0]));
+ gs_app_set_scope (app, as_component_scope_from_string (split[0]));
if (g_strcmp0 (split[1], "*") != 0)
gs_app_set_bundle_kind (app, as_bundle_kind_from_string (split[1]));
if (g_strcmp0 (split[2], "*") != 0)
gs_app_set_origin (app, split[2]);
if (g_strcmp0 (split[3], "*") != 0)
- gs_app_set_kind (app, as_app_kind_from_string (split[3]));
+ gs_app_set_kind (app, as_component_kind_from_string (split[3]));
if (g_strcmp0 (split[4], "*") != 0)
gs_app_set_id (app, split[4]);
if (g_strcmp0 (split[5], "*") != 0)
diff --git a/lib/gs-app.h b/lib/gs-app.h
index d5cc87798..64ad98862 100644
--- a/lib/gs-app.h
+++ b/lib/gs-app.h
@@ -12,7 +12,7 @@
#include <glib-object.h>
#include <gdk/gdk.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
-#include <appstream-glib.h>
+#include <appstream.h>
G_BEGIN_DECLS
@@ -222,15 +222,15 @@ void gs_app_to_string_append (GsApp *app,
const gchar *gs_app_get_id (GsApp *app);
void gs_app_set_id (GsApp *app,
const gchar *id);
-AsAppKind gs_app_get_kind (GsApp *app);
+AsComponentKind gs_app_get_kind (GsApp *app);
void gs_app_set_kind (GsApp *app,
- AsAppKind kind);
+ AsComponentKind kind);
GsAppState gs_app_get_state (GsApp *app);
void gs_app_set_state (GsApp *app,
GsAppState state);
-AsAppScope gs_app_get_scope (GsApp *app);
+AsComponentScope gs_app_get_scope (GsApp *app);
void gs_app_set_scope (GsApp *app,
- AsAppScope scope);
+ AsComponentScope scope);
AsBundleKind gs_app_get_bundle_kind (GsApp *app);
void gs_app_set_bundle_kind (GsApp *app,
AsBundleKind bundle_kind);
@@ -372,9 +372,12 @@ void gs_app_add_review (GsApp *app,
AsReview *review);
void gs_app_remove_review (GsApp *app,
AsReview *review);
-GPtrArray *gs_app_get_provides (GsApp *app);
-void gs_app_add_provide (GsApp *app,
- AsProvide *provide);
+GPtrArray *gs_app_get_provided (GsApp *app);
+AsProvided *gs_app_get_provided_for_kind (GsApp *app,
+ AsProvidedKind kind);
+void gs_app_add_provided_item (GsApp *app,
+ AsProvidedKind kind,
+ const gchar *item);
guint64 gs_app_get_size_installed (GsApp *app);
void gs_app_set_size_installed (GsApp *app,
guint64 size_installed);
diff --git a/lib/gs-cmd.c b/lib/gs-cmd.c
index bc01c9533..0c83f6e91 100644
--- a/lib/gs-cmd.c
+++ b/lib/gs-cmd.c
@@ -454,7 +454,7 @@ main (int argc, char **argv)
} else if (argc == 3 && g_strcmp0 (argv[1], "action-upgrade-download") == 0) {
g_autoptr(GsPluginJob) plugin_job = NULL;
app = gs_app_new (argv[2]);
- gs_app_set_kind (app, AS_APP_KIND_OS_UPGRADE);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_OPERATING_SYSTEM);
plugin_job = gs_plugin_job_newv (GS_PLUGIN_ACTION_UPGRADE_DOWNLOAD,
"app", app,
NULL);
diff --git a/lib/gs-plugin-event.c b/lib/gs-plugin-event.c
index 8d1fc83ee..89787626a 100644
--- a/lib/gs-plugin-event.c
+++ b/lib/gs-plugin-event.c
@@ -173,12 +173,11 @@ gs_plugin_event_get_unique_id (GsPluginEvent *event)
g_autofree gchar *id = NULL;
id = g_strdup_printf ("%s.error",
gs_plugin_error_to_string (event->error->code));
- event->unique_id = as_utils_unique_id_build (AS_APP_SCOPE_UNKNOWN,
- AS_BUNDLE_KIND_UNKNOWN,
- NULL,
- AS_APP_KIND_UNKNOWN,
- id,
- NULL);
+ event->unique_id = as_utils_build_data_id (AS_COMPONENT_SCOPE_UNKNOWN,
+ AS_BUNDLE_KIND_UNKNOWN,
+ NULL,
+ id,
+ NULL);
}
return event->unique_id;
}
diff --git a/lib/gs-plugin-loader.c b/lib/gs-plugin-loader.c
index 067b6a04d..6f6aa0c49 100644
--- a/lib/gs-plugin-loader.c
+++ b/lib/gs-plugin-loader.c
@@ -11,7 +11,7 @@
#include <locale.h>
#include <glib/gi18n.h>
-#include <appstream-glib.h>
+#include <appstream.h>
#include <math.h>
#ifdef HAVE_SYSPROF
@@ -43,6 +43,7 @@ typedef struct
SoupSession *soup_session;
GPtrArray *file_monitors;
GsPluginStatus global_status_last;
+ AsPool *as_pool;
GMutex pending_apps_mutex;
GPtrArray *pending_apps;
@@ -427,7 +428,7 @@ gs_plugin_error_handle_failure (GsPluginLoaderHelper *helper,
event = gs_plugin_job_to_failed_event (helper->plugin_job, error_local_copy);
/* set the app and origin IDs if we managed to scrape them from the error above */
- if (as_utils_unique_id_valid (app_id)) {
+ if (as_utils_data_id_valid (app_id)) {
g_autoptr(GsApp) app = gs_plugin_cache_lookup (plugin, app_id);
if (app != NULL) {
g_debug ("found app %s in error", origin_id);
@@ -436,7 +437,7 @@ gs_plugin_error_handle_failure (GsPluginLoaderHelper *helper,
g_debug ("no unique ID found for app %s", app_id);
}
}
- if (as_utils_unique_id_valid (origin_id)) {
+ if (as_utils_data_id_valid (origin_id)) {
g_autoptr(GsApp) origin = gs_plugin_cache_lookup (plugin, origin_id);
if (origin != NULL) {
g_debug ("found origin %s in error", origin_id);
@@ -1209,11 +1210,11 @@ gs_plugin_loader_app_is_valid_installed (GsApp *app, gpointer user_data)
}
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_OS_UPGRADE:
- case AS_APP_KIND_CODEC:
- case AS_APP_KIND_FONT:
+ case AS_COMPONENT_KIND_OPERATING_SYSTEM:
+ case AS_COMPONENT_KIND_CODEC:
+ case AS_COMPONENT_KIND_FONT:
g_debug ("app invalid as %s: %s",
- as_app_kind_to_string (gs_app_get_kind (app)),
+ as_component_kind_to_string (gs_app_get_kind (app)),
gs_plugin_loader_get_app_str (app));
return FALSE;
break;
@@ -1237,14 +1238,14 @@ gs_plugin_loader_app_is_valid (GsApp *app, gpointer user_data)
GsPluginLoaderHelper *helper = (GsPluginLoaderHelper *) user_data;
/* never show addons */
- if (gs_app_get_kind (app) == AS_APP_KIND_ADDON) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_ADDON) {
g_debug ("app invalid as addon %s",
gs_plugin_loader_get_app_str (app));
return FALSE;
}
/* never show CLI apps */
- if (gs_app_get_kind (app) == AS_APP_KIND_CONSOLE) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_CONSOLE_APP) {
g_debug ("app invalid as console %s",
gs_plugin_loader_get_app_str (app));
return FALSE;
@@ -1258,7 +1259,7 @@ gs_plugin_loader_app_is_valid (GsApp *app, gpointer user_data)
}
/* don't show unconverted unavailables */
- if (gs_app_get_kind (app) == AS_APP_KIND_UNKNOWN &&
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_UNKNOWN &&
gs_app_get_state (app) == GS_APP_STATE_UNAVAILABLE) {
g_debug ("app invalid as unconverted unavailable %s",
gs_plugin_loader_get_app_str (app));
@@ -1290,14 +1291,14 @@ gs_plugin_loader_app_is_valid (GsApp *app, gpointer user_data)
}
/* don't show sources */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY) {
g_debug ("app invalid as source %s",
gs_plugin_loader_get_app_str (app));
return FALSE;
}
/* don't show unknown kind */
- if (gs_app_get_kind (app) == AS_APP_KIND_UNKNOWN) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_UNKNOWN) {
g_debug ("app invalid as kind unknown %s",
gs_plugin_loader_get_app_str (app));
return FALSE;
@@ -1306,9 +1307,9 @@ gs_plugin_loader_app_is_valid (GsApp *app, gpointer user_data)
/* don't show unconverted packages in the application view */
if (!gs_plugin_job_has_refine_flags (helper->plugin_job,
GS_PLUGIN_REFINE_FLAGS_ALLOW_PACKAGES) &&
- (gs_app_get_kind (app) == AS_APP_KIND_GENERIC)) {
+ (gs_app_get_kind (app) == AS_COMPONENT_KIND_GENERIC)) {
g_debug ("app invalid as only a %s: %s",
- as_app_kind_to_string (gs_app_get_kind (app)),
+ as_component_kind_to_string (gs_app_get_kind (app)),
gs_plugin_loader_get_app_str (app));
return FALSE;
}
@@ -1413,9 +1414,9 @@ gs_plugin_loader_featured_debug (GsApp *app, gpointer user_data)
static gint
gs_plugin_loader_app_sort_kind_cb (GsApp *app1, GsApp *app2, gpointer user_data)
{
- if (gs_app_get_kind (app1) == AS_APP_KIND_DESKTOP)
+ if (gs_app_get_kind (app1) == AS_COMPONENT_KIND_DESKTOP_APP)
return -1;
- if (gs_app_get_kind (app2) == AS_APP_KIND_DESKTOP)
+ if (gs_app_get_kind (app2) == AS_COMPONENT_KIND_DESKTOP_APP)
return 1;
return 0;
}
@@ -1439,14 +1440,8 @@ gs_plugin_loader_app_sort_prio_cb (GsApp *app1, GsApp *app2, gpointer user_data)
static gint
gs_plugin_loader_app_sort_version_cb (GsApp *app1, GsApp *app2, gpointer user_data)
{
-#if AS_CHECK_VERSION(0,7,15)
- return as_utils_vercmp_full (gs_app_get_version (app1),
- gs_app_get_version (app2),
- AS_VERSION_COMPARE_FLAG_NONE);
-#else
- return as_utils_vercmp (gs_app_get_version (app1),
- gs_app_get_version (app2));
-#endif
+ return as_utils_compare_versions (gs_app_get_version (app1),
+ gs_app_get_version (app2));
}
/******************************************************************************/
@@ -2446,6 +2441,7 @@ gs_plugin_loader_setup (GsPluginLoader *plugin_loader,
for (i = 0; i < priv->locations->len; i++) {
GFileMonitor *monitor;
const gchar *location = g_ptr_array_index (priv->locations, i);
+ g_debug ("monitoring plugin location %s", location);
g_autoptr(GFile) plugin_dir = g_file_new_for_path (location);
monitor = g_file_monitor_directory (plugin_dir,
G_FILE_MONITOR_NONE,
@@ -2791,6 +2787,7 @@ gs_plugin_loader_finalize (GObject *object)
g_ptr_array_unref (priv->file_monitors);
g_hash_table_unref (priv->events_by_id);
g_hash_table_unref (priv->disallow_updates);
+ g_object_unref (priv->as_pool);
g_mutex_clear (&priv->pending_apps_mutex);
g_mutex_clear (&priv->events_by_id_mutex);
@@ -2919,11 +2916,14 @@ gs_plugin_loader_init (GsPluginLoader *plugin_loader)
priv->settings = g_settings_new ("org.gnome.software");
g_signal_connect (priv->settings, "changed",
G_CALLBACK (gs_plugin_loader_settings_changed_cb), plugin_loader);
- priv->events_by_id = g_hash_table_new_full ((GHashFunc) as_utils_unique_id_hash,
- (GEqualFunc) as_utils_unique_id_equal,
+ priv->events_by_id = g_hash_table_new_full ((GHashFunc) as_utils_data_id_hash,
+ (GEqualFunc) as_utils_data_id_equal,
g_free,
(GDestroyNotify) g_object_unref);
+ /* AppStream metadata pool, we only need it uninitialized for some helper functions */
+ priv->as_pool = as_pool_new ();
+
/* share a soup session (also disable the double-compression) */
priv->soup_session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT, gs_user_agent (),
SOUP_SESSION_TIMEOUT, 10,
@@ -3804,7 +3804,7 @@ gs_plugin_loader_job_process_async (GsPluginLoader *plugin_loader,
/* pre-tokenize search */
if (action == GS_PLUGIN_ACTION_SEARCH) {
const gchar *search = gs_plugin_job_get_search (plugin_job);
- helper->tokens = as_utils_search_tokenize (search);
+ helper->tokens = as_pool_build_search_tokens (priv->as_pool, search);
if (helper->tokens == NULL) {
g_task_return_new_error (task,
GS_PLUGIN_ERROR,
diff --git a/lib/gs-plugin-private.h b/lib/gs-plugin-private.h
index 1defc98a0..a703bea0e 100644
--- a/lib/gs-plugin-private.h
+++ b/lib/gs-plugin-private.h
@@ -8,7 +8,7 @@
#pragma once
-#include <appstream-glib.h>
+#include <appstream.h>
#include <glib-object.h>
#include <gmodule.h>
#include <libsoup/soup.h>
diff --git a/lib/gs-plugin-vfuncs.h b/lib/gs-plugin-vfuncs.h
index a88f9819c..6ed7a0377 100644
--- a/lib/gs-plugin-vfuncs.h
+++ b/lib/gs-plugin-vfuncs.h
@@ -16,7 +16,7 @@
* @short_description: Vfuncs that plugins can implement
*/
-#include <appstream-glib.h>
+#include <appstream.h>
#include <glib-object.h>
#include <gmodule.h>
#include <gio/gio.h>
@@ -222,7 +222,7 @@ gboolean gs_plugin_add_updates (GsPlugin *plugin,
* should not be downloaded until the user has explicitly opted-in.
*
* Plugins are expected to add new apps using gs_app_list_add() of type
- * %AS_APP_KIND_OS_UPGRADE.
+ * %AS_COMPONENT_KIND_OPERATING_SYSTEM.
*
* Returns: %TRUE for success or if not relevant
**/
@@ -242,7 +242,7 @@ gboolean gs_plugin_add_distro_upgrades (GsPlugin *plugin,
* or the remotes configured in flatpak.
*
* Plugins are expected to add new apps using gs_app_list_add() of type
- * %AS_APP_KIND_SOURCE.
+ * %AS_COMPONENT_KIND_REPOSITORY.
*
* Returns: %TRUE for success or if not relevant
**/
@@ -684,7 +684,7 @@ gboolean gs_plugin_download (GsPlugin *plugin,
/**
* gs_plugin_app_upgrade_download:
* @plugin: a #GsPlugin
- * @app: a #GsApp, with kind %AS_APP_KIND_OS_UPGRADE
+ * @app: a #GsApp, with kind %AS_COMPONENT_KIND_OPERATING_SYSTEM
* @cancellable: a #GCancellable, or %NULL
* @error: a #GError, or %NULL
*
@@ -704,7 +704,7 @@ gboolean gs_plugin_app_upgrade_download (GsPlugin *plugin,
/**
* gs_plugin_app_upgrade_trigger:
* @plugin: a #GsPlugin
- * @app: a #GsApp, with kind %AS_APP_KIND_OS_UPGRADE
+ * @app: a #GsApp, with kind %AS_COMPONENT_KIND_OPERATING_SYSTEM
* @cancellable: a #GCancellable, or %NULL
* @error: a #GError, or %NULL
*
@@ -867,8 +867,8 @@ gboolean gs_plugin_refresh (GsPlugin *plugin,
* list. If no plugins can handle the file, the list will be empty.
*
* For example, the PackageKit plugin can turn a .rpm file into a application
- * of kind %AS_APP_KIND_UNKNOWN but that in some cases it will be further refined
- * into a %AS_APP_KIND_DESKTOP (with all the extra metadata) by the appstream
+ * of kind %AS_COMPONENT_KIND_UNKNOWN but that in some cases it will be further refined
+ * into a %AS_COMPONENT_KIND_DESKTOP_APP (with all the extra metadata) by the appstream
* plugin.
*
* Plugins are expected to add new apps using gs_app_list_add().
diff --git a/lib/gs-plugin.c b/lib/gs-plugin.c
index c517de0fa..6af91cacf 100644
--- a/lib/gs-plugin.c
+++ b/lib/gs-plugin.c
@@ -1328,7 +1328,7 @@ gs_plugin_download_rewrite_resource (GsPlugin *plugin,
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
/* replace datadir */
- as_utils_string_replace (resource_str, "@datadir@", DATADIR);
+ as_gstring_replace (resource_str, "@datadir@", DATADIR);
resource = resource_str->str;
/* look in string for any url() links */
@@ -2039,8 +2039,8 @@ gs_plugin_init (GsPlugin *plugin)
priv->enabled = TRUE;
priv->scale = 1;
- priv->cache = g_hash_table_new_full ((GHashFunc) as_utils_unique_id_hash,
- (GEqualFunc) as_utils_unique_id_equal,
+ priv->cache = g_hash_table_new_full ((GHashFunc) as_utils_data_id_hash,
+ (GEqualFunc) as_utils_data_id_equal,
g_free,
(GDestroyNotify) g_object_unref);
priv->vfuncs = g_hash_table_new_full (g_str_hash, g_str_equal,
diff --git a/lib/gs-plugin.h b/lib/gs-plugin.h
index e2119317d..0f60fc783 100644
--- a/lib/gs-plugin.h
+++ b/lib/gs-plugin.h
@@ -9,7 +9,7 @@
#pragma once
-#include <appstream-glib.h>
+#include <appstream.h>
#include <glib-object.h>
#include <gmodule.h>
#include <gio/gio.h>
diff --git a/lib/gs-self-test.c b/lib/gs-self-test.c
index 5c353987f..2e0d0b792 100644
--- a/lib/gs-self-test.c
+++ b/lib/gs-self-test.c
@@ -274,7 +274,6 @@ gs_plugin_func (void)
GsAppList *list_dup;
GsAppList *list_remove;
GsApp *app;
- g_autoptr(AsProvide) prov = as_provide_new ();
/* check enums converted */
for (guint i = 0; i < GS_PLUGIN_ACTION_LAST; i++) {
@@ -454,9 +453,9 @@ gs_plugin_func (void)
gs_app_list_add (list, app);
g_object_unref (app);
app = gs_app_new ("org.gimp.GIMP");
- as_provide_set_kind (prov, AS_PROVIDE_KIND_ID);
- as_provide_set_value (prov, "gimp.desktop");
- gs_app_add_provide (app, prov);
+ gs_app_add_provided_item (app,
+ AS_PROVIDED_KIND_ID,
+ "gimp.desktop");
gs_app_set_unique_id (app, "user/flathub/*/*/org.gimp.GIMP/*");
gs_app_set_priority (app, 100);
gs_app_list_add (list, app);
@@ -608,10 +607,10 @@ gs_app_unique_id_func (void)
unique_id = "system/flatpak/gnome/desktop/org.gnome.Software.desktop/master";
gs_app_set_from_unique_id (app, unique_id);
g_assert (GS_IS_APP (app));
- g_assert_cmpint (gs_app_get_scope (app), ==, AS_APP_SCOPE_SYSTEM);
+ g_assert_cmpint (gs_app_get_scope (app), ==, AS_COMPONENT_SCOPE_SYSTEM);
g_assert_cmpint (gs_app_get_bundle_kind (app), ==, AS_BUNDLE_KIND_FLATPAK);
g_assert_cmpstr (gs_app_get_origin (app), ==, "gnome");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
g_assert_cmpstr (gs_app_get_id (app), ==, "org.gnome.Software.desktop");
g_assert_cmpstr (gs_app_get_branch (app), ==, "master");
}
diff --git a/lib/gs-utils.c b/lib/gs-utils.c
index 1ba5976aa..6688518c7 100644
--- a/lib/gs-utils.c
+++ b/lib/gs-utils.c
@@ -973,26 +973,21 @@ gs_utils_error_convert_appstream (GError **perror)
return TRUE;
/* custom to this plugin */
- if (error->domain == AS_UTILS_ERROR) {
+ if (error->domain == AS_METADATA_ERROR) {
switch (error->code) {
- case AS_UTILS_ERROR_INVALID_TYPE:
+ case AS_METADATA_ERROR_PARSE:
+ case AS_METADATA_ERROR_FORMAT_UNEXPECTED:
+ case AS_METADATA_ERROR_NO_COMPONENT:
error->code = GS_PLUGIN_ERROR_INVALID_FORMAT;
break;
- case AS_UTILS_ERROR_FAILED:
+ case AS_METADATA_ERROR_FAILED:
default:
error->code = GS_PLUGIN_ERROR_FAILED;
break;
}
- } else if (error->domain == AS_STORE_ERROR) {
+ } else if (error->domain == AS_POOL_ERROR) {
switch (error->code) {
- case AS_UTILS_ERROR_FAILED:
- default:
- error->code = GS_PLUGIN_ERROR_FAILED;
- break;
- }
- } else if (error->domain == AS_ICON_ERROR) {
- switch (error->code) {
- case AS_ICON_ERROR_FAILED:
+ case AS_POOL_ERROR_FAILED:
default:
error->code = GS_PLUGIN_ERROR_FAILED;
break;
diff --git a/meson.build b/meson.build
index fcf80f8c4..a30b8a37d 100644
--- a/meson.build
+++ b/meson.build
@@ -12,7 +12,7 @@ conf.set_quoted('PACKAGE_VERSION', meson.project_version())
# this refers to the gnome-software plugin API version
# this is not in any way related to a package or soname version
-gs_plugin_api_version = '13'
+gs_plugin_api_version = '14'
conf.set_quoted('GS_PLUGIN_API_VERSION', gs_plugin_api_version)
# install docs
diff --git a/plugins/core/gs-appstream.c b/plugins/core/gs-appstream.c
index 866013d6a..412312e5a 100644
--- a/plugins/core/gs-appstream.c
+++ b/plugins/core/gs-appstream.c
@@ -32,7 +32,7 @@ gs_appstream_create_app (GsPlugin *plugin, XbSilo *silo, XbNode *component, GErr
return g_steal_pointer (&app_new);
/* no longer supported */
- if (gs_app_get_kind (app_new) == AS_APP_KIND_SHELL_EXTENSION) {
+ if (gs_app_get_kind (app_new) == AS_COMPONENT_KIND_SHELL_EXTENSION) {
g_set_error (error,
GS_PLUGIN_ERROR,
GS_PLUGIN_ERROR_NOT_SUPPORTED,
@@ -162,8 +162,9 @@ gs_appstream_new_icon (XbNode *component, XbNode *n, AsIconKind icon_kind, guint
as_icon_set_height (icon, sz);
}
icon_path = gs_appstream_build_icon_prefix (component);
- if (icon_path != NULL)
- as_icon_set_prefix (icon, icon_path);
+ /* FIXME-LIBAS */
+ //if (icon_path != NULL)
+ // as_icon_set_prefix (icon, icon_path);
return icon;
}
@@ -373,10 +374,9 @@ gs_appstream_refine_add_provides (GsApp *app, XbNode *component, GError **error)
}
for (guint i = 0; i < provides->len; i++) {
XbNode *provide = g_ptr_array_index (provides, i);
- g_autoptr(AsProvide) pr = as_provide_new ();
- as_provide_set_kind (pr, as_provide_kind_from_string (xb_node_get_element (provide)));
- as_provide_set_value (pr, xb_node_get_text (provide));
- gs_app_add_provide (app, pr);
+ gs_app_add_provided_item (app,
+ as_provided_kind_from_string (xb_node_get_element (provide)),
+ xb_node_get_text (provide));
}
/* success */
@@ -596,7 +596,7 @@ gs_appstream_is_valid_project_group (const gchar *project_group)
{
if (project_group == NULL)
return FALSE;
- return as_utils_is_environment_id (project_group);
+ return as_utils_is_desktop_environment (project_group);
}
static gboolean
@@ -694,14 +694,8 @@ gs_appstream_refine_app (GsPlugin *plugin,
"requires/id[@type='id']"
"[text()='org.gnome.Software.desktop']", NULL);
if (req != NULL) {
-#if AS_CHECK_VERSION(0,7,15)
- gint rc = as_utils_vercmp_full (xb_node_get_attr (req, "version"),
- PACKAGE_VERSION,
- AS_VERSION_COMPARE_FLAG_NONE);
-#else
- gint rc = as_utils_vercmp (xb_node_get_attr (req, "version"),
- PACKAGE_VERSION);
-#endif
+ gint rc = as_utils_compare_versions (xb_node_get_attr (req, "version"),
+ PACKAGE_VERSION);
if (rc > 0) {
g_set_error (error,
GS_PLUGIN_ERROR,
@@ -713,18 +707,18 @@ gs_appstream_refine_app (GsPlugin *plugin,
/* types we can never launch */
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_ADDON:
- case AS_APP_KIND_CODEC:
- case AS_APP_KIND_DRIVER:
- case AS_APP_KIND_FIRMWARE:
- case AS_APP_KIND_FONT:
- case AS_APP_KIND_GENERIC:
- case AS_APP_KIND_INPUT_METHOD:
- case AS_APP_KIND_LOCALIZATION:
- case AS_APP_KIND_OS_UPDATE:
- case AS_APP_KIND_OS_UPGRADE:
- case AS_APP_KIND_RUNTIME:
- case AS_APP_KIND_SOURCE:
+ case AS_COMPONENT_KIND_ADDON:
+ case AS_COMPONENT_KIND_CODEC:
+ case AS_COMPONENT_KIND_DRIVER:
+ case AS_COMPONENT_KIND_FIRMWARE:
+ case AS_COMPONENT_KIND_FONT:
+ case AS_COMPONENT_KIND_GENERIC:
+ case AS_COMPONENT_KIND_INPUT_METHOD:
+ case AS_COMPONENT_KIND_LOCALIZATION:
+ case AS_COMPONENT_KIND_OS_UPDATE:
+ case AS_COMPONENT_KIND_OPERATING_SYSTEM:
+ case AS_COMPONENT_KIND_RUNTIME:
+ case AS_COMPONENT_KIND_REPOSITORY:
gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
break;
default:
@@ -769,7 +763,7 @@ gs_appstream_refine_app (GsPlugin *plugin,
/* set scope */
tmp = xb_node_query_text (component, "../info/scope", NULL);
if (tmp != NULL)
- gs_app_set_scope (app, as_app_scope_from_string (tmp));
+ gs_app_set_scope (app, as_component_scope_from_string (tmp));
/* set content rating */
if (TRUE) {
@@ -885,10 +879,10 @@ gs_appstream_refine_app (GsPlugin *plugin,
}
/* set id kind */
- if (gs_app_get_kind (app) == AS_APP_KIND_UNKNOWN ||
- gs_app_get_kind (app) == AS_APP_KIND_GENERIC) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_UNKNOWN ||
+ gs_app_get_kind (app) == AS_COMPONENT_KIND_GENERIC) {
tmp = xb_node_get_attr (component, "type");
- gs_app_set_kind (app, as_app_kind_from_string (tmp));
+ gs_app_set_kind (app, as_component_kind_from_string (tmp));
}
/* set the release date */
@@ -1010,34 +1004,6 @@ gs_appstream_refine_app (GsPlugin *plugin,
gs_app_add_kudo (app, GS_APP_KUDO_FEATURED_RECOMMENDED);
if (xb_node_query_text (component, "categories/category[text()='Featured']", NULL) != NULL)
gs_app_add_kudo (app, GS_APP_KUDO_FEATURED_RECOMMENDED);
-
- /* add new-style kudos */
- kudos = xb_node_query (component, "kudos/kudo", 0, NULL);
- for (guint i = 0; kudos != NULL && i < kudos->len; i++) {
- XbNode *kudo = g_ptr_array_index (kudos, i);
- switch (as_kudo_kind_from_string (xb_node_get_text (kudo))) {
- case AS_KUDO_KIND_SEARCH_PROVIDER:
- gs_app_add_kudo (app, GS_APP_KUDO_SEARCH_PROVIDER);
- break;
- case AS_KUDO_KIND_USER_DOCS:
- gs_app_add_kudo (app, GS_APP_KUDO_INSTALLS_USER_DOCS);
- break;
- case AS_KUDO_KIND_MODERN_TOOLKIT:
- gs_app_add_kudo (app, GS_APP_KUDO_MODERN_TOOLKIT);
- break;
- case AS_KUDO_KIND_NOTIFICATIONS:
- gs_app_add_kudo (app, GS_APP_KUDO_USES_NOTIFICATIONS);
- break;
- case AS_KUDO_KIND_HIGH_CONTRAST:
- gs_app_add_kudo (app, GS_APP_KUDO_HIGH_CONTRAST);
- break;
- case AS_KUDO_KIND_HI_DPI_ICON:
- gs_app_add_kudo (app, GS_APP_KUDO_HI_DPI_ICON);
- break;
- default:
- break;
- }
- }
}
/* we have an origin in the XML */
@@ -1065,7 +1031,7 @@ gs_appstream_refine_app (GsPlugin *plugin,
}
typedef struct {
- AsAppSearchMatch match_value;
+ AsSearchTokenMatch match_value;
XbQuery *query;
} GsAppstreamSearchHelper;
@@ -1127,18 +1093,18 @@ gs_appstream_search (GsPlugin *plugin,
g_autoptr(GPtrArray) components = NULL;
g_autoptr(GTimer) timer = g_timer_new ();
const struct {
- AsAppSearchMatch match_value;
+ AsSearchTokenMatch match_value;
const gchar *xpath;
} queries[] = {
- { AS_APP_SEARCH_MATCH_MIMETYPE, "mimetypes/mimetype[text()~=stem(?)]" },
- { AS_APP_SEARCH_MATCH_PKGNAME, "pkgname[text()~=stem(?)]" },
- { AS_APP_SEARCH_MATCH_COMMENT, "summary[text()~=stem(?)]" },
- { AS_APP_SEARCH_MATCH_NAME, "name[text()~=stem(?)]" },
- { AS_APP_SEARCH_MATCH_KEYWORD, "keywords/keyword[text()~=stem(?)]" },
- { AS_APP_SEARCH_MATCH_ID, "id[text()~=stem(?)]" },
- { AS_APP_SEARCH_MATCH_ID, "launchable[text()~=stem(?)]" },
- { AS_APP_SEARCH_MATCH_ORIGIN, "../components[@origin~=stem(?)]" },
- { AS_APP_SEARCH_MATCH_NONE, NULL }
+ { AS_SEARCH_TOKEN_MATCH_MIMETYPE, "mimetypes/mimetype[text()~=stem(?)]" },
+ { AS_SEARCH_TOKEN_MATCH_PKGNAME, "pkgname[text()~=stem(?)]" },
+ { AS_SEARCH_TOKEN_MATCH_SUMMARY, "summary[text()~=stem(?)]" },
+ { AS_SEARCH_TOKEN_MATCH_NAME, "name[text()~=stem(?)]" },
+ { AS_SEARCH_TOKEN_MATCH_KEYWORD, "keywords/keyword[text()~=stem(?)]" },
+ { AS_SEARCH_TOKEN_MATCH_ID, "id[text()~=stem(?)]" },
+ { AS_SEARCH_TOKEN_MATCH_ID, "launchable[text()~=stem(?)]" },
+ { AS_SEARCH_TOKEN_MATCH_ORIGIN, "../components[@origin~=stem(?)]" },
+ { AS_SEARCH_TOKEN_MATCH_NONE, NULL }
};
/* add some weighted queries */
@@ -1560,36 +1526,36 @@ gs_appstream_component_add_extra_info (GsPlugin *plugin, XbBuilderNode *componen
/* add the gnome-software-specific 'Addon' group and ensure they
* all have an icon set */
- switch (as_app_kind_from_string (kind)) {
- case AS_APP_KIND_WEB_APP:
+ switch (as_component_kind_from_string (kind)) {
+ case AS_COMPONENT_KIND_WEB_APP:
gs_appstream_component_add_keyword (component, kind);
break;
- case AS_APP_KIND_FONT:
+ case AS_COMPONENT_KIND_FONT:
gs_appstream_component_add_category (component, "Addon");
gs_appstream_component_add_category (component, "Font");
break;
- case AS_APP_KIND_DRIVER:
+ case AS_COMPONENT_KIND_DRIVER:
gs_appstream_component_add_category (component, "Addon");
gs_appstream_component_add_category (component, "Driver");
gs_appstream_component_add_icon (component, "application-x-firmware-symbolic");
break;
- case AS_APP_KIND_LOCALIZATION:
+ case AS_COMPONENT_KIND_LOCALIZATION:
gs_appstream_component_add_category (component, "Addon");
gs_appstream_component_add_category (component, "Localization");
gs_appstream_component_add_icon (component, "accessories-dictionary-symbolic");
break;
- case AS_APP_KIND_CODEC:
+ case AS_COMPONENT_KIND_CODEC:
gs_appstream_component_add_category (component, "Addon");
gs_appstream_component_add_category (component, "Codec");
gs_appstream_component_add_icon (component, "application-x-addon");
break;
- case AS_APP_KIND_INPUT_METHOD:
+ case AS_COMPONENT_KIND_INPUT_METHOD:
gs_appstream_component_add_keyword (component, kind);
gs_appstream_component_add_category (component, "Addon");
gs_appstream_component_add_category (component, "InputSource");
gs_appstream_component_add_icon (component, "system-run-symbolic");
break;
- case AS_APP_KIND_FIRMWARE:
+ case AS_COMPONENT_KIND_FIRMWARE:
gs_appstream_component_add_icon (component, "system-run-symbolic");
break;
default:
diff --git a/plugins/core/gs-plugin-appstream.c b/plugins/core/gs-plugin-appstream.c
index f8fa1864e..44564ae77 100644
--- a/plugins/core/gs-plugin-appstream.c
+++ b/plugins/core/gs-plugin-appstream.c
@@ -214,20 +214,28 @@ gs_plugin_appstream_load_desktop_cb (XbBuilderSource *self,
GCancellable *cancellable,
GError **error)
{
- GString *xml;
- g_autoptr(AsApp) app = as_app_new ();
+ gchar *xml;
+ g_autoptr(AsComponent) cpt = as_component_new ();
+ g_autoptr(AsContext) actx = as_context_new ();
g_autoptr(GBytes) bytes = NULL;
+ gboolean ret;
+
bytes = xb_builder_source_ctx_get_bytes (ctx, cancellable, error);
if (bytes == NULL)
return NULL;
- as_app_set_id (app, xb_builder_source_ctx_get_filename (ctx));
- if (!as_app_parse_data (app, bytes, AS_APP_PARSE_FLAG_USE_FALLBACKS, error))
+
+ as_component_set_id (cpt, xb_builder_source_ctx_get_filename (ctx));
+ ret = as_component_load_from_data (cpt,
+ actx,
+ AS_FORMAT_KIND_DESKTOP_ENTRY,
+ g_bytes_get_data (bytes, NULL),
+ error);
+ if (!ret)
return NULL;
- xml = as_app_to_xml (app, error);
+ xml = as_component_to_xml_data (cpt, actx, error);
if (xml == NULL)
return NULL;
- g_string_prepend (xml, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
- return g_memory_input_stream_new_from_data (g_string_free (xml, FALSE), -1, g_free);
+ return g_memory_input_stream_new_from_data (xml, -1, g_free);
}
static gboolean
@@ -312,19 +320,29 @@ gs_plugin_appstream_load_dep11_cb (XbBuilderSource *self,
GCancellable *cancellable,
GError **error)
{
- GString *xml;
- g_autoptr(AsStore) store = as_store_new ();
+ g_autoptr(AsMetadata) mdata = as_metadata_new ();
g_autoptr(GBytes) bytes = NULL;
+ GError *tmp_error = NULL;
+ gchar *xml;
+
bytes = xb_builder_source_ctx_get_bytes (ctx, cancellable, error);
if (bytes == NULL)
return NULL;
- if (!as_store_from_bytes (store, bytes, cancellable, error))
- return FALSE;
- xml = as_store_to_xml (store, AS_NODE_INSERT_FLAG_NONE);
+
+ as_metadata_set_format_style (mdata, AS_FORMAT_STYLE_COLLECTION);
+ as_metadata_parse (mdata,
+ g_bytes_get_data (bytes, NULL),
+ AS_FORMAT_KIND_YAML,
+ &tmp_error);
+ if (tmp_error != NULL) {
+ g_propagate_error (error, tmp_error);
+ return NULL;
+ }
+
+ xml = as_metadata_components_to_collection (mdata, AS_FORMAT_KIND_XML, error);
if (xml == NULL)
return NULL;
- g_string_prepend (xml, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
- return g_memory_input_stream_new_from_data (g_string_free (xml, FALSE), -1, g_free);
+ return g_memory_input_stream_new_from_data (xml, -1, g_free);
}
static gboolean
@@ -655,7 +673,7 @@ gs_plugin_url_to_app (GsPlugin *plugin,
app = gs_appstream_create_app (plugin, priv->silo, component, error);
if (app == NULL)
return FALSE;
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_list_add (list, app);
return TRUE;
}
@@ -908,7 +926,7 @@ gs_plugin_refine_wildcard (GsPlugin *plugin,
new = gs_appstream_create_app (plugin, priv->silo, component, error);
if (new == NULL)
return FALSE;
- gs_app_set_scope (new, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (new, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_subsume_metadata (new, app);
if (!gs_appstream_refine_app (plugin, new, priv->silo, component,
refine_flags, error))
@@ -990,7 +1008,7 @@ gs_plugin_add_installed (GsPlugin *plugin,
if (app == NULL)
return FALSE;
gs_app_set_state (app, GS_APP_STATE_INSTALLED);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_list_add (list, app);
}
return TRUE;
diff --git a/plugins/core/gs-plugin-generic-updates.c b/plugins/core/gs-plugin-generic-updates.c
index c42cddc14..2a45a4585 100644
--- a/plugins/core/gs-plugin-generic-updates.c
+++ b/plugins/core/gs-plugin-generic-updates.c
@@ -25,12 +25,12 @@ gs_plugin_generic_updates_merge_os_update (GsApp *app)
{
/* this is only for grouping system-installed packages */
if (gs_app_get_bundle_kind (app) != AS_BUNDLE_KIND_PACKAGE ||
- gs_app_get_scope (app) != AS_APP_SCOPE_SYSTEM)
+ gs_app_get_scope (app) != AS_COMPONENT_SCOPE_SYSTEM)
return FALSE;
- if (gs_app_get_kind (app) == AS_APP_KIND_GENERIC)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_GENERIC)
return TRUE;
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return TRUE;
return FALSE;
@@ -47,7 +47,7 @@ gs_plugin_generic_updates_get_os_update (GsPlugin *plugin)
app = gs_app_new (id);
gs_app_add_quirk (app, GS_APP_QUIRK_IS_PROXY);
gs_app_set_management_plugin (app, "");
- gs_app_set_kind (app, AS_APP_KIND_OS_UPDATE);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_OS_UPDATE);
gs_app_set_state (app, GS_APP_STATE_UPDATABLE_LIVE);
gs_app_set_name (app,
GS_APP_QUALITY_NORMAL,
diff --git a/plugins/core/gs-plugin-icons.c b/plugins/core/gs-plugin-icons.c
index 112f1d253..225276ed7 100644
--- a/plugins/core/gs-plugin-icons.c
+++ b/plugins/core/gs-plugin-icons.c
@@ -240,7 +240,8 @@ gs_plugin_icons_load_stock (GsPlugin *plugin, AsIcon *icon, GError **error)
"icon has no name");
return NULL;
}
- gs_plugin_icons_add_theme_path (plugin, as_icon_get_prefix (icon));
+ /* FIXME-LIBAS */
+ //gs_plugin_icons_add_theme_path (plugin, as_icon_get_prefix (icon));
size = (gint) (64 * gs_plugin_get_scale (plugin));
pixbuf = gtk_icon_theme_load_icon (priv->icon_theme,
as_icon_get_name (icon),
@@ -258,12 +259,28 @@ gs_plugin_icons_load_stock (GsPlugin *plugin, AsIcon *icon, GError **error)
static GdkPixbuf *
gs_plugin_icons_load_cached (GsPlugin *plugin, AsIcon *icon, GError **error)
{
- if (!as_icon_load (icon, AS_ICON_LOAD_FLAG_SEARCH_SIZE, error)) {
- gs_utils_error_convert_gdk_pixbuf (error);
- gs_utils_error_convert_appstream (error);
+ const gchar *fname;
+
+ /* FIXME-libas */
+ //if (!as_icon_load (icon, AS_ICON_LOAD_FLAG_SEARCH_SIZE, error)) {
+ // gs_utils_error_convert_gdk_pixbuf (error);
+ // gs_utils_error_convert_appstream (error);
+ // return NULL;
+ //}
+
+ fname = as_icon_get_filename (icon);
+ if (fname == NULL) {
+ g_set_error (error,
+ GS_PLUGIN_ERROR,
+ GS_PLUGIN_ERROR_FAILED,
+ "Icon %s has no filename - can not load pixbuf.",
+ as_icon_get_name (icon));
return NULL;
}
- return g_object_ref (as_icon_get_pixbuf (icon));
+ return gdk_pixbuf_new_from_file_at_size (fname,
+ (gint) as_icon_get_width (icon),
+ (gint) as_icon_get_height (icon),
+ error);
}
static gboolean
diff --git a/plugins/core/gs-plugin-key-colors-metadata.c b/plugins/core/gs-plugin-key-colors-metadata.c
index 2b8fa2135..7e31e5ae8 100644
--- a/plugins/core/gs-plugin-key-colors-metadata.c
+++ b/plugins/core/gs-plugin-key-colors-metadata.c
@@ -58,7 +58,7 @@ refine_app (GsPlugin *plugin,
color->red * 255.f,
color->green * 255.f,
color->blue * 255.f);
- as_utils_string_replace (css_new, key, value);
+ as_gstring_replace (css_new, key, value);
}
/* only replace if it's different */
diff --git a/plugins/core/gs-plugin-os-release.c b/plugins/core/gs-plugin-os-release.c
index 378748040..03aee6fcd 100644
--- a/plugins/core/gs-plugin-os-release.c
+++ b/plugins/core/gs-plugin-os-release.c
@@ -19,7 +19,7 @@ gs_plugin_initialize (GsPlugin *plugin)
{
GsPluginData *priv = gs_plugin_alloc_data (plugin, sizeof(GsPluginData));
priv->app_system = gs_app_new ("system");
- gs_app_set_kind (priv->app_system, AS_APP_KIND_OS_UPGRADE);
+ gs_app_set_kind (priv->app_system, AS_COMPONENT_KIND_OPERATING_SYSTEM);
gs_app_set_state (priv->app_system, GS_APP_STATE_INSTALLED);
}
diff --git a/plugins/core/gs-self-test.c b/plugins/core/gs-self-test.c
index 364c6c20c..f2c285890 100644
--- a/plugins/core/gs-self-test.c
+++ b/plugins/core/gs-self-test.c
@@ -46,7 +46,7 @@ gs_plugins_core_search_repo_name_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (list), ==, 1);
app = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_id (app), ==, "arachne.desktop");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
}
static void
@@ -76,7 +76,7 @@ gs_plugins_core_os_release_func (GsPluginLoader *plugin_loader)
/* make sure there is valid content */
g_assert_cmpstr (gs_app_get_id (app), ==, "org.fedoraproject.Fedora-25");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_OS_UPGRADE);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_OPERATING_SYSTEM);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_INSTALLED);
g_assert_cmpstr (gs_app_get_name (app), ==, "Fedora");
g_assert_cmpstr (gs_app_get_version (app), ==, "25");
@@ -117,12 +117,12 @@ gs_plugins_core_generic_updates_func (GsPluginLoader *plugin_loader)
list = gs_app_list_new ();
app1 = gs_app_new ("package1");
app2 = gs_app_new ("package2");
- gs_app_set_kind (app1, AS_APP_KIND_GENERIC);
- gs_app_set_kind (app2, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app1, AS_COMPONENT_KIND_GENERIC);
+ gs_app_set_kind (app2, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app1, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_bundle_kind (app2, AS_BUNDLE_KIND_PACKAGE);
- gs_app_set_scope (app1, AS_APP_SCOPE_SYSTEM);
- gs_app_set_scope (app2, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app1, AS_COMPONENT_SCOPE_SYSTEM);
+ gs_app_set_scope (app2, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_set_state (app1, GS_APP_STATE_UPDATABLE);
gs_app_set_state (app2, GS_APP_STATE_UPDATABLE);
gs_app_add_source (app1, "package1");
@@ -146,7 +146,7 @@ gs_plugins_core_generic_updates_func (GsPluginLoader *plugin_loader)
/* make sure the os update is valid */
g_assert_cmpstr (gs_app_get_id (os_update), ==, "org.gnome.Software.OsUpdate");
- g_assert_cmpint (gs_app_get_kind (os_update), ==, AS_APP_KIND_OS_UPDATE);
+ g_assert_cmpint (gs_app_get_kind (os_update), ==, AS_COMPONENT_KIND_OS_UPDATE);
g_assert (gs_app_has_quirk (os_update, GS_APP_QUIRK_IS_PROXY));
/* must have two related apps, the ones we added earlier */
@@ -157,7 +157,7 @@ gs_plugins_core_generic_updates_func (GsPluginLoader *plugin_loader)
list_wildcard = gs_app_list_new ();
app_wildcard = gs_app_new ("nosuchapp.desktop");
gs_app_add_quirk (app_wildcard, GS_APP_QUIRK_IS_WILDCARD);
- gs_app_set_kind (app_wildcard, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app_wildcard, AS_COMPONENT_KIND_GENERIC);
gs_app_list_add (list_wildcard, app_wildcard);
plugin_job2 = gs_plugin_job_newv (GS_PLUGIN_ACTION_REFINE,
"list", list_wildcard,
@@ -171,7 +171,7 @@ gs_plugins_core_generic_updates_func (GsPluginLoader *plugin_loader)
/* no OsUpdate item created */
for (guint i = 0; i < gs_app_list_length (list_wildcard); i++) {
GsApp *app_tmp = gs_app_list_index (list_wildcard, i);
- g_assert_cmpint (gs_app_get_kind (app_tmp), !=, AS_APP_KIND_OS_UPDATE);
+ g_assert_cmpint (gs_app_get_kind (app_tmp), !=, AS_COMPONENT_KIND_OS_UPDATE);
g_assert (!gs_app_has_quirk (app_tmp, GS_APP_QUIRK_IS_PROXY));
}
}
diff --git a/plugins/dpkg/gs-plugin-dpkg.c b/plugins/dpkg/gs-plugin-dpkg.c
index a41c7c931..eb386a127 100644
--- a/plugins/dpkg/gs-plugin-dpkg.c
+++ b/plugins/dpkg/gs-plugin-dpkg.c
@@ -84,7 +84,7 @@ gs_plugin_file_to_app (GsPlugin *plugin,
gs_app_set_size_installed (app, 1024 * g_ascii_strtoull (tokens[2], NULL, 10));
gs_app_set_url (app, AS_URL_KIND_HOMEPAGE, tokens[3]);
gs_app_set_summary (app, GS_APP_QUALITY_LOWEST, tokens[4]);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_metadata (app, "GnomeSoftware::Creator",
gs_plugin_get_name (plugin));
diff --git a/plugins/dummy/gs-plugin-dummy.c b/plugins/dummy/gs-plugin-dummy.c
index 87d3401c6..c8176e9ae 100644
--- a/plugins/dummy/gs-plugin-dummy.c
+++ b/plugins/dummy/gs-plugin-dummy.c
@@ -55,7 +55,7 @@ gs_plugin_initialize (GsPlugin *plugin)
/* 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_kind (priv->cached_origin, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_origin_hostname (priv->cached_origin, "http://www.bbc.co.uk/");
/* add the source to the plugin cache which allows us to match the
@@ -316,7 +316,7 @@ gs_plugin_add_search (GsPlugin *plugin,
gs_app_add_icon (app, ic);
gs_app_set_size_installed (app, 42 * 1024 * 1024);
gs_app_set_size_download (app, 50 * 1024 * 1024);
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_state (app, GS_APP_STATE_INSTALLED);
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_set_metadata (app, "GnomeSoftware::Creator",
@@ -358,7 +358,7 @@ gs_plugin_add_updates (GsPlugin *plugin,
gs_app_set_update_details (app, "Do not crash when using libvirt.");
gs_app_set_update_urgency (app, AS_URGENCY_KIND_HIGH);
gs_app_add_icon (app, ic);
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_state (app, GS_APP_STATE_UPDATABLE_LIVE);
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_list_add (list, app);
@@ -370,9 +370,9 @@ gs_plugin_add_updates (GsPlugin *plugin,
gs_app_set_summary (app, GS_APP_QUALITY_NORMAL, "Development files for libvirt");
gs_app_set_update_details (app, "Fix several memory leaks.");
gs_app_set_update_urgency (app, AS_URGENCY_KIND_LOW);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_set_state (app, GS_APP_STATE_UPDATABLE);
gs_app_add_source (app, "libvirt-glib-devel");
gs_app_add_source_id (app, "libvirt-glib-devel;0.0.1;noarch;fedora");
@@ -386,9 +386,9 @@ gs_plugin_add_updates (GsPlugin *plugin,
gs_app_set_summary (app, GS_APP_QUALITY_NORMAL, "library for chiron");
gs_app_set_update_details (app, "Do not crash when using libvirt.");
gs_app_set_update_urgency (app, AS_URGENCY_KIND_HIGH);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_set_state (app, GS_APP_STATE_UPDATABLE_LIVE);
gs_app_add_source (app, "chiron-libs");
gs_app_add_source_id (app, "chiron-libs;0.0.1;i386;updates-testing");
@@ -403,7 +403,7 @@ gs_plugin_add_updates (GsPlugin *plugin,
gs_app_set_update_details (proxy, "Update all related apps.");
gs_app_set_update_urgency (proxy, AS_URGENCY_KIND_HIGH);
gs_app_add_icon (proxy, ic);
- gs_app_set_kind (proxy, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (proxy, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_add_quirk (proxy, GS_APP_QUIRK_IS_PROXY);
gs_app_set_state (proxy, GS_APP_STATE_UPDATABLE_LIVE);
gs_app_set_management_plugin (proxy, gs_plugin_get_name (plugin));
@@ -414,7 +414,7 @@ gs_plugin_add_updates (GsPlugin *plugin,
app = gs_app_new ("proxy-related-app.desktop");
gs_app_set_name (app, GS_APP_QUALITY_NORMAL, "Related app");
gs_app_set_summary (app, GS_APP_QUALITY_NORMAL, "A related app");
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_state (app, GS_APP_STATE_UPDATABLE_LIVE);
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_add_related (proxy, app);
@@ -424,7 +424,7 @@ gs_plugin_add_updates (GsPlugin *plugin,
app = gs_app_new ("proxy-another-related-app.desktop");
gs_app_set_name (app, GS_APP_QUALITY_NORMAL, "Another Related app");
gs_app_set_summary (app, GS_APP_QUALITY_NORMAL, "A related app");
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_state (app, GS_APP_STATE_UPDATABLE_LIVE);
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_add_related (proxy, app);
@@ -448,7 +448,7 @@ gs_plugin_add_installed (GsPlugin *plugin,
g_autoptr(GsApp) app = gs_app_new (NULL);
gs_app_add_source (app, packages[i]);
gs_app_set_state (app, GS_APP_STATE_INSTALLED);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_origin (app, "london-west");
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_list_add (list, app);
@@ -458,7 +458,7 @@ gs_plugin_add_installed (GsPlugin *plugin,
for (i = 0; app_ids[i] != NULL; i++) {
g_autoptr(GsApp) app = gs_app_new (app_ids[i]);
gs_app_set_state (app, GS_APP_STATE_INSTALLED);
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_list_add (list, app);
}
@@ -484,7 +484,7 @@ gs_plugin_add_popular (GsPlugin *plugin,
/* add again, this time with a prefix so it gets deduplicated */
app2 = gs_app_new ("zeus.desktop");
- gs_app_set_scope (app2, AS_APP_SCOPE_USER);
+ gs_app_set_scope (app2, AS_COMPONENT_SCOPE_USER);
gs_app_set_bundle_kind (app2, AS_BUNDLE_KIND_SNAP);
gs_app_set_metadata (app2, "GnomeSoftware::Creator",
gs_plugin_get_name (plugin));
@@ -618,8 +618,8 @@ refine_app (GsPlugin *plugin,
g_strcmp0 (gs_app_get_id (app), "mate-spell.desktop") == 0 ||
g_strcmp0 (gs_app_get_id (app), "com.hughski.ColorHug2.driver") == 0 ||
g_strcmp0 (gs_app_get_id (app), "zeus.desktop") == 0) {
- if (gs_app_get_kind (app) == AS_APP_KIND_UNKNOWN)
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_UNKNOWN)
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
}
/* license */
@@ -741,10 +741,10 @@ gs_plugin_add_category_apps (GsPlugin *plugin,
gs_app_set_name (app, GS_APP_QUALITY_NORMAL, "Chiron");
gs_app_set_summary (app, GS_APP_QUALITY_NORMAL, "View and use virtual machines");
gs_app_set_url (app, AS_URL_KIND_HOMEPAGE, "http://www.box.org");
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_state (app, GS_APP_STATE_AVAILABLE);
gs_app_set_pixbuf (app, gdk_pixbuf_new_from_file
("/usr/share/icons/hicolor/48x48/apps/chiron.desktop.png", NULL));
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_list_add (list, app);
return TRUE;
@@ -761,10 +761,10 @@ gs_plugin_add_recent (GsPlugin *plugin,
gs_app_set_name (app, GS_APP_QUALITY_NORMAL, "Chiron");
gs_app_set_summary (app, GS_APP_QUALITY_NORMAL, "View and use virtual machines");
gs_app_set_url (app, AS_URL_KIND_HOMEPAGE, "http://www.box.org");
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_state (app, GS_APP_STATE_AVAILABLE);
gs_app_set_pixbuf (app, gdk_pixbuf_new_from_file
("/usr/share/icons/hicolor/48x48/apps/chiron.desktop.png", NULL));
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_list_add (list, app);
return TRUE;
@@ -792,8 +792,8 @@ gs_plugin_add_distro_upgrades (GsPlugin *plugin,
}
app = gs_app_new ("org.fedoraproject.release-rawhide.upgrade");
- gs_app_set_scope (app, AS_APP_SCOPE_USER);
- gs_app_set_kind (app, AS_APP_KIND_OS_UPGRADE);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_USER);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_OPERATING_SYSTEM);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_state (app, GS_APP_STATE_AVAILABLE);
gs_app_set_name (app, GS_APP_QUALITY_LOWEST, "Fedora");
diff --git a/plugins/dummy/gs-self-test.c b/plugins/dummy/gs-self-test.c
index bc8da5015..de0e91959 100644
--- a/plugins/dummy/gs-self-test.c
+++ b/plugins/dummy/gs-self-test.c
@@ -267,7 +267,7 @@ gs_plugins_dummy_updates_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (list), ==, 3);
app = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_id (app), ==, "chiron.desktop");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_UPDATABLE_LIVE);
g_assert_cmpstr (gs_app_get_update_details (app), ==, "Do not crash when using libvirt.");
g_assert_cmpint (gs_app_get_update_urgency (app), ==, AS_URGENCY_KIND_HIGH);
@@ -277,7 +277,7 @@ gs_plugins_dummy_updates_func (GsPluginLoader *plugin_loader)
g_assert_cmpstr (gs_app_get_id (app), ==, "org.gnome.Software.OsUpdate");
g_assert_cmpstr (gs_app_get_name (app), ==, "OS Updates");
g_assert_cmpstr (gs_app_get_summary (app), ==, "Includes performance, stability and security
improvements.");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_OS_UPDATE);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_OS_UPDATE);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_UPDATABLE);
g_assert_cmpint (gs_app_list_length (gs_app_get_related (app)), ==, 2);
@@ -309,7 +309,7 @@ gs_plugins_dummy_distro_upgrades_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (list), ==, 1);
app = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_id (app), ==, "org.fedoraproject.release-rawhide.upgrade");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_OS_UPGRADE);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_OPERATING_SYSTEM);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_AVAILABLE);
/* this should be set with a higher priority by AppStream */
@@ -369,7 +369,7 @@ gs_plugins_dummy_installed_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (list), ==, 1);
app = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_id (app), ==, "zeus.desktop");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_INSTALLED);
g_assert_cmpstr (gs_app_get_name (app), ==, "Zeus");
g_assert_cmpstr (gs_app_get_source_default (app), ==, "zeus");
@@ -396,7 +396,7 @@ gs_plugins_dummy_installed_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (addons), ==, 1);
addon = gs_app_list_index (addons, 0);
g_assert_cmpstr (gs_app_get_id (addon), ==, "zeus-spell.addon");
- g_assert_cmpint (gs_app_get_kind (addon), ==, AS_APP_KIND_ADDON);
+ g_assert_cmpint (gs_app_get_kind (addon), ==, AS_COMPONENT_KIND_ADDON);
g_assert_cmpint (gs_app_get_state (addon), ==, GS_APP_STATE_AVAILABLE);
g_assert_cmpstr (gs_app_get_name (addon), ==, "Spell Check");
g_assert_cmpstr (gs_app_get_source_default (addon), ==, "zeus-spell");
@@ -427,7 +427,7 @@ gs_plugins_dummy_search_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (list), ==, 1);
app = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_id (app), ==, "zeus.desktop");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
}
static void
@@ -454,10 +454,10 @@ gs_plugins_dummy_search_alternate_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (list), ==, 2);
app_tmp = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_id (app_tmp), ==, "chiron.desktop");
- g_assert_cmpint (gs_app_get_kind (app_tmp), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app_tmp), ==, AS_COMPONENT_KIND_DESKTOP_APP);
app_tmp = gs_app_list_index (list, 1);
g_assert_cmpstr (gs_app_get_id (app_tmp), ==, "zeus.desktop");
- g_assert_cmpint (gs_app_get_kind (app_tmp), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app_tmp), ==, AS_COMPONENT_KIND_DESKTOP_APP);
}
static void
@@ -516,7 +516,7 @@ gs_plugins_dummy_url_to_app_func (GsPluginLoader *plugin_loader)
g_assert_no_error (error);
g_assert (app != NULL);
g_assert_cmpstr (gs_app_get_id (app), ==, "chiron.desktop");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
}
static void
@@ -633,7 +633,7 @@ gs_plugins_dummy_limit_parallel_ops_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (list), ==, 1);
app1 = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_id (app1), ==, "org.fedoraproject.release-rawhide.upgrade");
- g_assert_cmpint (gs_app_get_kind (app1), ==, AS_APP_KIND_OS_UPGRADE);
+ g_assert_cmpint (gs_app_get_kind (app1), ==, AS_COMPONENT_KIND_OPERATING_SYSTEM);
g_assert_cmpint (gs_app_get_state (app1), ==, GS_APP_STATE_AVAILABLE);
/* allow only one operation at a time */
diff --git a/plugins/eos-updater/gs-plugin-eos-updater.c b/plugins/eos-updater/gs-plugin-eos-updater.c
index 903a2528b..a8d7127a7 100644
--- a/plugins/eos-updater/gs-plugin-eos-updater.c
+++ b/plugins/eos-updater/gs-plugin-eos-updater.c
@@ -556,8 +556,8 @@ gs_plugin_setup (GsPlugin *plugin,
/* create the OS upgrade */
app = gs_app_new ("com.endlessm.EOS.upgrade");
gs_app_add_icon (app, ic);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
- gs_app_set_kind (app, AS_APP_KIND_OS_UPGRADE);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_OPERATING_SYSTEM);
/* TRANSLATORS: ‘Endless OS’ is a brand name; https://endlessos.com/ */
gs_app_set_name (app, GS_APP_QUALITY_LOWEST, _("Endless OS"));
gs_app_set_summary (app, GS_APP_QUALITY_NORMAL,
diff --git a/plugins/fedora-langpacks/gs-plugin-fedora-langpacks.c
b/plugins/fedora-langpacks/gs-plugin-fedora-langpacks.c
index ea673b10c..26534548b 100644
--- a/plugins/fedora-langpacks/gs-plugin-fedora-langpacks.c
+++ b/plugins/fedora-langpacks/gs-plugin-fedora-langpacks.c
@@ -86,9 +86,9 @@ gs_plugin_add_langpacks (GsPlugin *plugin,
if (!g_file_test (cachefn, G_FILE_TEST_EXISTS)) {
g_autoptr(GsApp) app = gs_app_new (NULL);
gs_app_set_metadata (app, "GnomeSoftware::Creator", gs_plugin_get_name (plugin));
- gs_app_set_kind (app, AS_APP_KIND_LOCALIZATION);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_LOCALIZATION);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_add_source (app, langpack_pkgname);
gs_app_list_add (list, app);
diff --git a/plugins/fedora-langpacks/gs-self-test.c b/plugins/fedora-langpacks/gs-self-test.c
index ae2344ced..df15e33d5 100644
--- a/plugins/fedora-langpacks/gs-self-test.c
+++ b/plugins/fedora-langpacks/gs-self-test.c
@@ -52,7 +52,7 @@ gs_plugins_fedora_langpacks_func (GsPluginLoader *plugin_loader)
/* check app's source and kind */
app = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_source_default (app), ==, "langpacks-ja");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_LOCALIZATION);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_LOCALIZATION);
}
int
diff --git a/plugins/fedora-pkgdb-collections/gs-plugin-fedora-pkgdb-collections.c
b/plugins/fedora-pkgdb-collections/gs-plugin-fedora-pkgdb-collections.c
index e5abbd1d0..c26f846c8 100644
--- a/plugins/fedora-pkgdb-collections/gs-plugin-fedora-pkgdb-collections.c
+++ b/plugins/fedora-pkgdb-collections/gs-plugin-fedora-pkgdb-collections.c
@@ -153,7 +153,7 @@ gs_plugin_setup (GsPlugin *plugin, GCancellable *cancellable, GError **error)
/* 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_kind (priv->cached_origin, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_origin_hostname (priv->cached_origin,
FEDORA_PKGDB_COLLECTIONS_API_URI);
@@ -275,7 +275,7 @@ _create_upgrade_from_info (GsPlugin *plugin, PkgdbItem *item)
/* create */
app = gs_app_new (app_id);
gs_app_set_state (app, GS_APP_STATE_AVAILABLE);
- gs_app_set_kind (app, AS_APP_KIND_OS_UPGRADE);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_OPERATING_SYSTEM);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_name (app, GS_APP_QUALITY_LOWEST, item->name);
gs_app_set_summary (app, GS_APP_QUALITY_LOWEST,
@@ -514,7 +514,7 @@ refine_app_locked (GsPlugin *plugin,
const gchar *cpe_name;
/* not for us */
- if (gs_app_get_kind (app) != AS_APP_KIND_OS_UPGRADE)
+ if (gs_app_get_kind (app) != AS_COMPONENT_KIND_OPERATING_SYSTEM)
return TRUE;
/* not enough metadata */
diff --git a/plugins/flatpak/gs-flatpak-utils.c b/plugins/flatpak/gs-flatpak-utils.c
index ce530bd32..2a475c7d1 100644
--- a/plugins/flatpak/gs-flatpak-utils.c
+++ b/plugins/flatpak/gs-flatpak-utils.c
@@ -66,7 +66,7 @@ gs_flatpak_app_new_from_remote (FlatpakRemote *xremote)
g_autoptr(GsApp) app = NULL;
app = gs_flatpak_app_new (flatpak_remote_get_name (xremote));
- gs_app_set_kind (app, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_state (app, flatpak_remote_get_disabled (xremote) ?
GS_APP_STATE_AVAILABLE : GS_APP_STATE_INSTALLED);
gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
@@ -164,7 +164,7 @@ gs_flatpak_app_new_from_repo_file (GFile *file,
/* create source */
app = gs_flatpak_app_new (repo_id);
gs_flatpak_app_set_file_kind (app, GS_FLATPAK_APP_FILE_KIND_REPO);
- gs_app_set_kind (app, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_state (app, GS_APP_STATE_AVAILABLE_LOCAL);
gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
gs_app_set_name (app, GS_APP_QUALITY_NORMAL, repo_title);
diff --git a/plugins/flatpak/gs-flatpak.c b/plugins/flatpak/gs-flatpak.c
index 52027d786..e72aca8dc 100644
--- a/plugins/flatpak/gs-flatpak.c
+++ b/plugins/flatpak/gs-flatpak.c
@@ -33,7 +33,7 @@ struct _GsFlatpak {
GHashTable *broken_remotes;
GMutex broken_remotes_mutex;
GFileMonitor *monitor;
- AsAppScope scope;
+ AsComponentScope scope;
GsPlugin *plugin;
XbSilo *silo;
GRWLock silo_lock;
@@ -52,9 +52,9 @@ gs_flatpak_refresh_appstream (GsFlatpak *self, guint cache_age,
static void
gs_plugin_refine_item_scope (GsFlatpak *self, GsApp *app)
{
- if (gs_app_get_scope (app) == AS_APP_SCOPE_UNKNOWN) {
+ if (gs_app_get_scope (app) == AS_COMPONENT_SCOPE_UNKNOWN) {
gboolean is_user = flatpak_installation_get_is_user (self->installation);
- gs_app_set_scope (app, is_user ? AS_APP_SCOPE_USER : AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, is_user ? AS_COMPONENT_SCOPE_USER : AS_COMPONENT_SCOPE_SYSTEM);
}
}
@@ -86,20 +86,20 @@ static void
gs_flatpak_set_kind_from_flatpak (GsApp *app, FlatpakRef *xref)
{
if (flatpak_ref_get_kind (xref) == FLATPAK_REF_KIND_APP) {
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
} else if (flatpak_ref_get_kind (xref) == FLATPAK_REF_KIND_RUNTIME) {
const gchar *id = gs_app_get_id (app);
/* this is anything that's not an app, including locales
* sources and debuginfo */
if (g_str_has_suffix (id, ".Locale")) {
- gs_app_set_kind (app, AS_APP_KIND_LOCALIZATION);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_LOCALIZATION);
} else if (g_str_has_suffix (id, ".Debug") ||
g_str_has_suffix (id, ".Sources") ||
g_str_has_prefix (id, "org.freedesktop.Platform.Icontheme.") ||
g_str_has_prefix (id, "org.gtk.Gtk3theme.")) {
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
} else {
- gs_app_set_kind (app, AS_APP_KIND_RUNTIME);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_RUNTIME);
}
}
}
@@ -231,8 +231,8 @@ gs_flatpak_set_metadata (GsFlatpak *self, GsApp *app, FlatpakRef *xref)
gs_flatpak_app_set_commit (app, flatpak_ref_get_commit (xref));
/* map the flatpak kind to the gnome-software kind */
- if (gs_app_get_kind (app) == AS_APP_KIND_UNKNOWN ||
- gs_app_get_kind (app) == AS_APP_KIND_GENERIC) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_UNKNOWN ||
+ gs_app_get_kind (app) == AS_COMPONENT_KIND_GENERIC) {
gs_flatpak_set_kind_from_flatpak (app, xref);
}
}
@@ -270,8 +270,8 @@ gs_flatpak_create_app (GsFlatpak *self, const gchar *origin, FlatpakRef *xref)
/* Don't add NULL origin apps to the cache. If the app is later set to
* origin x the cache may return it as a match for origin y since the cache
- * hash table uses as_utils_unique_id_equal() as the equal func and a NULL
- * origin becomes a "*" in as_utils_unique_id_build().
+ * hash table uses as_utils_data_id_equal() as the equal func and a NULL
+ * origin becomes a "*" in as_utils_build_data_id().
*/
if (origin != NULL)
gs_plugin_cache_add (self->plugin, NULL, app);
@@ -573,7 +573,7 @@ gs_flatpak_add_apps_from_xremote (GsFlatpak *self,
/* add metadata */
icon_prefix = g_build_filename (appstream_dir_fn, "icons", NULL);
info = xb_builder_node_insert (NULL, "info", NULL);
- xb_builder_node_insert_text (info, "scope", as_app_scope_to_string (self->scope), NULL);
+ xb_builder_node_insert_text (info, "scope", as_component_scope_to_string (self->scope), NULL);
xb_builder_node_insert_text (info, "icon-prefix", icon_prefix, NULL);
xb_builder_source_set_info (source, info);
@@ -627,20 +627,29 @@ gs_plugin_appstream_load_desktop_cb (XbBuilderSource *self,
GCancellable *cancellable,
GError **error)
{
- GString *xml;
- g_autoptr(AsApp) app = as_app_new ();
+ gchar *xml;
+ g_autoptr(AsComponent) cpt = as_component_new ();
+ g_autoptr(AsContext) actx = as_context_new ();
g_autoptr(GBytes) bytes = NULL;
+ gboolean ret;
+
bytes = xb_builder_source_ctx_get_bytes (ctx, cancellable, error);
if (bytes == NULL)
return NULL;
- as_app_set_id (app, xb_builder_source_ctx_get_filename (ctx));
- if (!as_app_parse_data (app, bytes, AS_APP_PARSE_FLAG_USE_FALLBACKS, error))
+
+ as_component_set_id (cpt, xb_builder_source_ctx_get_filename (ctx));
+ ret = as_component_load_from_data (cpt,
+ actx,
+ AS_FORMAT_KIND_DESKTOP_ENTRY,
+ g_bytes_get_data (bytes, NULL),
+ error);
+ if (!ret)
return NULL;
- xml = as_app_to_xml (app, error);
+ xml = as_component_to_xml_data (cpt, actx, error);
if (xml == NULL)
return NULL;
- g_string_prepend (xml, "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
- return g_memory_input_stream_new_from_data (g_string_free (xml, FALSE), -1, g_free);
+
+ return g_memory_input_stream_new_from_data (xml, -1, g_free);
}
static gboolean
@@ -669,7 +678,7 @@ gs_flatpak_load_desktop_fn (GsFlatpak *self,
/* set the component metadata */
info = xb_builder_node_insert (NULL, "info", NULL);
- xb_builder_node_insert_text (info, "scope", as_app_scope_to_string (self->scope), NULL);
+ xb_builder_node_insert_text (info, "scope", as_component_scope_to_string (self->scope), NULL);
xb_builder_node_insert_text (info, "icon-prefix", icon_prefix, NULL);
xb_builder_source_set_info (source, info);
@@ -1059,8 +1068,8 @@ gs_flatpak_set_metadata_installed (GsFlatpak *self, GsApp *app,
}
/* If it's a runtime, check if the main-app info should be set. Note that
- * checking the app for AS_APP_KIND_RUNTIME is not good enough because it
- * could be e.g. AS_APP_KIND_LOCALIZATION and still be a runtime from
+ * checking the app for AS_COMPONENT_KIND_RUNTIME is not good enough because it
+ * could be e.g. AS_COMPONENT_KIND_LOCALIZATION and still be a runtime from
* Flatpak's perspective.
*/
if (gs_flatpak_app_get_ref_kind (app) == FLATPAK_REF_KIND_RUNTIME &&
@@ -1657,7 +1666,7 @@ gs_refine_item_metadata (GsFlatpak *self, GsApp *app,
return TRUE;
/* not a valid type */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return TRUE;
/* AppStream sets the source to appname/arch/branch, if this isn't set
@@ -1907,7 +1916,7 @@ gs_flatpak_create_runtime (GsFlatpak *self, GsApp *parent, const gchar *runtime)
gs_flatpak_claim_app (self, app);
source = g_strdup_printf ("runtime/%s", runtime);
gs_app_add_source (app, source);
- gs_app_set_kind (app, AS_APP_KIND_RUNTIME);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_RUNTIME);
gs_app_set_branch (app, split[2]);
/* search in the cache */
@@ -1922,8 +1931,8 @@ gs_flatpak_create_runtime (GsFlatpak *self, GsApp *parent, const gchar *runtime)
}
/* if the app is per-user we can also use the installed system runtime */
- if (gs_app_get_scope (parent) == AS_APP_SCOPE_USER) {
- gs_app_set_scope (app, AS_APP_SCOPE_UNKNOWN);
+ if (gs_app_get_scope (parent) == AS_COMPONENT_SCOPE_USER) {
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_UNKNOWN);
app_cache = gs_plugin_cache_lookup (self->plugin, gs_app_get_unique_id (app));
if (app_cache != NULL)
return g_steal_pointer (&app_cache);
@@ -2059,7 +2068,7 @@ gs_plugin_refine_item_metadata (GsFlatpak *self,
g_autoptr(GFile) installation_path = NULL;
/* not applicable */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return TRUE;
if (gs_flatpak_app_get_ref_kind (app) != FLATPAK_REF_KIND_APP)
return TRUE;
@@ -2129,7 +2138,7 @@ gs_plugin_refine_item_size (GsFlatpak *self,
/* not applicable */
if (gs_app_get_state (app) == GS_APP_STATE_AVAILABLE_LOCAL)
return TRUE;
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return TRUE;
/* already set */
@@ -2326,7 +2335,7 @@ gs_flatpak_refine_appstream_from_bytes (GsFlatpak *self,
g_autofree char *icon_prefix = NULL;
info = xb_builder_node_insert (NULL, "info", NULL);
- xb_builder_node_insert_text (info, "scope", as_app_scope_to_string (self->scope), NULL);
+ xb_builder_node_insert_text (info, "scope", as_component_scope_to_string (self->scope), NULL);
icon_prefix = g_build_filename (flatpak_installed_ref_get_deploy_dir (installed_ref),
"files", "share", "app-info", "icons", "flatpak", NULL);
xb_builder_node_insert_text (info, "icon-prefix", icon_prefix, NULL);
@@ -3234,7 +3243,7 @@ gs_flatpak_get_id (GsFlatpak *self)
if (self->id == NULL) {
GString *str = g_string_new ("flatpak");
g_string_append_printf (str, "-%s",
- as_app_scope_to_string (self->scope));
+ as_component_scope_to_string (self->scope));
if (flatpak_installation_get_id (self->installation) != NULL) {
g_string_append_printf (str, "-%s",
flatpak_installation_get_id (self->installation));
@@ -3246,7 +3255,7 @@ gs_flatpak_get_id (GsFlatpak *self)
return self->id;
}
-AsAppScope
+AsComponentScope
gs_flatpak_get_scope (GsFlatpak *self)
{
return self->scope;
@@ -3316,7 +3325,7 @@ gs_flatpak_new (GsPlugin *plugin, FlatpakInstallation *installation, GsFlatpakFl
self = g_object_new (GS_TYPE_FLATPAK, NULL);
self->installation = g_object_ref (installation);
self->scope = flatpak_installation_get_is_user (installation)
- ? AS_APP_SCOPE_USER : AS_APP_SCOPE_SYSTEM;
+ ? AS_COMPONENT_SCOPE_USER : AS_COMPONENT_SCOPE_SYSTEM;
self->plugin = g_object_ref (plugin);
self->flags = flags;
return GS_FLATPAK (self);
diff --git a/plugins/flatpak/gs-flatpak.h b/plugins/flatpak/gs-flatpak.h
index e5af289eb..40ab24f71 100644
--- a/plugins/flatpak/gs-flatpak.h
+++ b/plugins/flatpak/gs-flatpak.h
@@ -32,7 +32,7 @@ FlatpakInstallation *gs_flatpak_get_installation (GsFlatpak *self);
GsApp *gs_flatpak_ref_to_app (GsFlatpak *self, const gchar *ref, GCancellable *cancellable, GError **error);
-AsAppScope gs_flatpak_get_scope (GsFlatpak *self);
+AsComponentScope gs_flatpak_get_scope (GsFlatpak *self);
const gchar *gs_flatpak_get_id (GsFlatpak *self);
gboolean gs_flatpak_setup (GsFlatpak *self,
GCancellable *cancellable,
diff --git a/plugins/flatpak/gs-plugin-flatpak.c b/plugins/flatpak/gs-plugin-flatpak.c
index fd862b80a..0279b011f 100644
--- a/plugins/flatpak/gs-plugin-flatpak.c
+++ b/plugins/flatpak/gs-plugin-flatpak.c
@@ -71,11 +71,11 @@ gs_plugin_initialize (GsPlugin *plugin)
}
static gboolean
-_as_app_scope_is_compatible (AsAppScope scope1, AsAppScope scope2)
+_as_component_scope_is_compatible (AsComponentScope scope1, AsComponentScope scope2)
{
- if (scope1 == AS_APP_SCOPE_UNKNOWN)
+ if (scope1 == AS_COMPONENT_SCOPE_UNKNOWN)
return TRUE;
- if (scope2 == AS_APP_SCOPE_UNKNOWN)
+ if (scope2 == AS_COMPONENT_SCOPE_UNKNOWN)
return TRUE;
return scope1 == scope2;
}
@@ -262,7 +262,7 @@ gs_plugin_flatpak_get_handler (GsPlugin *plugin, GsApp *app)
/* find a scope that matches */
for (guint i = 0; i < priv->flatpaks->len; i++) {
GsFlatpak *flatpak = g_ptr_array_index (priv->flatpaks, i);
- if (_as_app_scope_is_compatible (gs_flatpak_get_scope (flatpak),
+ if (_as_component_scope_is_compatible (gs_flatpak_get_scope (flatpak),
gs_app_get_scope (app)))
return flatpak;
}
@@ -286,7 +286,7 @@ gs_plugin_flatpak_refine_app (GsPlugin *plugin,
}
/* we have to look for the app in all GsFlatpak stores */
- if (gs_app_get_scope (app) == AS_APP_SCOPE_UNKNOWN) {
+ if (gs_app_get_scope (app) == AS_COMPONENT_SCOPE_UNKNOWN) {
for (guint i = 0; i < priv->flatpaks->len; i++) {
GsFlatpak *flatpak_tmp = g_ptr_array_index (priv->flatpaks, i);
g_autoptr(GError) error_local = NULL;
@@ -733,7 +733,7 @@ gs_plugin_app_remove (GsPlugin *plugin,
return TRUE;
/* is a source */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return gs_flatpak_app_remove_source (flatpak, app, cancellable, error);
/* build and run transaction */
@@ -809,19 +809,19 @@ gs_plugin_app_install (GsPlugin *plugin,
}
/* set the app scope */
- if (gs_app_get_scope (app) == AS_APP_SCOPE_UNKNOWN) {
+ if (gs_app_get_scope (app) == AS_COMPONENT_SCOPE_UNKNOWN) {
g_autoptr(GSettings) settings = g_settings_new ("org.gnome.software");
/* get the new GsFlatpak for handling of local files */
gs_app_set_scope (app, g_settings_get_boolean (settings, "install-bundles-system-wide") ?
- AS_APP_SCOPE_SYSTEM : AS_APP_SCOPE_USER);
+ AS_COMPONENT_SCOPE_SYSTEM : AS_COMPONENT_SCOPE_USER);
if (!priv->has_system_helper) {
g_info ("no flatpak system helper is available, using user");
- gs_app_set_scope (app, AS_APP_SCOPE_USER);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_USER);
}
if (priv->destdir_for_tests != NULL) {
g_debug ("in self tests, using user");
- gs_app_set_scope (app, AS_APP_SCOPE_USER);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_USER);
}
}
@@ -831,7 +831,7 @@ gs_plugin_app_install (GsPlugin *plugin,
return TRUE;
/* is a source */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return gs_flatpak_app_install_source (flatpak, app, cancellable, error);
if (!gs_plugin_has_flags (plugin, GS_PLUGIN_FLAGS_INTERACTIVE)) {
@@ -1148,7 +1148,7 @@ gs_plugin_flatpak_file_to_app_bundle (GsPlugin *plugin,
return g_steal_pointer (&app_tmp);
/* force this to be 'any' scope for installation */
- gs_app_set_scope (app, AS_APP_SCOPE_UNKNOWN);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_UNKNOWN);
/* this is new */
return g_steal_pointer (&app);
@@ -1183,7 +1183,7 @@ gs_plugin_flatpak_file_to_app_ref (GsPlugin *plugin,
return g_steal_pointer (&app_tmp);
/* force this to be 'any' scope for installation */
- gs_app_set_scope (app, AS_APP_SCOPE_UNKNOWN);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_UNKNOWN);
/* do we have a system runtime available */
runtime = gs_app_get_runtime (app);
diff --git a/plugins/flatpak/gs-self-test.c b/plugins/flatpak/gs-self-test.c
index f07dc65fd..99e879dc0 100644
--- a/plugins/flatpak/gs-self-test.c
+++ b/plugins/flatpak/gs-self-test.c
@@ -139,7 +139,7 @@ gs_plugins_flatpak_repo_func (GsPluginLoader *plugin_loader)
gs_test_flush_main_context ();
g_assert_no_error (error);
g_assert_true (app != NULL);
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_SOURCE);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_REPOSITORY);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_AVAILABLE_LOCAL);
g_assert_cmpstr (gs_app_get_id (app), ==, "example");
g_assert_cmpstr (gs_app_get_management_plugin (app), ==, "flatpak");
@@ -278,7 +278,7 @@ gs_plugins_flatpak_app_with_runtime_func (GsPluginLoader *plugin_loader)
if (testdir == NULL)
return;
testdir_repourl = g_strdup_printf ("file://%s/repo", testdir);
- gs_app_set_kind (app_source, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app_source, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_management_plugin (app_source, "flatpak");
gs_app_set_state (app_source, GS_APP_STATE_AVAILABLE);
gs_flatpak_app_set_repo_url (app_source, testdir_repourl);
@@ -308,7 +308,7 @@ gs_plugins_flatpak_app_with_runtime_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (sources), ==, 1);
app = gs_app_list_index (sources, 0);
g_assert_cmpstr (gs_app_get_id (app), ==, "test");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_SOURCE);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_REPOSITORY);
/* refresh the appstream metadata */
g_object_unref (plugin_job);
@@ -349,7 +349,7 @@ gs_plugins_flatpak_app_with_runtime_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (list), ==, 1);
app = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_id (app), ==, "org.test.Chiron");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_AVAILABLE);
g_assert_cmpint ((gint64) gs_app_get_kudos (app), ==,
GS_APP_KUDO_MY_LANGUAGE |
@@ -542,7 +542,7 @@ gs_plugins_flatpak_app_missing_runtime_func (GsPluginLoader *plugin_loader)
if (testdir == NULL)
return;
testdir_repourl = g_strdup_printf ("file://%s/repo", testdir);
- gs_app_set_kind (app_source, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app_source, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_management_plugin (app_source, "flatpak");
gs_app_set_state (app_source, GS_APP_STATE_AVAILABLE);
gs_flatpak_app_set_repo_url (app_source, testdir_repourl);
@@ -700,10 +700,10 @@ gs_plugins_flatpak_runtime_repo_func (GsPluginLoader *plugin_loader)
gs_test_flush_main_context ();
g_assert_no_error (error);
g_assert_true (app != NULL);
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_AVAILABLE_LOCAL);
g_assert_cmpstr (gs_app_get_id (app), ==, "org.test.Chiron");
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app),
"user/flatpak/*/desktop/org.test.Chiron/master"));
g_assert_true (gs_app_get_local_file (app) != NULL);
@@ -825,7 +825,7 @@ gs_plugins_flatpak_runtime_repo_redundant_func (GsPluginLoader *plugin_loader)
gs_test_flush_main_context ();
g_assert_no_error (error);
g_assert_true (app_src != NULL);
- g_assert_cmpint (gs_app_get_kind (app_src), ==, AS_APP_KIND_SOURCE);
+ g_assert_cmpint (gs_app_get_kind (app_src), ==, AS_COMPONENT_KIND_REPOSITORY);
g_assert_cmpint (gs_app_get_state (app_src), ==, GS_APP_STATE_AVAILABLE_LOCAL);
g_assert_cmpstr (gs_app_get_id (app_src), ==, "test");
g_assert_cmpstr (gs_app_get_unique_id (app_src), ==, "*/*/*/source/test/master");
@@ -863,10 +863,10 @@ gs_plugins_flatpak_runtime_repo_redundant_func (GsPluginLoader *plugin_loader)
gs_test_flush_main_context ();
g_assert_no_error (error);
g_assert_true (app != NULL);
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_AVAILABLE_LOCAL);
g_assert_cmpstr (gs_app_get_id (app), ==, "org.test.Chiron");
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app),
"user/flatpak/*/desktop/org.test.Chiron/master"));
g_assert_true (gs_app_get_local_file (app) != NULL);
@@ -971,7 +971,7 @@ gs_plugins_flatpak_broken_remote_func (GsPluginLoader *plugin_loader)
testdir = gs_test_get_filename (TESTDATADIR, "only-runtime");
if (testdir == NULL)
return;
- gs_app_set_kind (app_source, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app_source, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_management_plugin (app_source, "flatpak");
gs_app_set_state (app_source, GS_APP_STATE_AVAILABLE);
gs_flatpak_app_set_repo_url (app_source, "file:///wont/work");
@@ -1008,14 +1008,14 @@ gs_plugins_flatpak_broken_remote_func (GsPluginLoader *plugin_loader)
app = gs_plugin_loader_job_process_app (plugin_loader, plugin_job, NULL, &error);
g_assert_no_error (error);
g_assert_true (app != NULL);
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_AVAILABLE_LOCAL);
g_assert_cmpstr (gs_app_get_id (app), ==, "org.test.Chiron");
#if FLATPAK_CHECK_VERSION(1,1,2)
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app),
"user/flatpak/chiron-origin/desktop/org.test.Chiron/master"));
#else
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app),
"user/flatpak/org.test.Chiron-origin/desktop/org.test.Chiron/master"));
#endif
g_assert_cmpstr (gs_app_get_url (app, AS_URL_KIND_HOMEPAGE), ==, "http://127.0.0.1/");
@@ -1071,7 +1071,7 @@ flatpak_bundle_or_ref_helper (GsPluginLoader *plugin_loader,
if (testdir == NULL)
return;
testdir_repourl = g_strdup_printf ("file://%s/repo", testdir);
- gs_app_set_kind (app_source, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app_source, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_management_plugin (app_source, "flatpak");
gs_app_set_state (app_source, GS_APP_STATE_AVAILABLE);
gs_flatpak_app_set_repo_url (app_source, testdir_repourl);
@@ -1164,7 +1164,7 @@ flatpak_bundle_or_ref_helper (GsPluginLoader *plugin_loader,
app = gs_plugin_loader_job_process_app (plugin_loader, plugin_job, NULL, &error);
g_assert_no_error (error);
g_assert_true (app != NULL);
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DESKTOP);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DESKTOP_APP);
g_assert_cmpint (gs_app_get_state (app), ==, GS_APP_STATE_AVAILABLE_LOCAL);
g_assert_cmpstr (gs_app_get_id (app), ==, "org.test.Chiron");
g_assert_cmpstr (gs_app_get_name (app), ==, "Chiron");
@@ -1175,15 +1175,15 @@ flatpak_bundle_or_ref_helper (GsPluginLoader *plugin_loader,
/* Note: The origin is set to "flatpak" here because an origin remote
* won't be created until the app is installed.
*/
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app),
"user/flatpak/flatpak/desktop/org.test.Chiron/master"));
g_assert_true (gs_flatpak_app_get_file_kind (app) == GS_FLATPAK_APP_FILE_KIND_BUNDLE);
} else {
#if FLATPAK_CHECK_VERSION(1,1,2)
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app),
"user/flatpak/chiron-origin/desktop/org.test.Chiron/master"));
#else
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app),
"user/flatpak/org.test.Chiron-origin/desktop/org.test.Chiron/master"));
#endif
g_assert_true (gs_flatpak_app_get_file_kind (app) == GS_FLATPAK_APP_FILE_KIND_REF);
@@ -1236,17 +1236,17 @@ flatpak_bundle_or_ref_helper (GsPluginLoader *plugin_loader,
g_assert_cmpint (gs_app_get_state (app2), ==, GS_APP_STATE_INSTALLED);
if (is_bundle) {
#if FLATPAK_CHECK_VERSION(1,1,2)
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app2),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app2),
"user/flatpak/chiron-origin/desktop/org.test.Chiron/master"));
#else
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app2),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app2),
"user/flatpak/org.test.Chiron-origin/desktop/org.test.Chiron/master"));
#endif
} else {
/* Note: the origin is now test-1 because that remote was created from the
* RuntimeRepo= setting
*/
- g_assert_true (as_utils_unique_id_equal (gs_app_get_unique_id (app2),
+ g_assert_true (as_utils_data_id_equal (gs_app_get_unique_id (app2),
"user/flatpak/test-1/desktop/org.test.Chiron/master"));
}
@@ -1280,7 +1280,7 @@ flatpak_bundle_or_ref_helper (GsPluginLoader *plugin_loader,
if (!is_bundle) {
/* remove remote added by RuntimeRepo= in flatpakref */
g_autoptr(GsApp) runtime_source = gs_flatpak_app_new ("test-1");
- gs_app_set_kind (runtime_source, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (runtime_source, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_management_plugin (runtime_source, "flatpak");
gs_app_set_state (runtime_source, GS_APP_STATE_INSTALLED);
g_object_unref (plugin_job);
@@ -1388,7 +1388,7 @@ gs_plugins_flatpak_app_update_func (GsPluginLoader *plugin_loader)
/* add a remote */
app_source = gs_flatpak_app_new ("test");
- gs_app_set_kind (app_source, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app_source, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_management_plugin (app_source, "flatpak");
gs_app_set_state (app_source, GS_APP_STATE_AVAILABLE);
repo_url = g_strdup_printf ("file://%s", repo_path);
@@ -1638,7 +1638,7 @@ gs_plugins_flatpak_runtime_extension_func (GsPluginLoader *plugin_loader)
/* add a remote */
app_source = gs_flatpak_app_new ("test");
- gs_app_set_kind (app_source, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app_source, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_management_plugin (app_source, "flatpak");
gs_app_set_state (app_source, GS_APP_STATE_AVAILABLE);
repo_url = g_strdup_printf ("file://%s", repo_path);
diff --git a/plugins/fwupd/gs-fwupd-app.c b/plugins/fwupd/gs-fwupd-app.c
index 670f580bb..f95dff7f2 100644
--- a/plugins/fwupd/gs-fwupd-app.c
+++ b/plugins/fwupd/gs-fwupd-app.c
@@ -108,8 +108,7 @@ gs_fwupd_app_set_from_device (GsApp *app, FwupdDevice *dev)
gs_app_set_install_date (app, fwupd_device_get_created (dev));
if (fwupd_device_get_description (dev) != NULL) {
g_autofree gchar *tmp = NULL;
- tmp = as_markup_convert (fwupd_device_get_description (dev),
- AS_MARKUP_CONVERT_FORMAT_SIMPLE, NULL);
+ tmp = as_markup_convert_simple (fwupd_device_get_description (dev), NULL);
if (tmp != NULL)
gs_app_set_description (app, GS_APP_QUALITY_NORMAL, tmp);
}
@@ -221,8 +220,7 @@ gs_fwupd_app_set_from_release (GsApp *app, FwupdRelease *rel)
}
if (fwupd_release_get_description (rel) != NULL) {
g_autofree gchar *tmp = NULL;
- tmp = as_markup_convert (fwupd_release_get_description (rel),
- AS_MARKUP_CONVERT_FORMAT_SIMPLE, NULL);
+ tmp = as_markup_convert_simple (fwupd_release_get_description (rel), NULL);
if (tmp != NULL)
gs_app_set_update_details (app, tmp);
}
diff --git a/plugins/fwupd/gs-plugin-fwupd.c b/plugins/fwupd/gs-plugin-fwupd.c
index 3b2fc3875..8fd1f4f30 100644
--- a/plugins/fwupd/gs-plugin-fwupd.c
+++ b/plugins/fwupd/gs-plugin-fwupd.c
@@ -112,7 +112,7 @@ gs_plugin_destroy (GsPlugin *plugin)
void
gs_plugin_adopt_app (GsPlugin *plugin, GsApp *app)
{
- if (gs_app_get_kind (app) == AS_APP_KIND_FIRMWARE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_FIRMWARE)
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
}
@@ -246,7 +246,7 @@ gs_plugin_setup (GsPlugin *plugin, GCancellable *cancellable, GError **error)
/* 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_kind (priv->cached_origin, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_bundle_kind (priv->cached_origin, AS_BUNDLE_KIND_CABINET);
/* add the source to the plugin cache which allows us to match the
@@ -285,12 +285,11 @@ gs_plugin_fwupd_new_app_from_device (GsPlugin *plugin, FwupdDevice *dev)
return NULL;
/* get from cache */
- id = as_utils_unique_id_build (AS_APP_SCOPE_SYSTEM,
- AS_BUNDLE_KIND_UNKNOWN,
- NULL, /* origin */
- AS_APP_KIND_FIRMWARE,
- fwupd_release_get_appstream_id (rel),
- NULL);
+ id = as_utils_build_data_id (AS_COMPONENT_SCOPE_SYSTEM,
+ AS_BUNDLE_KIND_UNKNOWN,
+ NULL, /* origin */
+ fwupd_release_get_appstream_id (rel),
+ NULL);
app = gs_plugin_cache_lookup (plugin, id);
if (app == NULL) {
app = gs_app_new (id);
@@ -298,7 +297,7 @@ gs_plugin_fwupd_new_app_from_device (GsPlugin *plugin, FwupdDevice *dev)
}
/* default stuff */
- gs_app_set_kind (app, AS_APP_KIND_FIRMWARE);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_FIRMWARE);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_CABINET);
gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
gs_app_add_quirk (app, GS_APP_QUIRK_DO_NOT_AUTO_UPDATE);
@@ -344,8 +343,8 @@ gs_plugin_fwupd_new_app_from_device_raw (GsPlugin *plugin, FwupdDevice *device)
/* create a GsApp based on the device, not the release */
id = gs_plugin_fwupd_build_device_id (device);
app = gs_app_new (id);
- gs_app_set_kind (app, AS_APP_KIND_FIRMWARE);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_FIRMWARE);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_set_state (app, GS_APP_STATE_INSTALLED);
gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
gs_app_add_quirk (app, GS_APP_QUIRK_DO_NOT_AUTO_UPDATE);
@@ -616,9 +615,7 @@ gs_plugin_add_updates (GsPlugin *plugin,
g_autofree gchar *desc = NULL;
if (fwupd_release_get_description (rel) == NULL)
continue;
- desc = as_markup_convert (fwupd_release_get_description (rel),
- AS_MARKUP_CONVERT_FORMAT_SIMPLE,
- NULL);
+ desc = as_markup_convert_simple (fwupd_release_get_description (rel), NULL);
if (desc == NULL)
continue;
g_string_append_printf (update_desc,
@@ -962,7 +959,7 @@ gs_plugin_app_install (GsPlugin *plugin,
return TRUE;
/* source -> remote */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY) {
return gs_plugin_fwupd_modify_source (plugin, app, TRUE,
cancellable, error);
}
@@ -1161,8 +1158,8 @@ gs_plugin_add_sources (GsPlugin *plugin,
/* create something that we can use to enable/disable */
id = g_strdup_printf ("org.fwupd.%s.remote", fwupd_remote_get_id (remote));
app = gs_app_new (id);
- gs_app_set_kind (app, AS_APP_KIND_SOURCE);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_REPOSITORY);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_set_state (app, fwupd_remote_get_enabled (remote) ?
GS_APP_STATE_INSTALLED : GS_APP_STATE_AVAILABLE);
gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
diff --git a/plugins/fwupd/gs-self-test.c b/plugins/fwupd/gs-self-test.c
index ffd308493..2c0bf10b2 100644
--- a/plugins/fwupd/gs-self-test.c
+++ b/plugins/fwupd/gs-self-test.c
@@ -38,7 +38,7 @@ gs_plugins_fwupd_func (GsPluginLoader *plugin_loader)
gs_test_flush_main_context ();
g_assert_no_error (error);
g_assert (app != NULL);
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_FIRMWARE);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_FIRMWARE);
g_assert (gs_app_get_license (app) != NULL);
g_assert (gs_app_has_category (app, "System"));
g_assert_cmpstr (gs_app_get_id (app), ==, "com.test.chiron.firmware");
diff --git a/plugins/malcontent/gs-plugin-malcontent.c b/plugins/malcontent/gs-plugin-malcontent.c
index d474168c0..9972a6911 100644
--- a/plugins/malcontent/gs-plugin-malcontent.c
+++ b/plugins/malcontent/gs-plugin-malcontent.c
@@ -62,24 +62,24 @@ app_is_expected_to_have_content_rating (GsApp *app)
return FALSE;
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_ADDON:
- case AS_APP_KIND_CODEC:
- case AS_APP_KIND_DRIVER:
- case AS_APP_KIND_FIRMWARE:
- case AS_APP_KIND_FONT:
- case AS_APP_KIND_GENERIC:
- case AS_APP_KIND_INPUT_METHOD:
- case AS_APP_KIND_LOCALIZATION:
- case AS_APP_KIND_OS_UPDATE:
- case AS_APP_KIND_OS_UPGRADE:
- case AS_APP_KIND_RUNTIME:
- case AS_APP_KIND_SOURCE:
+ case AS_COMPONENT_KIND_ADDON:
+ case AS_COMPONENT_KIND_CODEC:
+ case AS_COMPONENT_KIND_DRIVER:
+ case AS_COMPONENT_KIND_FIRMWARE:
+ case AS_COMPONENT_KIND_FONT:
+ case AS_COMPONENT_KIND_GENERIC:
+ case AS_COMPONENT_KIND_INPUT_METHOD:
+ case AS_COMPONENT_KIND_LOCALIZATION:
+ case AS_COMPONENT_KIND_OS_UPDATE:
+ case AS_COMPONENT_KIND_OPERATING_SYSTEM:
+ case AS_COMPONENT_KIND_RUNTIME:
+ case AS_COMPONENT_KIND_REPOSITORY:
return FALSE;
- case AS_APP_KIND_UNKNOWN:
- case AS_APP_KIND_DESKTOP:
- case AS_APP_KIND_WEB_APP:
- case AS_APP_KIND_SHELL_EXTENSION:
- case AS_APP_KIND_CONSOLE:
+ case AS_COMPONENT_KIND_UNKNOWN:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
+ case AS_COMPONENT_KIND_WEB_APP:
+ case AS_COMPONENT_KIND_SHELL_EXTENSION:
+ case AS_COMPONENT_KIND_CONSOLE_APP:
default:
break;
}
@@ -340,4 +340,4 @@ gs_plugin_destroy (GsPlugin *plugin)
priv->manager_app_filter_changed_id = 0;
}
g_clear_object (&priv->manager);
-}
\ No newline at end of file
+}
diff --git a/plugins/modalias/gs-plugin-modalias.c b/plugins/modalias/gs-plugin-modalias.c
index d4e27a24f..288ea96f3 100644
--- a/plugins/modalias/gs-plugin-modalias.c
+++ b/plugins/modalias/gs-plugin-modalias.c
@@ -106,29 +106,33 @@ refine_app (GsPlugin *plugin,
GCancellable *cancellable,
GError **error)
{
- GPtrArray *provides;
+ GPtrArray *provided;
guint i;
/* not required */
if (gs_app_get_icons(app)->len > 0)
return TRUE;
- if (gs_app_get_kind (app) != AS_APP_KIND_DRIVER)
+ if (gs_app_get_kind (app) != AS_COMPONENT_KIND_DRIVER)
return TRUE;
/* do any of the modaliases match any installed hardware */
- provides = gs_app_get_provides (app);
- for (i = 0 ; i < provides->len; i++) {
- AsProvide *prov = g_ptr_array_index (provides, i);
- if (as_provide_get_kind (prov) != AS_PROVIDE_KIND_MODALIAS)
+ provided = gs_app_get_provided (app);
+ for (i = 0 ; i < provided->len; i++) {
+ GPtrArray *items;
+ AsProvided *prov = g_ptr_array_index (provided, i);
+ if (as_provided_get_kind (prov) != AS_PROVIDED_KIND_MODALIAS)
continue;
- if (gs_plugin_modalias_matches (plugin, as_provide_get_value (prov))) {
- g_autoptr(AsIcon) ic = NULL;
- ic = as_icon_new ();
- as_icon_set_kind (ic, AS_ICON_KIND_STOCK);
- as_icon_set_name (ic, "emblem-system-symbolic");
- gs_app_add_icon (app, ic);
- gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
- break;
+ items = as_provided_get_items (prov);
+ for (guint j = 0; j < items->len; j++) {
+ if (gs_plugin_modalias_matches (plugin, (const gchar*) g_ptr_array_index (items, j)))
{
+ g_autoptr(AsIcon) ic = NULL;
+ ic = as_icon_new ();
+ as_icon_set_kind (ic, AS_ICON_KIND_STOCK);
+ as_icon_set_name (ic, "emblem-system-symbolic");
+ gs_app_add_icon (app, ic);
+ gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
+ break;
+ }
}
}
return TRUE;
diff --git a/plugins/modalias/gs-self-test.c b/plugins/modalias/gs-self-test.c
index 5cbb39c34..92bf88f00 100644
--- a/plugins/modalias/gs-self-test.c
+++ b/plugins/modalias/gs-self-test.c
@@ -34,7 +34,7 @@ gs_plugins_modalias_func (GsPluginLoader *plugin_loader)
g_assert_cmpint (gs_app_list_length (list), ==, 1);
app = gs_app_list_index (list, 0);
g_assert_cmpstr (gs_app_get_id (app), ==, "com.hughski.ColorHug2.driver");
- g_assert_cmpint (gs_app_get_kind (app), ==, AS_APP_KIND_DRIVER);
+ g_assert_cmpint (gs_app_get_kind (app), ==, AS_COMPONENT_KIND_DRIVER);
g_assert (gs_app_has_category (app, "Addon"));
g_assert (gs_app_has_category (app, "Driver"));
}
diff --git a/plugins/odrs/gs-plugin-odrs.c b/plugins/odrs/gs-plugin-odrs.c
index 65e250734..2f92d5a5b 100644
--- a/plugins/odrs/gs-plugin-odrs.c
+++ b/plugins/odrs/gs-plugin-odrs.c
@@ -159,7 +159,7 @@ gs_plugin_initialize (GsPlugin *plugin)
/* 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_kind (priv->cached_origin, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_origin_hostname (priv->cached_origin, priv->review_server);
/* add the source to the plugin cache which allows us to match the
@@ -595,17 +595,24 @@ static GPtrArray *
_gs_app_get_reviewable_ids (GsApp *app)
{
GPtrArray *ids = g_ptr_array_new_with_free_func (g_free);
- GPtrArray *provides = gs_app_get_provides (app);
+ GPtrArray *provided = gs_app_get_provided (app);
/* add the main component id */
g_ptr_array_add (ids, g_strdup (gs_app_get_id (app)));
/* add any ID provides */
- for (guint i = 0; i < provides->len; i++) {
- AsProvide *provide = g_ptr_array_index (provides, i);
- if (as_provide_get_kind (provide) == AS_PROVIDE_KIND_ID &&
- as_provide_get_value (provide) != NULL) {
- g_ptr_array_add (ids, g_strdup (as_provide_get_value (provide)));
+ for (guint i = 0; i < provided->len; i++) {
+ GPtrArray *items;
+ AsProvided *prov = g_ptr_array_index (provided, i);
+ if (as_provided_get_kind (prov) != AS_PROVIDED_KIND_ID)
+ continue;
+
+ items = as_provided_get_items (prov);
+ for (guint j = 0; j < items->len; j++) {
+ const gchar *value = (const gchar *) g_ptr_array_index (items, j);
+ if (value == NULL)
+ continue;
+ g_ptr_array_add (ids, g_strdup (value));
}
}
return ids;
@@ -695,22 +702,30 @@ gs_plugin_odrs_refine_ratings (GsPlugin *plugin,
static JsonNode *
gs_plugin_odrs_get_compat_ids (GsApp *app)
{
- GPtrArray *provides = gs_app_get_provides (app);
+ GPtrArray *provided = gs_app_get_provided (app);
g_autoptr(GHashTable) ids = NULL;
g_autoptr(JsonArray) json_array = json_array_new ();
g_autoptr(JsonNode) json_node = json_node_new (JSON_NODE_ARRAY);
ids = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
- for (guint i = 0; i < provides->len; i++) {
- AsProvide *provide = g_ptr_array_index (provides, i);
- if (as_provide_get_kind (provide) != AS_PROVIDE_KIND_ID)
- continue;
- if (as_provide_get_value (provide) == NULL)
- continue;
- if (g_hash_table_lookup (ids, as_provide_get_value (provide)) != NULL)
+ for (guint i = 0; i < provided->len; i++) {
+ GPtrArray *items;
+ AsProvided *prov = g_ptr_array_index (provided, i);
+
+ if (as_provided_get_kind (prov) != AS_PROVIDED_KIND_ID)
continue;
- g_hash_table_add (ids, g_strdup (as_provide_get_value (provide)));
- json_array_add_string_element (json_array, as_provide_get_value (provide));
+
+ items = as_provided_get_items (prov);
+ for (guint j = 0; j < items->len; j++) {
+ const gchar *value = g_ptr_array_index (items, j);
+ if (value == NULL)
+ continue;
+
+ if (g_hash_table_lookup (ids, value) != NULL)
+ continue;
+ g_hash_table_add (ids, g_strdup (value));
+ json_array_add_string_element (json_array, value);
+ }
}
if (json_array_get_length (json_array) == 0)
return NULL;
@@ -879,7 +894,7 @@ refine_app (GsPlugin *plugin,
GError **error)
{
/* not valid */
- if (gs_app_get_kind (app) == AS_APP_KIND_ADDON)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_ADDON)
return TRUE;
if (gs_app_get_id (app) == NULL)
return TRUE;
@@ -1172,7 +1187,7 @@ gs_plugin_create_app_dummy (const gchar *id)
GsApp *app = gs_app_new (id);
g_autoptr(GString) str = NULL;
str = g_string_new (id);
- as_utils_string_replace (str, ".desktop", "");
+ as_gstring_replace (str, ".desktop", "");
g_string_prepend (str, "No description is available for ");
gs_app_set_name (app, GS_APP_QUALITY_LOWEST, "Unknown Application");
gs_app_set_summary (app, GS_APP_QUALITY_LOWEST, "Application not found");
diff --git a/plugins/packagekit/gs-plugin-packagekit-history.c
b/plugins/packagekit/gs-plugin-packagekit-history.c
index 3a8e32cbf..c244b196d 100644
--- a/plugins/packagekit/gs-plugin-packagekit-history.c
+++ b/plugins/packagekit/gs-plugin-packagekit-history.c
@@ -55,7 +55,7 @@ gs_plugin_packagekit_refine_add_history (GsApp *app, GVariant *dict)
/* create new history item with same ID as parent */
history = gs_app_new (gs_app_get_id (app));
- gs_app_set_kind (history, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (history, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_name (history, GS_APP_QUALITY_NORMAL, gs_app_get_name (app));
@@ -201,7 +201,7 @@ gs_plugin_packagekit_refine (GsPlugin *plugin,
gs_app_set_metadata (app_dummy, "GnomeSoftware::Creator",
gs_plugin_get_name (plugin));
gs_app_set_install_date (app_dummy, GS_APP_INSTALL_DATE_UNKNOWN);
- gs_app_set_kind (app_dummy, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app_dummy, AS_COMPONENT_KIND_GENERIC);
gs_app_set_state (app_dummy, GS_APP_STATE_INSTALLED);
gs_app_set_version (app_dummy, gs_app_get_version (app));
gs_app_add_history (app, app_dummy);
diff --git a/plugins/packagekit/gs-plugin-packagekit-local.c b/plugins/packagekit/gs-plugin-packagekit-local.c
index dec1c89a9..5d3da3175 100644
--- a/plugins/packagekit/gs-plugin-packagekit-local.c
+++ b/plugins/packagekit/gs-plugin-packagekit-local.c
@@ -97,7 +97,7 @@ gs_plugin_packagekit_refresh_guess_app_id (GsPlugin *plugin,
}
}
if (basename_best->len > 0) {
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
gs_app_set_id (app, basename_best->str);
}
@@ -233,7 +233,7 @@ gs_plugin_file_to_app (GsPlugin *plugin,
return FALSE;
}
gs_app_set_management_plugin (app, "packagekit");
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_state (app, GS_APP_STATE_AVAILABLE_LOCAL);
gs_app_set_name (app, GS_APP_QUALITY_LOWEST, split[PK_PACKAGE_ID_NAME]);
@@ -247,7 +247,7 @@ gs_plugin_file_to_app (GsPlugin *plugin,
gs_app_set_url (app, AS_URL_KIND_HOMEPAGE, pk_details_get_url (item));
gs_app_set_size_installed (app, pk_details_get_size (item));
gs_app_set_size_download (app, 0);
- license_spdx = as_utils_license_to_spdx (pk_details_get_license (item));
+ license_spdx = as_license_to_spdx_id (pk_details_get_license (item));
gs_app_set_license (app, GS_APP_QUALITY_LOWEST, license_spdx);
add_quirks_from_package_name (app, split[PK_PACKAGE_ID_NAME]);
diff --git a/plugins/packagekit/gs-plugin-packagekit-offline.c
b/plugins/packagekit/gs-plugin-packagekit-offline.c
index b9fda86d3..7d70796af 100644
--- a/plugins/packagekit/gs-plugin-packagekit-offline.c
+++ b/plugins/packagekit/gs-plugin-packagekit-offline.c
@@ -143,7 +143,7 @@ gs_plugin_add_updates_historical (GsPlugin *plugin,
gs_app_set_management_plugin (app, "packagekit");
gs_app_add_quirk (app, GS_APP_QUIRK_IS_WILDCARD);
gs_app_set_state (app, GS_APP_STATE_UNKNOWN);
- gs_app_set_kind (app, AS_APP_KIND_OS_UPGRADE);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_OPERATING_SYSTEM);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_install_date (app, mtime);
gs_app_set_metadata (app, "GnomeSoftware::Creator",
@@ -170,7 +170,7 @@ gs_plugin_add_updates_historical (GsPlugin *plugin,
gs_app_set_management_plugin (app, "packagekit");
gs_app_add_source_id (app, package_id);
gs_app_set_state (app, GS_APP_STATE_UPDATABLE);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_install_date (app, mtime);
gs_app_set_metadata (app, "GnomeSoftware::Creator",
diff --git a/plugins/packagekit/gs-plugin-packagekit-refine-repos.c
b/plugins/packagekit/gs-plugin-packagekit-refine-repos.c
index 4b41c446d..39c262c8a 100644
--- a/plugins/packagekit/gs-plugin-packagekit-refine-repos.c
+++ b/plugins/packagekit/gs-plugin-packagekit-refine-repos.c
@@ -102,7 +102,7 @@ gs_plugin_refine (GsPlugin *plugin,
const gchar *fn;
if (gs_app_has_quirk (app, GS_APP_QUIRK_IS_WILDCARD))
continue;
- if (gs_app_get_kind (app) != AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) != AS_COMPONENT_KIND_REPOSITORY)
continue;
if (g_strcmp0 (gs_app_get_management_plugin (app), "packagekit") != 0)
continue;
diff --git a/plugins/packagekit/gs-plugin-packagekit-refine.c
b/plugins/packagekit/gs-plugin-packagekit-refine.c
index 5e09c5d0c..b2f14df06 100644
--- a/plugins/packagekit/gs-plugin-packagekit-refine.c
+++ b/plugins/packagekit/gs-plugin-packagekit-refine.c
@@ -76,7 +76,7 @@ void
gs_plugin_adopt_app (GsPlugin *plugin, GsApp *app)
{
if (gs_app_get_bundle_kind (app) == AS_BUNDLE_KIND_PACKAGE &&
- gs_app_get_scope (app) == AS_APP_SCOPE_SYSTEM) {
+ gs_app_get_scope (app) == AS_COMPONENT_SCOPE_SYSTEM) {
gs_app_set_management_plugin (app, "packagekit");
gs_plugin_packagekit_set_packaging_format (plugin, app);
return;
@@ -698,10 +698,10 @@ gs_plugin_packagekit_refine_filename_to_id (GsPlugin *plugin,
if (tmp == NULL)
continue;
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_DESKTOP:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
fn = g_strdup_printf ("/usr/share/applications/%s", tmp);
break;
- case AS_APP_KIND_ADDON:
+ case AS_COMPONENT_KIND_ADDON:
fn = g_strdup_printf ("/usr/share/metainfo/%s.metainfo.xml", tmp);
if (!g_file_test (fn, G_FILE_TEST_EXISTS)) {
g_free (fn);
@@ -773,7 +773,7 @@ gs_plugin_refine (GsPlugin *plugin,
if (flags & GS_PLUGIN_REFINE_FLAGS_REQUIRE_UPGRADE_REMOVED) {
for (guint i = 0; i < gs_app_list_length (list); i++) {
GsApp *app = gs_app_list_index (list, i);
- if (gs_app_get_kind (app) != AS_APP_KIND_OS_UPGRADE)
+ if (gs_app_get_kind (app) != AS_COMPONENT_KIND_OPERATING_SYSTEM)
continue;
if (!gs_plugin_packagekit_refine_distro_upgrade (plugin,
app,
@@ -811,8 +811,8 @@ gs_plugin_refine (GsPlugin *plugin,
continue;
/* the scope is always system-wide */
- if (gs_app_get_scope (app) == AS_APP_SCOPE_UNKNOWN)
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ if (gs_app_get_scope (app) == AS_COMPONENT_SCOPE_UNKNOWN)
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
if (gs_app_get_bundle_kind (app) == AS_BUNDLE_KIND_UNKNOWN)
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
}
diff --git a/plugins/packagekit/gs-plugin-packagekit-upgrade.c
b/plugins/packagekit/gs-plugin-packagekit-upgrade.c
index 012f7d4a3..c09af98c0 100644
--- a/plugins/packagekit/gs-plugin-packagekit-upgrade.c
+++ b/plugins/packagekit/gs-plugin-packagekit-upgrade.c
@@ -44,7 +44,7 @@ gs_plugin_destroy (GsPlugin *plugin)
void
gs_plugin_adopt_app (GsPlugin *plugin, GsApp *app)
{
- if (gs_app_get_kind (app) == AS_APP_KIND_OS_UPGRADE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_OPERATING_SYSTEM)
gs_app_set_management_plugin (app, "packagekit");
}
@@ -63,7 +63,7 @@ gs_plugin_app_upgrade_download (GsPlugin *plugin,
return TRUE;
/* check is distro-upgrade */
- if (gs_app_get_kind (app) != AS_APP_KIND_OS_UPGRADE)
+ if (gs_app_get_kind (app) != AS_COMPONENT_KIND_OPERATING_SYSTEM)
return TRUE;
/* ask PK to download enough packages to upgrade the system */
diff --git a/plugins/packagekit/gs-plugin-packagekit-url-to-app.c
b/plugins/packagekit/gs-plugin-packagekit-url-to-app.c
index 041892048..e3d52d607 100644
--- a/plugins/packagekit/gs-plugin-packagekit-url-to-app.c
+++ b/plugins/packagekit/gs-plugin-packagekit-url-to-app.c
@@ -81,7 +81,7 @@ gs_plugin_url_to_app (GsPlugin *plugin,
app = gs_app_new (NULL);
gs_plugin_packagekit_set_packaging_format (plugin, app);
gs_app_add_source (app, path);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
package_ids = g_new0 (gchar *, 2);
diff --git a/plugins/packagekit/gs-plugin-packagekit.c b/plugins/packagekit/gs-plugin-packagekit.c
index 7f158ed25..afe5da2ec 100644
--- a/plugins/packagekit/gs-plugin-packagekit.c
+++ b/plugins/packagekit/gs-plugin-packagekit.c
@@ -151,7 +151,7 @@ gs_plugin_add_sources (GsPlugin *plugin,
id = pk_repo_detail_get_id (rd);
app = gs_app_new (id);
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
- gs_app_set_kind (app, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
gs_app_set_state (app, pk_repo_detail_get_enabled (rd) ?
@@ -286,7 +286,7 @@ gs_plugin_app_install (GsPlugin *plugin,
return TRUE;
/* enable repo */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return gs_plugin_repo_enable (plugin, app, cancellable, error);
/* queue for install if installation needs the network */
@@ -524,7 +524,7 @@ gs_plugin_app_remove (GsPlugin *plugin,
return TRUE;
/* disable repo */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return gs_plugin_repo_disable (plugin, app, cancellable, error);
/* get the list of available package ids to install */
@@ -594,8 +594,8 @@ gs_plugin_packagekit_build_update_app (GsPlugin *plugin, PkPackage *package)
gs_plugin_get_name (plugin));
gs_app_set_management_plugin (app, "packagekit");
gs_app_set_update_version (app, pk_package_get_version (package));
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_set_state (app, GS_APP_STATE_UPDATABLE);
gs_plugin_cache_add (plugin, pk_package_get_id (package), app);
diff --git a/plugins/packagekit/packagekit-common.c b/plugins/packagekit/packagekit-common.c
index d55a610c1..8fd2cc4c5 100644
--- a/plugins/packagekit/packagekit-common.c
+++ b/plugins/packagekit/packagekit-common.c
@@ -280,7 +280,7 @@ gs_plugin_packagekit_add_results (GsPlugin *plugin,
g_warning ("unknown info state of %s",
pk_info_enum_to_string (pk_package_get_info (package)));
}
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_list_add (list, app);
}
@@ -491,7 +491,7 @@ gs_plugin_packagekit_refine_details_app (GsPlugin *plugin,
if (gs_app_get_license (app) == NULL) {
g_autofree gchar *license_spdx = NULL;
- license_spdx = as_utils_license_to_spdx (pk_details_get_license (details));
+ license_spdx = as_license_to_spdx_id (pk_details_get_license (details));
if (license_spdx != NULL) {
gs_app_set_license (app,
GS_APP_QUALITY_LOWEST,
diff --git a/plugins/repos/gs-plugin-repos.c b/plugins/repos/gs-plugin-repos.c
index a35fc800d..0a5f7e8b9 100644
--- a/plugins/repos/gs-plugin-repos.c
+++ b/plugins/repos/gs-plugin-repos.c
@@ -191,7 +191,7 @@ refine_app_locked (GsPlugin *plugin,
/* find hostname */
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_SOURCE:
+ case AS_COMPONENT_KIND_REPOSITORY:
if (gs_app_get_id (app) == NULL)
return TRUE;
tmp = g_hash_table_lookup (priv->urls, gs_app_get_id (app));
@@ -209,7 +209,7 @@ refine_app_locked (GsPlugin *plugin,
/* find filename */
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_SOURCE:
+ case AS_COMPONENT_KIND_REPOSITORY:
if (gs_app_get_id (app) == NULL)
return TRUE;
tmp = g_hash_table_lookup (priv->fns, gs_app_get_id (app));
diff --git a/plugins/rpm-ostree/gs-plugin-rpm-ostree.c b/plugins/rpm-ostree/gs-plugin-rpm-ostree.c
index 38c3d9906..c799cd77d 100644
--- a/plugins/rpm-ostree/gs-plugin-rpm-ostree.c
+++ b/plugins/rpm-ostree/gs-plugin-rpm-ostree.c
@@ -222,13 +222,13 @@ void
gs_plugin_adopt_app (GsPlugin *plugin, GsApp *app)
{
if (gs_app_get_bundle_kind (app) == AS_BUNDLE_KIND_PACKAGE &&
- gs_app_get_scope (app) == AS_APP_SCOPE_SYSTEM) {
+ gs_app_get_scope (app) == AS_COMPONENT_SCOPE_SYSTEM) {
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_add_quirk (app, GS_APP_QUIRK_NEEDS_REBOOT);
app_set_rpm_ostree_packaging_format (app);
}
- if (gs_app_get_kind (app) == AS_APP_KIND_OS_UPGRADE) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_OPERATING_SYSTEM) {
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_add_quirk (app, GS_APP_QUIRK_NEEDS_REBOOT);
}
@@ -454,9 +454,9 @@ app_from_modified_pkg_variant (GsPlugin *plugin, GVariant *variant)
gs_app_add_quirk (app, GS_APP_QUIRK_NEEDS_REBOOT);
app_set_rpm_ostree_packaging_format (app);
gs_app_set_size_download (app, 0);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
/* update or downgrade */
gs_app_add_source (app, name);
@@ -493,9 +493,9 @@ app_from_single_pkg_variant (GsPlugin *plugin, GVariant *variant, gboolean addit
gs_app_add_quirk (app, GS_APP_QUIRK_NEEDS_REBOOT);
app_set_rpm_ostree_packaging_format (app);
gs_app_set_size_download (app, 0);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
if (addition) {
/* addition */
@@ -1011,7 +1011,7 @@ gs_plugin_app_upgrade_trigger (GsPlugin *plugin,
return TRUE;
/* check is distro-upgrade */
- if (gs_app_get_kind (app) != AS_APP_KIND_OS_UPGRADE)
+ if (gs_app_get_kind (app) != AS_COMPONENT_KIND_OPERATING_SYSTEM)
return TRUE;
/* construct new refspec based on the distro version we're upgrading to */
@@ -1133,7 +1133,7 @@ gs_plugin_app_install (GsPlugin *plugin,
return TRUE;
/* enable repo */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return gs_plugin_repo_enable (plugin, app, TRUE, cancellable, error);
switch (gs_app_get_state (app)) {
@@ -1233,7 +1233,7 @@ gs_plugin_app_remove (GsPlugin *plugin,
return TRUE;
/* disable repo */
- if (gs_app_get_kind (app) == AS_APP_KIND_SOURCE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_REPOSITORY)
return gs_plugin_repo_enable (plugin, app, FALSE, cancellable, error);
gs_app_set_state (app, GS_APP_STATE_REMOVING);
@@ -1370,9 +1370,9 @@ resolve_available_packages_app (GsPlugin *plugin,
/* set hide-from-search quirk for available apps we don't want to show */
if (!gs_app_is_installed (app)) {
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_DESKTOP:
- case AS_APP_KIND_WEB_APP:
- case AS_APP_KIND_CONSOLE:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
+ case AS_COMPONENT_KIND_WEB_APP:
+ case AS_COMPONENT_KIND_CONSOLE_APP:
gs_app_add_quirk (app, GS_APP_QUIRK_HIDE_FROM_SEARCH);
break;
default:
@@ -1491,7 +1491,7 @@ gs_plugin_refine (GsPlugin *plugin,
/* set management plugin for apps where appstream just added the source package name in
refine() */
if (gs_app_get_management_plugin (app) == NULL &&
gs_app_get_bundle_kind (app) == AS_BUNDLE_KIND_PACKAGE &&
- gs_app_get_scope (app) == AS_APP_SCOPE_SYSTEM &&
+ gs_app_get_scope (app) == AS_COMPONENT_SCOPE_SYSTEM &&
gs_app_get_source_default (app) != NULL) {
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_add_quirk (app, GS_APP_QUIRK_NEEDS_REBOOT);
@@ -1500,7 +1500,7 @@ gs_plugin_refine (GsPlugin *plugin,
/* resolve the source package name based on installed appdata/desktop file name */
if (gs_app_get_management_plugin (app) == NULL &&
gs_app_get_bundle_kind (app) == AS_BUNDLE_KIND_UNKNOWN &&
- gs_app_get_scope (app) == AS_APP_SCOPE_SYSTEM &&
+ gs_app_get_scope (app) == AS_COMPONENT_SCOPE_SYSTEM &&
gs_app_get_source_default (app) == NULL) {
if (!resolve_appstream_source_file_to_package_name (plugin, app, flags, cancellable,
error))
return FALSE;
@@ -1544,7 +1544,7 @@ gs_plugin_app_upgrade_download (GsPlugin *plugin,
return TRUE;
/* check is distro-upgrade */
- if (gs_app_get_kind (app) != AS_APP_KIND_OS_UPGRADE)
+ if (gs_app_get_kind (app) != AS_COMPONENT_KIND_OPERATING_SYSTEM)
return TRUE;
/* construct new refspec based on the distro version we're upgrading to */
@@ -1611,7 +1611,7 @@ gs_plugin_launch (GsPlugin *plugin,
return TRUE;
/* these are handled by the shell extensions plugin */
- if (gs_app_get_kind (app) == AS_APP_KIND_SHELL_EXTENSION)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_SHELL_EXTENSION)
return TRUE;
return gs_plugin_app_launch (plugin, app, error);
@@ -1694,9 +1694,9 @@ gs_plugin_file_to_app (GsPlugin *plugin,
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_add_quirk (app, GS_APP_QUIRK_NEEDS_REBOOT);
app_set_rpm_ostree_packaging_format (app);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_set_state (app, GS_APP_STATE_AVAILABLE_LOCAL);
/* add default source */
@@ -1726,7 +1726,7 @@ gs_plugin_file_to_app (GsPlugin *plugin,
license = headerGetString (h, RPMTAG_LICENSE);
if (license != NULL) {
g_autofree gchar *license_spdx = NULL;
- license_spdx = as_utils_license_to_spdx (license);
+ license_spdx = as_license_to_spdx_id (license);
gs_app_set_license (app, GS_APP_QUALITY_NORMAL, license_spdx);
g_debug ("rpm: setting license to %s", license_spdx);
}
@@ -1797,9 +1797,9 @@ gs_plugin_add_search_what_provides (GsPlugin *plugin,
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
gs_app_add_quirk (app, GS_APP_QUIRK_NEEDS_REBOOT);
app_set_rpm_ostree_packaging_format (app);
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
- gs_app_set_scope (app, AS_APP_SCOPE_SYSTEM);
+ gs_app_set_scope (app, AS_COMPONENT_SCOPE_SYSTEM);
gs_app_add_source (app, dnf_package_get_name (pkg));
gs_plugin_cache_add (plugin, dnf_package_get_nevra (pkg), app);
@@ -1840,7 +1840,7 @@ gs_plugin_add_sources (GsPlugin *plugin,
app = gs_app_new (dnf_repo_get_id (repo));
gs_app_set_management_plugin (app, gs_plugin_get_name (plugin));
- gs_app_set_kind (app, AS_APP_KIND_SOURCE);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_REPOSITORY);
gs_app_set_bundle_kind (app, AS_BUNDLE_KIND_PACKAGE);
gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
diff --git a/plugins/snap/gs-plugin-snap.c b/plugins/snap/gs-plugin-snap.c
index b24ed8442..5a4718b5e 100644
--- a/plugins/snap/gs-plugin-snap.c
+++ b/plugins/snap/gs-plugin-snap.c
@@ -344,7 +344,7 @@ snap_to_app (GsPlugin *plugin, SnapdSnap *snap)
gs_app_set_management_plugin (app, "snap");
gs_app_add_quirk (app, GS_APP_QUIRK_DO_NOT_AUTO_UPDATE);
- if (gs_app_get_kind (app) != AS_APP_KIND_DESKTOP)
+ if (gs_app_get_kind (app) != AS_COMPONENT_KIND_DESKTOP_APP)
gs_app_add_quirk (app, GS_APP_QUIRK_NOT_LAUNCHABLE);
if (gs_plugin_check_distro_id (plugin, "ubuntu"))
gs_app_add_quirk (app, GS_APP_QUIRK_PROVENANCE);
@@ -870,8 +870,8 @@ static gchar *
gs_plugin_snap_get_description_safe (SnapdSnap *snap)
{
GString *str = g_string_new (snapd_snap_get_description (snap));
- as_utils_string_replace (str, "\r", "");
- as_utils_string_replace (str, " ", " ");
+ as_gstring_replace (str, "\r", "");
+ as_gstring_replace (str, " ", " ");
return g_string_free (str, FALSE);
}
@@ -1040,16 +1040,16 @@ refine_app_with_client (GsPlugin *plugin,
switch (snapd_snap_get_snap_type (snap)) {
case SNAPD_SNAP_TYPE_APP:
- gs_app_set_kind (app, AS_APP_KIND_DESKTOP);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_DESKTOP_APP);
break;
case SNAPD_SNAP_TYPE_KERNEL:
case SNAPD_SNAP_TYPE_GADGET:
case SNAPD_SNAP_TYPE_OS:
- gs_app_set_kind (app, AS_APP_KIND_RUNTIME);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_RUNTIME);
break;
default:
case SNAPD_SNAP_TYPE_UNKNOWN:
- gs_app_set_kind (app, AS_APP_KIND_UNKNOWN);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_UNKNOWN);
break;
}
diff --git a/src/gs-app-addon-row.c b/src/gs-app-addon-row.c
index 9763e22aa..1c31a1c0a 100644
--- a/src/gs-app-addon-row.c
+++ b/src/gs-app-addon-row.c
@@ -71,7 +71,7 @@ gs_app_addon_row_refresh (GsAppAddonRow *row)
/* join the lines */
str = gs_app_addon_row_get_summary (row);
- as_utils_string_replace (str, "\n", " ");
+ as_gstring_replace (str, "\n", " ");
gtk_label_set_markup (GTK_LABEL (row->description_label), str->str);
gtk_label_set_label (GTK_LABEL (row->name_label),
gs_app_get_name (row->app));
diff --git a/src/gs-app-row.c b/src/gs-app-row.c
index b523f1bee..938f98279 100644
--- a/src/gs-app-row.c
+++ b/src/gs-app-row.c
@@ -269,7 +269,7 @@ gs_app_row_actually_refresh (GsAppRow *app_row)
/* join the description lines */
str = gs_app_row_get_description (app_row);
if (str != NULL) {
- as_utils_string_replace (str, "\n", " ");
+ as_gstring_replace (str, "\n", " ");
gtk_label_set_label (GTK_LABEL (priv->description_label), str->str);
g_string_free (str, TRUE);
} else {
diff --git a/src/gs-application.c b/src/gs-application.c
index 95afc030c..f6fdfa828 100644
--- a/src/gs-application.c
+++ b/src/gs-application.c
@@ -176,7 +176,7 @@ gs_application_initialize_plugins (GsApplication *app)
plugin_blocklist,
NULL,
&error)) {
- g_warning ("Failed to setup plugins: %s", error->message);
+ g_error ("Failed to setup plugins: %s", error->message);
exit (1);
}
@@ -594,7 +594,7 @@ details_activated (GSimpleAction *action,
gs_shell_show_search_result (app->shell, id, search);
} else {
g_autoptr(GsPluginJob) plugin_job = NULL;
- if (as_utils_unique_id_valid (id)) {
+ if (as_utils_data_id_valid (id)) {
g_autoptr(GsApp) a = gs_plugin_loader_app_create (app->plugin_loader, id);
gs_shell_reset_state (app->shell);
gs_shell_show_app (app->shell, a);
@@ -668,7 +668,7 @@ install_activated (GSimpleAction *action,
g_autoptr (GsApp) a = NULL;
g_variant_get (parameter, "(&su)", &id, &interaction);
- if (!as_utils_unique_id_valid (id)) {
+ if (!as_utils_data_id_valid (id)) {
g_warning ("Need to use a valid unique-id: %s", id);
return;
}
diff --git a/src/gs-common.c b/src/gs-common.c
index 1e5358bfe..2573e7912 100644
--- a/src/gs-common.c
+++ b/src/gs-common.c
@@ -118,7 +118,7 @@ gs_app_notify_installed (GsApp *app)
g_autoptr(GNotification) n = NULL;
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_OS_UPDATE:
+ case AS_COMPONENT_KIND_OS_UPDATE:
/* TRANSLATORS: this is the summary of a notification that OS updates
* have been successfully installed */
summary = g_strdup (_("OS updates are now installed"));
@@ -126,7 +126,7 @@ gs_app_notify_installed (GsApp *app)
* have been successfully installed */
body = _("Recently installed updates are available to review");
break;
- case AS_APP_KIND_DESKTOP:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
/* TRANSLATORS: this is the summary of a notification that an application
* has been successfully installed */
summary = g_strdup_printf (_("%s is now installed"), gs_app_get_name (app));
@@ -159,7 +159,7 @@ gs_app_notify_installed (GsApp *app)
/* TRANSLATORS: button text */
g_notification_add_button_with_target (n, _("Restart"),
"app.reboot", NULL);
- } else if (gs_app_get_kind (app) == AS_APP_KIND_DESKTOP) {
+ } else if (gs_app_get_kind (app) == AS_COMPONENT_KIND_DESKTOP_APP) {
/* TRANSLATORS: this is button that opens the newly installed application */
g_notification_add_button_with_target (n, _("Launch"),
"app.launch", "(ss)",
@@ -266,7 +266,7 @@ gs_app_notify_unavailable (GsApp *app, GtkWindow *parent)
/* be aware of patent clauses */
if (hint & GS_APP_LICENSE_PATENT_CONCERN) {
g_string_append (body, "\n\n");
- if (gs_app_get_kind (app) != AS_APP_KIND_CODEC) {
+ if (gs_app_get_kind (app) != AS_COMPONENT_KIND_CODEC) {
g_string_append_printf (body,
/* TRANSLATORS: Laws are geographical, urgh... */
_("It may be illegal to install "
@@ -557,7 +557,7 @@ gs_utils_get_error_value (const GError *error)
/**
* gs_utils_build_unique_id_kind:
- * @kind: A #AsAppKind
+ * @kind: A #AsComponentKind
* @id: An application ID
*
* Converts the ID valid into a wildcard unique ID of a specific kind.
@@ -566,20 +566,19 @@ gs_utils_get_error_value (const GError *error)
* Returns: (transfer full): a unique ID, or %NULL
*/
gchar *
-gs_utils_build_unique_id_kind (AsAppKind kind, const gchar *id)
+gs_utils_build_unique_id_kind (AsComponentKind kind, const gchar *id)
{
- if (as_utils_unique_id_valid (id))
+ if (as_utils_data_id_valid (id))
return g_strdup (id);
- return as_utils_unique_id_build (AS_APP_SCOPE_UNKNOWN,
- AS_BUNDLE_KIND_UNKNOWN,
- NULL,
- kind,
- id,
- NULL);
+ return as_utils_build_data_id (AS_COMPONENT_SCOPE_UNKNOWN,
+ AS_BUNDLE_KIND_UNKNOWN,
+ NULL,
+ id,
+ NULL);
}
/**
- * gs_utils_list_has_app_fuzzy:
+ * gs_utils_list_has_component_fuzzy:
* @list: A #GsAppList
* @app: A #GsApp
*
@@ -593,7 +592,7 @@ gs_utils_build_unique_id_kind (AsAppKind kind, const gchar *id)
* Returns: %TRUE if the app is visually the "same"
*/
gboolean
-gs_utils_list_has_app_fuzzy (GsAppList *list, GsApp *app)
+gs_utils_list_has_component_fuzzy (GsAppList *list, GsApp *app)
{
guint i;
GsApp *tmp;
diff --git a/src/gs-common.h b/src/gs-common.h
index 7540aef74..63c8e86bf 100644
--- a/src/gs-common.h
+++ b/src/gs-common.h
@@ -42,9 +42,9 @@ void gs_utils_show_error_dialog (GtkWindow *parent,
const gchar *title,
const gchar *msg,
const gchar *details);
-gchar *gs_utils_build_unique_id_kind (AsAppKind kind,
+gchar *gs_utils_build_unique_id_kind (AsComponentKind kind,
const gchar *id);
-gboolean gs_utils_list_has_app_fuzzy (GsAppList *list,
+gboolean gs_utils_list_has_component_fuzzy (GsAppList *list,
GsApp *app);
void gs_utils_reboot_notify (GsAppList *list);
diff --git a/src/gs-css.c b/src/gs-css.c
index 923ac1a83..0f9564319 100644
--- a/src/gs-css.c
+++ b/src/gs-css.c
@@ -16,7 +16,7 @@
#include "config.h"
#include <gtk/gtk.h>
-#include <appstream-glib.h>
+#include <appstream.h>
#include "gs-css.h"
@@ -64,7 +64,7 @@ gs_css_parse (GsCss *self, const gchar *markup, GError **error)
/* old style, no IDs */
markup_str = g_string_new (markup);
- as_utils_string_replace (markup_str, "@datadir@", DATADIR);
+ as_gstring_replace (markup_str, "@datadir@", DATADIR);
if (!g_str_has_prefix (markup_str->str, "#")) {
g_hash_table_insert (self->ids,
g_strdup ("tile"),
diff --git a/src/gs-details-page.c b/src/gs-details-page.c
index b6d332f8c..9eb0c1e52 100644
--- a/src/gs-details-page.c
+++ b/src/gs-details-page.c
@@ -15,7 +15,6 @@
#include <glib/gi18n.h>
#include "gs-common.h"
-#include "gs-content-rating.h"
#include "gs-utils.h"
#include "gs-details-page.h"
@@ -206,7 +205,7 @@ gs_details_page_update_shortcut_button (GsDetailsPage *self)
gtk_widget_set_visible (self->button_details_remove_shortcut,
FALSE);
- if (gs_app_get_kind (self->app) != AS_APP_KIND_DESKTOP)
+ if (gs_app_get_kind (self->app) != AS_COMPONENT_KIND_DESKTOP_APP)
return;
/* Leave the button hidden if the app can’t be launched by the current
@@ -562,7 +561,7 @@ gs_details_page_refresh_screenshots (GsDetailsPage *self)
gtk_widget_show (self->box_details_screenshot);
/* treat screenshots differently */
- if (gs_app_get_kind (self->app) == AS_APP_KIND_FONT) {
+ if (gs_app_get_kind (self->app) == AS_COMPONENT_KIND_FONT) {
gs_container_remove_all (GTK_CONTAINER (self->box_details_screenshot_thumbnails));
gs_container_remove_all (GTK_CONTAINER (self->box_details_screenshot_main));
screenshots = gs_app_get_screenshots (self->app);
@@ -570,7 +569,7 @@ gs_details_page_refresh_screenshots (GsDetailsPage *self)
ss = g_ptr_array_index (screenshots, i);
/* set caption */
- label = gtk_label_new (as_screenshot_get_caption (ss, NULL));
+ label = gtk_label_new (as_screenshot_get_caption (ss));
g_object_set (label,
"xalign", 0.0,
"max-width-chars", 10,
@@ -599,15 +598,15 @@ gs_details_page_refresh_screenshots (GsDetailsPage *self)
/* fallback warning */
screenshots = gs_app_get_screenshots (self->app);
switch (gs_app_get_kind (self->app)) {
- case AS_APP_KIND_GENERIC:
- case AS_APP_KIND_CODEC:
- case AS_APP_KIND_ADDON:
- case AS_APP_KIND_SOURCE:
- case AS_APP_KIND_FIRMWARE:
- case AS_APP_KIND_DRIVER:
- case AS_APP_KIND_INPUT_METHOD:
- case AS_APP_KIND_LOCALIZATION:
- case AS_APP_KIND_RUNTIME:
+ case AS_COMPONENT_KIND_GENERIC:
+ case AS_COMPONENT_KIND_CODEC:
+ case AS_COMPONENT_KIND_ADDON:
+ case AS_COMPONENT_KIND_REPOSITORY:
+ case AS_COMPONENT_KIND_FIRMWARE:
+ case AS_COMPONENT_KIND_DRIVER:
+ case AS_COMPONENT_KIND_INPUT_METHOD:
+ case AS_COMPONENT_KIND_LOCALIZATION:
+ case AS_COMPONENT_KIND_RUNTIME:
gtk_widget_set_visible (self->box_details_screenshot_fallback, FALSE);
break;
default:
@@ -750,7 +749,7 @@ gs_details_page_set_description (GsDetailsPage *self, const gchar *tmp)
}
/* show the webapp warning */
- if (gs_app_get_kind (self->app) == AS_APP_KIND_WEB_APP) {
+ if (gs_app_get_kind (self->app) == AS_COMPONENT_KIND_WEB_APP) {
GtkWidget *label;
/* TRANSLATORS: this is the warning box */
label = gtk_label_new (_("This application can only be used when there is an active internet
connection."));
@@ -954,7 +953,7 @@ gs_details_page_refresh_buttons (GsDetailsPage *self)
gtk_widget_set_visible (self->button_install, FALSE);
break;
case GS_APP_STATE_UPDATABLE_LIVE:
- if (gs_app_get_kind (self->app) == AS_APP_KIND_FIRMWARE) {
+ if (gs_app_get_kind (self->app) == AS_COMPONENT_KIND_FIRMWARE) {
gtk_widget_set_visible (self->button_install, TRUE);
/* TRANSLATORS: button text in the header when firmware
* can be live-installed */
@@ -984,7 +983,7 @@ gs_details_page_refresh_buttons (GsDetailsPage *self)
/* update button */
switch (state) {
case GS_APP_STATE_UPDATABLE_LIVE:
- if (gs_app_get_kind (self->app) == AS_APP_KIND_FIRMWARE) {
+ if (gs_app_get_kind (self->app) == AS_COMPONENT_KIND_FIRMWARE) {
gtk_widget_set_visible (self->button_update, FALSE);
} else {
gtk_widget_set_visible (self->button_update, TRUE);
@@ -1009,7 +1008,7 @@ gs_details_page_refresh_buttons (GsDetailsPage *self)
/* remove button */
if (gs_app_has_quirk (self->app, GS_APP_QUIRK_COMPULSORY) ||
- gs_app_get_kind (self->app) == AS_APP_KIND_FIRMWARE) {
+ gs_app_get_kind (self->app) == AS_COMPONENT_KIND_FIRMWARE) {
gtk_widget_set_visible (self->button_remove, FALSE);
} else {
switch (state) {
@@ -1364,7 +1363,7 @@ gs_details_page_refresh_all (GsDetailsPage *self)
/* hide the kudo details for non-desktop software */
switch (gs_app_get_kind (self->app)) {
- case AS_APP_KIND_DESKTOP:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
gtk_widget_set_visible (self->grid_details_kudo, TRUE);
break;
default:
@@ -1374,7 +1373,7 @@ gs_details_page_refresh_all (GsDetailsPage *self)
/* only show permissions for flatpak apps */
if (gs_app_get_bundle_kind (self->app) == AS_BUNDLE_KIND_FLATPAK &&
- gs_app_get_kind (self->app) == AS_APP_KIND_DESKTOP) {
+ gs_app_get_kind (self->app) == AS_COMPONENT_KIND_DESKTOP_APP) {
GsAppPermissions permissions = gs_app_get_permissions (self->app);
populate_permission_details (self, permissions);
@@ -1405,7 +1404,7 @@ gs_details_page_refresh_all (GsDetailsPage *self)
gs_app_get_state (self->app) == GS_APP_STATE_AVAILABLE_LOCAL);
switch (gs_app_get_kind (self->app)) {
- case AS_APP_KIND_DESKTOP:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
/* installing an app with a repo file */
gtk_widget_set_visible (self->infobar_details_app_repo,
gs_app_has_quirk (self->app,
@@ -1413,7 +1412,7 @@ gs_details_page_refresh_all (GsDetailsPage *self)
gs_app_get_state (self->app) == GS_APP_STATE_AVAILABLE_LOCAL);
gtk_widget_set_visible (self->infobar_details_repo, FALSE);
break;
- case AS_APP_KIND_GENERIC:
+ case AS_COMPONENT_KIND_GENERIC:
/* installing a repo-release package */
gtk_widget_set_visible (self->infobar_details_app_repo, FALSE);
gtk_widget_set_visible (self->infobar_details_repo,
@@ -1429,8 +1428,8 @@ gs_details_page_refresh_all (GsDetailsPage *self)
/* installing a app without a repo file */
switch (gs_app_get_kind (self->app)) {
- case AS_APP_KIND_DESKTOP:
- if (gs_app_get_kind (self->app) == AS_APP_KIND_FIRMWARE) {
+ case AS_COMPONENT_KIND_DESKTOP_APP:
+ if (gs_app_get_kind (self->app) == AS_COMPONENT_KIND_FIRMWARE) {
gtk_widget_set_visible (self->infobar_details_app_norepo, FALSE);
} else {
gtk_widget_set_visible (self->infobar_details_app_norepo,
@@ -1458,7 +1457,7 @@ gs_details_page_refresh_all (GsDetailsPage *self)
/* hide fields that don't make sense for sources */
switch (gs_app_get_kind (self->app)) {
- case AS_APP_KIND_SOURCE:
+ case AS_COMPONENT_KIND_REPOSITORY:
gtk_widget_set_visible (self->label_details_license_title, FALSE);
gtk_widget_set_visible (self->box_details_license_value, FALSE);
gtk_widget_set_visible (self->label_details_version_title, FALSE);
@@ -1624,11 +1623,11 @@ gs_details_page_refresh_reviews (GsDetailsPage *self)
/* show or hide the entire reviews section */
switch (gs_app_get_kind (self->app)) {
- case AS_APP_KIND_DESKTOP:
- case AS_APP_KIND_FONT:
- case AS_APP_KIND_INPUT_METHOD:
- case AS_APP_KIND_WEB_APP:
- case AS_APP_KIND_SHELL_EXTENSION:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
+ case AS_COMPONENT_KIND_FONT:
+ case AS_COMPONENT_KIND_INPUT_METHOD:
+ case AS_COMPONENT_KIND_WEB_APP:
+ case AS_COMPONENT_KIND_SHELL_EXTENSION:
/* don't show a missing rating on a local file */
if (gs_app_get_state (self->app) != GS_APP_STATE_AVAILABLE_LOCAL &&
self->enable_reviews)
@@ -1788,23 +1787,23 @@ static void
gs_details_page_refresh_content_rating (GsDetailsPage *self)
{
AsContentRating *content_rating;
- GsContentRatingSystem system;
+ AsContentRatingSystem system;
guint age = 0;
g_autofree gchar *display = NULL;
const gchar *locale;
/* get the content rating system from the locale */
locale = setlocale (LC_MESSAGES, NULL);
- system = gs_utils_content_rating_system_from_locale (locale);
+ system = as_content_rating_system_from_locale (locale);
g_debug ("content rating system is guessed as %s from %s",
- gs_content_rating_system_to_str (system),
+ as_content_rating_system_to_string (system),
locale);
/* only show the button if a game and has a content rating */
content_rating = gs_app_get_content_rating (self->app);
if (content_rating != NULL) {
age = as_content_rating_get_minimum_age (content_rating);
- display = gs_utils_content_rating_age_to_str (system, age);
+ display = as_content_rating_system_format_age (system, age);
}
if (display != NULL) {
gtk_button_set_label (GTK_BUTTON (self->button_details_rating_value), display);
@@ -1922,7 +1921,7 @@ gs_details_page_load_stage1_cb (GObject *source,
gs_app_get_id (self->app),
error->message);
}
- if (gs_app_get_kind (self->app) == AS_APP_KIND_UNKNOWN ||
+ if (gs_app_get_kind (self->app) == AS_COMPONENT_KIND_UNKNOWN ||
gs_app_get_state (self->app) == GS_APP_STATE_UNKNOWN) {
g_autofree gchar *str = NULL;
const gchar *id = gs_app_get_id (self->app);
@@ -2401,12 +2400,7 @@ static guint
content_rating_get_age (AsContentRating *content_rating, const gchar *id)
{
AsContentRatingValue value = as_content_rating_get_value (content_rating, id);
-#if AS_CHECK_VERSION (0, 7, 15)
return as_content_rating_attribute_to_csm_age (id, value);
-#else
- /* Hackily treat the value as an age; it should compare the same */
- return (guint) value;
-#endif
}
static void
@@ -2444,7 +2438,7 @@ gs_details_page_content_rating_button_cb (GtkWidget *widget, GsDetailsPage *self
if (cr == NULL)
return;
- ids = gs_content_rating_get_all_rating_ids ();
+ ids = as_content_rating_get_all_rating_ids ();
/* get the worst thing */
for (gsize i = 0; ids[i] != NULL; i++) {
@@ -2493,7 +2487,7 @@ gs_details_page_content_rating_button_cb (GtkWidget *widget, GsDetailsPage *self
content_rating_get_age (cr, coalesce_groups[0]) == age)
continue;
- tmp = gs_content_rating_key_value_to_str (ids[i], as_content_rating_get_value (cr,
ids[i]));
+ tmp = as_content_rating_attribute_get_description (ids[i],
as_content_rating_get_value (cr, ids[i]));
g_string_append_printf (str, "• %s\n", tmp);
}
}
@@ -2503,7 +2497,7 @@ gs_details_page_content_rating_button_cb (GtkWidget *widget, GsDetailsPage *self
age = content_rating_get_age (cr, violence_group[i]);
if (age < age_bad)
continue;
- tmp = gs_content_rating_key_value_to_str (violence_group[i], as_content_rating_get_value (cr,
violence_group[i]));
+ tmp = as_content_rating_attribute_get_description (violence_group[i],
as_content_rating_get_value (cr, violence_group[i]));
g_string_append_printf (str, "• %s\n", tmp);
break;
}
@@ -2513,7 +2507,7 @@ gs_details_page_content_rating_button_cb (GtkWidget *widget, GsDetailsPage *self
age = content_rating_get_age (cr, social_group[i]);
if (age < age_bad)
continue;
- tmp = gs_content_rating_key_value_to_str (social_group[i], as_content_rating_get_value (cr,
social_group[i]));
+ tmp = as_content_rating_attribute_get_description (social_group[i],
as_content_rating_get_value (cr, social_group[i]));
g_string_append_printf (str, "• %s\n", tmp);
break;
}
@@ -2604,7 +2598,7 @@ gs_details_page_license_widget_for_token (GsDetailsPage *self, const gchar *toke
}
/* new SPDX value the extractor didn't know about */
- if (as_utils_is_spdx_license_id (token)) {
+ if (as_is_spdx_license_id (token)) {
g_autofree gchar *uri = NULL;
uri = g_strdup_printf ("http://spdx.org/licenses/%s",
token);
@@ -2624,7 +2618,7 @@ gs_details_page_license_free_cb (GtkWidget *widget, GsDetailsPage *self)
/* URLify any SPDX IDs */
gs_container_remove_all (GTK_CONTAINER (self->box_details_license_list));
- tokens = as_utils_spdx_license_tokenize (gs_app_get_license (self->app));
+ tokens = as_spdx_license_tokenize (gs_app_get_license (self->app));
for (i = 0; tokens[i] != NULL; i++) {
GtkWidget *w = NULL;
@@ -2665,7 +2659,7 @@ gs_details_page_license_nonfree_cb (GtkWidget *widget, GsDetailsPage *self)
g_auto(GStrv) tokens = NULL;
/* license specified as a link */
- tokens = as_utils_spdx_license_tokenize (gs_app_get_license (self->app));
+ tokens = as_spdx_license_tokenize (gs_app_get_license (self->app));
for (guint i = 0; tokens[i] != NULL; i++) {
if (g_str_has_prefix (tokens[i], "@LicenseRef-proprietary=")) {
uri = g_strdup (tokens[i] + 24);
diff --git a/src/gs-extras-page.c b/src/gs-extras-page.c
index 4e723aa94..21af40ce3 100644
--- a/src/gs-extras-page.c
+++ b/src/gs-extras-page.c
@@ -448,7 +448,7 @@ create_missing_app (SearchData *search_data)
}
gs_app_set_summary_missing (app, g_string_free (summary_missing, FALSE));
- gs_app_set_kind (app, AS_APP_KIND_GENERIC);
+ gs_app_set_kind (app, AS_COMPONENT_KIND_GENERIC);
gs_app_set_state (app, GS_APP_STATE_UNAVAILABLE);
gs_app_set_url (app, AS_URL_KIND_MISSING, search_data->url_not_found);
diff --git a/src/gs-installed-page.c b/src/gs-installed-page.c
index 1fd8a843c..721a966c1 100644
--- a/src/gs-installed-page.c
+++ b/src/gs-installed-page.c
@@ -159,7 +159,7 @@ gs_installed_page_add_app (GsInstalledPage *self, GsAppList *list, GsApp *app)
app_row = g_object_new (GS_TYPE_APP_ROW,
"app", app,
"show-buttons", TRUE,
- "show-source", gs_utils_list_has_app_fuzzy (list, app),
+ "show-source", gs_utils_list_has_component_fuzzy (list, app),
"show-installed-size", !gs_app_has_quirk (app, GS_APP_QUIRK_COMPULSORY) &&
should_show_installed_size (self),
NULL);
@@ -336,31 +336,31 @@ gs_installed_page_get_app_sort_key (GsApp *app)
/* sort apps by kind */
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_OS_UPDATE:
+ case AS_COMPONENT_KIND_OS_UPDATE:
g_string_append (key, "1:");
break;
- case AS_APP_KIND_DESKTOP:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
g_string_append (key, "2:");
break;
- case AS_APP_KIND_WEB_APP:
+ case AS_COMPONENT_KIND_WEB_APP:
g_string_append (key, "3:");
break;
- case AS_APP_KIND_RUNTIME:
+ case AS_COMPONENT_KIND_RUNTIME:
g_string_append (key, "4:");
break;
- case AS_APP_KIND_ADDON:
+ case AS_COMPONENT_KIND_ADDON:
g_string_append (key, "5:");
break;
- case AS_APP_KIND_CODEC:
+ case AS_COMPONENT_KIND_CODEC:
g_string_append (key, "6:");
break;
- case AS_APP_KIND_FONT:
+ case AS_COMPONENT_KIND_FONT:
g_string_append (key, "6:");
break;
- case AS_APP_KIND_INPUT_METHOD:
+ case AS_COMPONENT_KIND_INPUT_METHOD:
g_string_append (key, "7:");
break;
- case AS_APP_KIND_SHELL_EXTENSION:
+ case AS_COMPONENT_KIND_SHELL_EXTENSION:
g_string_append (key, "8:");
break;
default:
@@ -417,8 +417,8 @@ typedef enum {
static GsInstalledPageSection
gs_installed_page_get_app_section (GsApp *app)
{
- if (gs_app_get_kind (app) == AS_APP_KIND_DESKTOP ||
- gs_app_get_kind (app) == AS_APP_KIND_WEB_APP) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_DESKTOP_APP ||
+ gs_app_get_kind (app) == AS_COMPONENT_KIND_WEB_APP) {
if (gs_app_has_quirk (app, GS_APP_QUIRK_COMPULSORY))
return GS_UPDATE_LIST_SECTION_SYSTEM_APPS;
return GS_UPDATE_LIST_SECTION_REMOVABLE_APPS;
@@ -515,7 +515,7 @@ gs_installed_page_pending_apps_changed_cb (GsPluginLoader *plugin_loader,
/* never show OS upgrades, we handle the scheduling and
* cancellation in GsUpgradeBanner */
- if (gs_app_get_kind (app) == AS_APP_KIND_OS_UPGRADE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_OPERATING_SYSTEM)
continue;
/* do not to add pending apps more than once. */
diff --git a/src/gs-origin-popover-row.c b/src/gs-origin-popover-row.c
index f5ee8c5a3..325668ca3 100644
--- a/src/gs-origin-popover-row.c
+++ b/src/gs-origin-popover-row.c
@@ -77,12 +77,12 @@ refresh_ui (GsOriginPopoverRow *row)
}
if (gs_app_get_bundle_kind (priv->app) == AS_BUNDLE_KIND_FLATPAK &&
- gs_app_get_scope (priv->app) != AS_APP_SCOPE_UNKNOWN) {
- AsAppScope scope = gs_app_get_scope (priv->app);
- if (scope == AS_APP_SCOPE_SYSTEM) {
+ gs_app_get_scope (priv->app) != AS_COMPONENT_SCOPE_UNKNOWN) {
+ AsComponentScope scope = gs_app_get_scope (priv->app);
+ if (scope == AS_COMPONENT_SCOPE_SYSTEM) {
/* TRANSLATORS: the installation location for flatpaks */
gtk_label_set_text (GTK_LABEL (priv->installation_label), _("system"));
- } else if (scope == AS_APP_SCOPE_USER) {
+ } else if (scope == AS_COMPONENT_SCOPE_USER) {
/* TRANSLATORS: the installation location for flatpaks */
gtk_label_set_text (GTK_LABEL (priv->installation_label), _("user"));
}
diff --git a/src/gs-page.c b/src/gs-page.c
index 1bcd27c7b..52f1fcdab 100644
--- a/src/gs-page.c
+++ b/src/gs-page.c
@@ -81,7 +81,7 @@ gs_page_show_update_message (GsPageHelper *helper, AsScreenshot *ss)
GTK_MESSAGE_INFO,
GTK_BUTTONS_OK,
"%s", gs_app_get_name (helper->app));
- escaped = g_markup_escape_text (as_screenshot_get_caption (ss, NULL), -1);
+ escaped = g_markup_escape_text (as_screenshot_get_caption (ss), -1);
gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog),
"%s", escaped);
@@ -152,10 +152,10 @@ gs_page_app_installed_cb (GObject *source,
}
/* tell the user what they have to do */
- if (gs_app_get_kind (helper->app) == AS_APP_KIND_FIRMWARE &&
+ if (gs_app_get_kind (helper->app) == AS_COMPONENT_KIND_FIRMWARE &&
gs_app_has_quirk (helper->app, GS_APP_QUIRK_NEEDS_USER_ACTION)) {
AsScreenshot *ss = gs_app_get_action_screenshot (helper->app);
- if (ss != NULL && as_screenshot_get_caption (ss, NULL) != NULL)
+ if (ss != NULL && as_screenshot_get_caption (ss) != NULL)
gs_page_show_update_message (helper, ss);
}
@@ -328,7 +328,7 @@ gs_page_needs_user_action (GsPageHelper *helper, AsScreenshot *ss)
* '%s' is an application summary, e.g. 'GNOME Clocks' */
_("Prepare %s"),
gs_app_get_name (helper->app));
- escaped = g_markup_escape_text (as_screenshot_get_caption (ss, NULL), -1);
+ escaped = g_markup_escape_text (as_screenshot_get_caption (ss), -1);
gtk_message_dialog_format_secondary_markup (GTK_MESSAGE_DIALOG (dialog),
"%s", escaped);
@@ -378,10 +378,10 @@ gs_page_update_app (GsPage *page, GsApp *app, GCancellable *cancellable)
helper->cancellable = g_object_ref (cancellable);
/* tell the user what they have to do */
- if (gs_app_get_kind (app) == AS_APP_KIND_FIRMWARE &&
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_FIRMWARE &&
gs_app_has_quirk (app, GS_APP_QUIRK_NEEDS_USER_ACTION)) {
AsScreenshot *ss = gs_app_get_action_screenshot (app);
- if (ss != NULL && as_screenshot_get_caption (ss, NULL) != NULL) {
+ if (ss != NULL && as_screenshot_get_caption (ss) != NULL) {
gs_page_needs_user_action (helper, ss);
return;
}
@@ -459,7 +459,7 @@ gs_page_remove_app (GsPage *page, GsApp *app, GCancellable *cancellable)
/* use different name and summary */
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_SOURCE:
+ case AS_COMPONENT_KIND_REPOSITORY:
/* TRANSLATORS: this is a prompt message, and '%s' is an
* repository name, e.g. 'GNOME Nightly' */
title = g_strdup_printf (_("Are you sure you want to remove "
diff --git a/src/gs-repos-dialog.c b/src/gs-repos-dialog.c
index f4dbb46f0..2389313d4 100644
--- a/src/gs-repos-dialog.c
+++ b/src/gs-repos-dialog.c
@@ -74,14 +74,14 @@ get_repo_installed_text (GsApp *repo)
for (guint i = 0; i < gs_app_list_length (related); i++) {
GsApp *app_tmp = gs_app_list_index (related, i);
switch (gs_app_get_kind (app_tmp)) {
- case AS_APP_KIND_WEB_APP:
- case AS_APP_KIND_DESKTOP:
+ case AS_COMPONENT_KIND_WEB_APP:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
cnt_apps++;
break;
- case AS_APP_KIND_FONT:
- case AS_APP_KIND_CODEC:
- case AS_APP_KIND_INPUT_METHOD:
- case AS_APP_KIND_ADDON:
+ case AS_COMPONENT_KIND_FONT:
+ case AS_COMPONENT_KIND_CODEC:
+ case AS_COMPONENT_KIND_INPUT_METHOD:
+ case AS_COMPONENT_KIND_ADDON:
cnt_addon++;
break;
default:
diff --git a/src/gs-screenshot-image.c b/src/gs-screenshot-image.c
index c816a84d3..b4f04242a 100644
--- a/src/gs-screenshot-image.c
+++ b/src/gs-screenshot-image.c
@@ -122,6 +122,8 @@ static void
gs_screenshot_image_show_blurred (GsScreenshotImage *ssimg,
const gchar *filename_thumb)
{
+ /* FIXME-libas */
+#if 0
g_autoptr(AsImage) im = NULL;
g_autoptr(GdkPixbuf) pb = NULL;
@@ -143,6 +145,7 @@ gs_screenshot_image_show_blurred (GsScreenshotImage *ssimg,
gs_image_set_from_pixbuf_with_scale (GTK_IMAGE (ssimg->image2),
pb, (gint) ssimg->scale);
}
+#endif
}
static gboolean
@@ -164,12 +167,17 @@ gs_screenshot_image_save_downloaded_img (GsScreenshotImage *ssimg,
/* save to file, using the same code as the AppStream builder
* so the preview looks the same */
im = as_image_new ();
+
+ /* FIXME-libas */
+ ret = TRUE;
+#if 0
as_image_set_pixbuf (im, pixbuf);
ret = as_image_save_filename (im, ssimg->filename,
ssimg->width * ssimg->scale,
ssimg->height * ssimg->scale,
AS_IMAGE_SAVE_FLAG_PAD_16_9,
error);
+#endif
if (!ret)
return FALSE;
@@ -209,9 +217,10 @@ gs_screenshot_image_save_downloaded_img (GsScreenshotImage *ssimg,
return TRUE;
}
- ret = as_image_save_filename (im, filename, width, height,
- AS_IMAGE_SAVE_FLAG_PAD_16_9,
- &error_local);
+ /* FIXME-libas */
+ //ret = as_image_save_filename (im, filename, width, height,
+ // AS_IMAGE_SAVE_FLAG_PAD_16_9,
+ // &error_local);
if (!ret) {
/* if we cannot save this screenshot, warn about that but do not
diff --git a/src/gs-search-page.c b/src/gs-search-page.c
index ef79c85b6..48f31dba5 100644
--- a/src/gs-search-page.c
+++ b/src/gs-search-page.c
@@ -160,7 +160,7 @@ gs_search_page_get_search_cb (GObject *source_object,
if (self->appid_to_show != NULL) {
g_autoptr (GsApp) a = NULL;
- if (as_utils_unique_id_valid (self->appid_to_show)) {
+ if (as_utils_data_id_valid (self->appid_to_show)) {
a = gs_plugin_loader_app_create (self->plugin_loader,
self->appid_to_show);
} else {
@@ -190,8 +190,8 @@ gs_search_page_get_app_sort_key (GsApp *app)
/* sort apps before runtimes and extensions */
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_DESKTOP:
- case AS_APP_KIND_SHELL_EXTENSION:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
+ case AS_COMPONENT_KIND_SHELL_EXTENSION:
g_string_append (key, "9:");
break;
default:
diff --git a/src/gs-self-test.c b/src/gs-self-test.c
index 43d94c5e6..b664656c0 100644
--- a/src/gs-self-test.c
+++ b/src/gs-self-test.c
@@ -10,7 +10,6 @@
#include "gnome-software-private.h"
-#include "gs-content-rating.h"
#include "gs-css.h"
#include "gs-test.h"
diff --git a/src/gs-shell-search-provider.c b/src/gs-shell-search-provider.c
index 806ec3d3f..98ddc9215 100644
--- a/src/gs-shell-search-provider.c
+++ b/src/gs-shell-search-provider.c
@@ -117,7 +117,7 @@ gs_shell_search_provider_get_app_sort_key (GsApp *app)
/* sort apps before runtimes and extensions */
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_DESKTOP:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
g_string_append (key, "9:");
break;
default:
@@ -252,7 +252,7 @@ handle_get_result_metas (GsShellSearchProvider2 *skeleton,
if (pixbuf != NULL)
g_variant_builder_add (&meta, "{sv}", "icon", g_icon_serialize (G_ICON (pixbuf)));
- if (gs_utils_list_has_app_fuzzy (self->search_results, app) &&
+ if (gs_utils_list_has_component_fuzzy (self->search_results, app) &&
gs_app_get_origin_hostname (app) != NULL) {
/* TRANSLATORS: this refers to where the app came from */
g_autofree gchar *source_text = g_strdup_printf (_("Source: %s"),
@@ -361,8 +361,8 @@ search_provider_dispose (GObject *obj)
static void
gs_shell_search_provider_init (GsShellSearchProvider *self)
{
- self->metas_cache = g_hash_table_new_full ((GHashFunc) as_utils_unique_id_hash,
- (GEqualFunc) as_utils_unique_id_equal,
+ self->metas_cache = g_hash_table_new_full ((GHashFunc) as_utils_data_id_hash,
+ (GEqualFunc) as_utils_data_id_equal,
g_free,
(GDestroyNotify) g_variant_unref);
diff --git a/src/gs-update-dialog.c b/src/gs-update-dialog.c
index 2ff50ea00..ebed476ec 100644
--- a/src/gs-update-dialog.c
+++ b/src/gs-update-dialog.c
@@ -156,13 +156,13 @@ populate_permissions_section (GsUpdateDialog *dialog, GsAppPermissions permissio
static void
set_updates_description_ui (GsUpdateDialog *dialog, GsApp *app)
{
- AsAppKind kind;
+ AsComponentKind kind;
const GdkPixbuf *pixbuf;
const gchar *update_details;
/* set window title */
kind = gs_app_get_kind (app);
- if (kind == AS_APP_KIND_OS_UPDATE) {
+ if (kind == AS_COMPONENT_KIND_OS_UPDATE) {
gtk_window_set_title (GTK_WINDOW (dialog), gs_app_get_name (app));
} else if (gs_app_get_source_default (app) != NULL &&
gs_app_get_update_version (app) != NULL) {
@@ -180,7 +180,7 @@ set_updates_description_ui (GsUpdateDialog *dialog, GsApp *app)
}
/* set update header */
- gtk_widget_set_visible (dialog->box_header, kind == AS_APP_KIND_DESKTOP);
+ gtk_widget_set_visible (dialog->box_header, kind == AS_COMPONENT_KIND_DESKTOP_APP);
update_details = gs_app_get_update_details (app);
if (update_details == NULL) {
/* TRANSLATORS: this is where the packager did not write
@@ -457,22 +457,12 @@ is_downgrade (const gchar *evr1,
* part of the semantic version */
/* check version */
-#if AS_CHECK_VERSION(0,7,15)
- rc = as_utils_vercmp_full (version1, version2,
- AS_VERSION_COMPARE_FLAG_NONE);
-#else
- rc = as_utils_vercmp (version1, version2);
-#endif
+ rc = as_utils_compare_versions (version1, version2);
if (rc != 0)
return rc > 0;
/* check release */
-#if AS_CHECK_VERSION(0,7,15)
- rc = as_utils_vercmp_full (release1, release2,
- AS_VERSION_COMPARE_FLAG_NONE);
-#else
- rc = as_utils_vercmp (release1, release2);
-#endif
+ rc = as_utils_compare_versions (release1, release2);
if (rc != 0)
return rc > 0;
@@ -630,7 +620,7 @@ create_section (GsUpdateDialog *dialog, GsUpdateDialogSection section)
void
gs_update_dialog_show_update_details (GsUpdateDialog *dialog, GsApp *app)
{
- AsAppKind kind;
+ AsComponentKind kind;
g_autofree gchar *str = NULL;
/* debug */
@@ -646,7 +636,7 @@ gs_update_dialog_show_update_details (GsUpdateDialog *dialog, GsApp *app)
/* set update description */
kind = gs_app_get_kind (app);
- if (kind == AS_APP_KIND_OS_UPDATE) {
+ if (kind == AS_COMPONENT_KIND_OS_UPDATE) {
GsAppList *related;
GsApp *app_related;
GsUpdateDialogSection section;
diff --git a/src/gs-update-monitor.c b/src/gs-update-monitor.c
index 56a52d92a..76bd97265 100644
--- a/src/gs-update-monitor.c
+++ b/src/gs-update-monitor.c
@@ -192,7 +192,7 @@ should_download_updates (GsUpdateMonitor *monitor)
static gboolean
_filter_by_app_kind (GsApp *app, gpointer user_data)
{
- AsAppKind kind = GPOINTER_TO_UINT (user_data);
+ AsComponentKind kind = GPOINTER_TO_UINT (user_data);
return gs_app_get_kind (app) == kind;
}
@@ -219,7 +219,7 @@ _build_autoupdated_notification (GsUpdateMonitor *monitor, GsAppList *list)
list_apps = gs_app_list_copy (list);
gs_app_list_filter (list_apps,
_filter_by_app_kind,
- GUINT_TO_POINTER(AS_APP_KIND_DESKTOP));
+ GUINT_TO_POINTER(AS_COMPONENT_KIND_DESKTOP_APP));
gs_app_list_sort (list_apps, _sort_by_rating_cb, NULL);
/* FIXME: add the applications that are currently active that use one
* of the updated runtimes */
@@ -1005,7 +1005,7 @@ get_updates_historical_cb (GObject *object, GAsyncResult *res, gpointer data)
if (time_last_notified >= gs_app_get_install_date (app))
return;
- if (gs_app_get_kind (app) == AS_APP_KIND_OS_UPGRADE) {
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_OPERATING_SYSTEM) {
/* TRANSLATORS: Notification title when we've done a distro upgrade */
notification = g_notification_new (_("System Upgrade Complete"));
diff --git a/src/gs-updates-page.c b/src/gs-updates-page.c
index 9c04975d8..37919fc53 100644
--- a/src/gs-updates-page.c
+++ b/src/gs-updates-page.c
@@ -141,11 +141,11 @@ static GsUpdatesSectionKind
_get_app_section (GsApp *app)
{
if (gs_app_get_state (app) == GS_APP_STATE_UPDATABLE_LIVE) {
- if (gs_app_get_kind (app) == AS_APP_KIND_FIRMWARE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_FIRMWARE)
return GS_UPDATES_SECTION_KIND_ONLINE_FIRMWARE;
return GS_UPDATES_SECTION_KIND_ONLINE;
}
- if (gs_app_get_kind (app) == AS_APP_KIND_FIRMWARE)
+ if (gs_app_get_kind (app) == AS_COMPONENT_KIND_FIRMWARE)
return GS_UPDATES_SECTION_KIND_OFFLINE_FIRMWARE;
return GS_UPDATES_SECTION_KIND_OFFLINE;
}
@@ -1238,7 +1238,7 @@ gs_updates_page_status_changed_cb (GsPluginLoader *plugin_loader,
case GS_PLUGIN_STATUS_INSTALLING:
case GS_PLUGIN_STATUS_REMOVING:
if (app == NULL ||
- (gs_app_get_kind (app) != AS_APP_KIND_OS_UPGRADE &&
+ (gs_app_get_kind (app) != AS_COMPONENT_KIND_OPERATING_SYSTEM &&
gs_app_get_id (app) != NULL)) {
/* if we do a install or remove then make sure all new
* packages are downloaded */
diff --git a/src/gs-updates-section.c b/src/gs-updates-section.c
index 16c99331b..c87f75125 100644
--- a/src/gs-updates-section.c
+++ b/src/gs-updates-section.c
@@ -142,31 +142,31 @@ _get_app_sort_key (GsApp *app)
/* sort apps by kind */
switch (gs_app_get_kind (app)) {
- case AS_APP_KIND_OS_UPDATE:
+ case AS_COMPONENT_KIND_OS_UPDATE:
g_string_append (key, "1:");
break;
- case AS_APP_KIND_DESKTOP:
+ case AS_COMPONENT_KIND_DESKTOP_APP:
g_string_append (key, "2:");
break;
- case AS_APP_KIND_WEB_APP:
+ case AS_COMPONENT_KIND_WEB_APP:
g_string_append (key, "3:");
break;
- case AS_APP_KIND_RUNTIME:
+ case AS_COMPONENT_KIND_RUNTIME:
g_string_append (key, "4:");
break;
- case AS_APP_KIND_ADDON:
+ case AS_COMPONENT_KIND_ADDON:
g_string_append (key, "5:");
break;
- case AS_APP_KIND_CODEC:
+ case AS_COMPONENT_KIND_CODEC:
g_string_append (key, "6:");
break;
- case AS_APP_KIND_FONT:
+ case AS_COMPONENT_KIND_FONT:
g_string_append (key, "6:");
break;
- case AS_APP_KIND_INPUT_METHOD:
+ case AS_COMPONENT_KIND_INPUT_METHOD:
g_string_append (key, "7:");
break;
- case AS_APP_KIND_SHELL_EXTENSION:
+ case AS_COMPONENT_KIND_SHELL_EXTENSION:
g_string_append (key, "8:");
break;
default:
diff --git a/src/meson.build b/src/meson.build
index fde5fbdc5..c6e280476 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -25,7 +25,6 @@ gnome_software_sources = [
'gs-category-tile.c',
'gs-common.c',
'gs-css.c',
- 'gs-content-rating.c',
'gs-details-page.c',
'gs-extras-page.c',
'gs-feature-tile.c',
@@ -230,7 +229,6 @@ if get_option('tests')
sources : [
'gs-css.c',
'gs-common.c',
- 'gs-content-rating.c',
'gs-self-test.c',
],
include_directories : [
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]