AsApp

AsApp — An object for an AppStream application or add-on

Stability Level

Stable, unless otherwise indicated

Synopsis

#include <appstream-glib.h>

#define             AS_TYPE_APP
struct              AsAppClass;
enum                AsAppParseFlags;
enum                AsAppSubsumeFlags;
#define             AS_APP_SUBSUME_FLAG_SOURCE_FILE
#define             AS_APP_SUBSUME_FLAG_MERGE
#define             AS_APP_SUBSUME_FLAG_PARTIAL
#define             AS_APP_SUBSUME_FLAG_DEDUPE
enum                AsAppError;
enum                AsAppValidateFlags;
enum                AsAppTrustFlags;
typedef             AsAppSourceKind;
#define             AS_APP_SOURCE_KIND_UNKNOWN
#define             AS_APP_SOURCE_KIND_APPSTREAM
#define             AS_APP_SOURCE_KIND_DESKTOP
#define             AS_APP_SOURCE_KIND_APPDATA
#define             AS_APP_SOURCE_KIND_METAINFO
#define             AS_APP_SOURCE_KIND_INF
enum                AsAppKind;
enum                AsAppQuirk;
enum                AsAppState;
enum                AsAppScope;
enum                AsAppMergeKind;
enum                AsAppSearchMatch;
#define             AS_APP_ERROR
AsApp *             as_app_new                          (void);
GQuark              as_app_error_quark                  (void);
const gchar *       as_app_state_to_string              (AsAppState state);
const gchar *       as_app_kind_to_string               (AsAppKind kind);
AsAppKind           as_app_kind_from_string             (const gchar *kind);
AsAppScope          as_app_scope_from_string            (const gchar *scope);
const gchar *       as_app_scope_to_string              (AsAppScope scope);
AsAppMergeKind      as_app_merge_kind_from_string       (const gchar *merge_kind);
const gchar *       as_app_merge_kind_to_string         (AsAppMergeKind merge_kind);
AsAppKind           as_app_get_kind                     (AsApp *app);
AsAppScope          as_app_get_scope                    (AsApp *app);
AsAppMergeKind      as_app_get_merge_kind               (AsApp *app);
AsAppState          as_app_get_state                    (AsApp *app);
AsAppTrustFlags     as_app_get_trust_flags              (AsApp *app);
GList *             as_app_get_languages                (AsApp *app);
GPtrArray *         as_app_get_addons                   (AsApp *app);
GPtrArray *         as_app_get_categories               (AsApp *app);
GPtrArray *         as_app_get_compulsory_for_desktops  (AsApp *app);
GPtrArray *         as_app_get_extends                  (AsApp *app);
GPtrArray *         as_app_get_keywords                 (AsApp *app,
                                                         const gchar *locale);
GPtrArray *         as_app_get_kudos                    (AsApp *app);
GPtrArray *         as_app_get_permissions              (AsApp *app);
GPtrArray *         as_app_get_formats                  (AsApp *app);
GPtrArray *         as_app_get_mimetypes                (AsApp *app);
GPtrArray *         as_app_get_pkgnames                 (AsApp *app);
GPtrArray *         as_app_get_architectures            (AsApp *app);
GPtrArray *         as_app_get_releases                 (AsApp *app);
GPtrArray *         as_app_get_provides                 (AsApp *app);
GPtrArray *         as_app_get_screenshots              (AsApp *app);
GPtrArray *         as_app_get_reviews                  (AsApp *app);
GPtrArray *         as_app_get_content_ratings          (AsApp *app);
GPtrArray *         as_app_get_icons                    (AsApp *app);
GPtrArray *         as_app_get_bundles                  (AsApp *app);
GPtrArray *         as_app_get_translations             (AsApp *app);
GPtrArray *         as_app_get_suggests                 (AsApp *app);
GPtrArray *         as_app_get_requires                 (AsApp *app);
GHashTable *        as_app_get_names                    (AsApp *app);
GHashTable *        as_app_get_comments                 (AsApp *app);
GHashTable *        as_app_get_developer_names          (AsApp *app);
GHashTable *        as_app_get_metadata                 (AsApp *app);
GHashTable *        as_app_get_descriptions             (AsApp *app);
GHashTable *        as_app_get_urls                     (AsApp *app);
GPtrArray *         as_app_get_vetos                    (AsApp *app);
const gchar *       as_app_get_icon_path                (AsApp *app);
const gchar *       as_app_get_id_filename              (AsApp *app);
const gchar *       as_app_get_id                       (AsApp *app);
const gchar *       as_app_get_id_no_prefix             (AsApp *app);
const gchar *       as_app_get_unique_id                (AsApp *app);
const gchar *       as_app_get_pkgname_default          (AsApp *app);
const gchar *       as_app_get_source_pkgname           (AsApp *app);
const gchar *       as_app_get_origin                   (AsApp *app);
const gchar *       as_app_get_project_group            (AsApp *app);
const gchar *       as_app_get_project_license          (AsApp *app);
const gchar *       as_app_get_metadata_license         (AsApp *app);
const gchar *       as_app_get_update_contact           (AsApp *app);
const gchar *       as_app_get_branch                   (AsApp *app);
const gchar *       as_app_get_name                     (AsApp *app,
                                                         const gchar *locale);
const gchar *       as_app_get_comment                  (AsApp *app,
                                                         const gchar *locale);
const gchar *       as_app_get_developer_name           (AsApp *app,
                                                         const gchar *locale);
const gchar *       as_app_get_description              (AsApp *app,
                                                         const gchar *locale);
gint                as_app_get_priority                 (AsApp *app);
gint                as_app_get_language                 (AsApp *app,
                                                         const gchar *locale);
const gchar *       as_app_get_metadata_item            (AsApp *app,
                                                         const gchar *key);
const gchar *       as_app_get_url_item                 (AsApp *app,
                                                         AsUrlKind url_kind);
gboolean            as_app_has_category                 (AsApp *app,
                                                         const gchar *category);
gboolean            as_app_has_kudo                     (AsApp *app,
                                                         const gchar *kudo);
gboolean            as_app_has_kudo_kind                (AsApp *app,
                                                         AsKudoKind kudo);
gboolean            as_app_has_permission               (AsApp *app,
                                                         const gchar *permission);
AsFormat *          as_app_get_format_default           (AsApp *app);
AsFormat *          as_app_get_format_by_kind           (AsApp *app,
                                                         AsFormatKind kind);
AsFormat *          as_app_get_format_by_filename       (AsApp *app,
                                                         const gchar *filename);
gboolean            as_app_has_compulsory_for_desktop   (AsApp *app,
                                                         const gchar *desktop);
gboolean            as_app_has_quirk                    (AsApp *app,
                                                         AsAppQuirk quirk);
void                as_app_set_id                       (AsApp *app,
                                                         const gchar *id);
void                as_app_set_kind                     (AsApp *app,
                                                         AsAppKind kind);
void                as_app_set_scope                    (AsApp *app,
                                                         AsAppScope scope);
void                as_app_set_merge_kind               (AsApp *app,
                                                         AsAppMergeKind merge_kind);
void                as_app_set_state                    (AsApp *app,
                                                         AsAppState state);
void                as_app_set_trust_flags              (AsApp *app,
                                                         AsAppTrustFlags trust_flags);
void                as_app_set_origin                   (AsApp *app,
                                                         const gchar *origin);
void                as_app_set_project_group            (AsApp *app,
                                                         const gchar *project_group);
void                as_app_set_project_license          (AsApp *app,
                                                         const gchar *project_license);
void                as_app_set_metadata_license         (AsApp *app,
                                                         const gchar *metadata_license);
void                as_app_set_source_pkgname           (AsApp *app,
                                                         const gchar *source_pkgname);
void                as_app_set_update_contact           (AsApp *app,
                                                         const gchar *update_contact);
void                as_app_set_icon_path                (AsApp *app,
                                                         const gchar *icon_path);
void                as_app_set_name                     (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *name);
void                as_app_set_comment                  (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *comment);
void                as_app_set_developer_name           (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *developer_name);
void                as_app_set_description              (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *description);
void                as_app_set_branch                   (AsApp *app,
                                                         const gchar *branch);
void                as_app_set_priority                 (AsApp *app,
                                                         gint priority);
void                as_app_add_category                 (AsApp *app,
                                                         const gchar *category);
void                as_app_add_keyword                  (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *keyword);
void                as_app_add_kudo                     (AsApp *app,
                                                         const gchar *kudo);
void                as_app_add_kudo_kind                (AsApp *app,
                                                         AsKudoKind kudo_kind);
void                as_app_add_permission               (AsApp *app,
                                                         const gchar *permission);
void                as_app_add_format                   (AsApp *app,
                                                         AsFormat *format);
void                as_app_remove_format                (AsApp *app,
                                                         AsFormat *format);
void                as_app_add_mimetype                 (AsApp *app,
                                                         const gchar *mimetype);
void                as_app_add_pkgname                  (AsApp *app,
                                                         const gchar *pkgname);
void                as_app_add_arch                     (AsApp *app,
                                                         const gchar *arch);
void                as_app_add_release                  (AsApp *app,
                                                         AsRelease *release);
void                as_app_add_provide                  (AsApp *app,
                                                         AsProvide *provide);
void                as_app_add_screenshot               (AsApp *app,
                                                         AsScreenshot *screenshot);
void                as_app_add_review                   (AsApp *app,
                                                         AsReview *review);
void                as_app_add_content_rating           (AsApp *app,
                                                         AsContentRating *content_rating);
void                as_app_add_icon                     (AsApp *app,
                                                         AsIcon *icon);
void                as_app_add_bundle                   (AsApp *app,
                                                         AsBundle *bundle);
void                as_app_add_translation              (AsApp *app,
                                                         AsTranslation *translation);
void                as_app_add_suggest                  (AsApp *app,
                                                         AsSuggest *suggest);
void                as_app_add_require                  (AsApp *app,
                                                         AsRequire *require);
void                as_app_add_language                 (AsApp *app,
                                                         gint percentage,
                                                         const gchar *locale);
void                as_app_add_compulsory_for_desktop   (AsApp *app,
                                                         const gchar *compulsory_for_desktop);
void                as_app_add_url                      (AsApp *app,
                                                         AsUrlKind url_kind,
                                                         const gchar *url);
void                as_app_add_metadata                 (AsApp *app,
                                                         const gchar *key,
                                                         const gchar *value);
void                as_app_remove_metadata              (AsApp *app,
                                                         const gchar *key);
void                as_app_add_addon                    (AsApp *app,
                                                         AsApp *addon);
void                as_app_add_extends                  (AsApp *app,
                                                         const gchar *extends);
void                as_app_add_quirk                    (AsApp *app,
                                                         AsAppQuirk quirk);
GPtrArray *         as_app_validate                     (AsApp *app,
                                                         AsAppValidateFlags flags,
                                                         GError **error);
void                as_app_subsume                      (AsApp *app,
                                                         AsApp *donor);
void                as_app_subsume_full                 (AsApp *app,
                                                         AsApp *donor,
                                                         AsAppSubsumeFlags flags);
void                as_app_add_veto                     (AsApp *app,
                                                         const gchar *fmt,
                                                         ...);
void                as_app_remove_veto                  (AsApp *app,
                                                         const gchar *description);
guint               as_app_search_matches_all           (AsApp *app,
                                                         gchar **search);
guint               as_app_search_matches               (AsApp *app,
                                                         const gchar *search);
gboolean            as_app_parse_file                   (AsApp *app,
                                                         const gchar *filename,
                                                         AsAppParseFlags flags,
                                                         GError **error);
gboolean            as_app_to_file                      (AsApp *app,
                                                         GFile *file,
                                                         GCancellable *cancellable,
                                                         GError **error);
AsContentRating *   as_app_get_content_rating           (AsApp *app,
                                                         const gchar *kind);
AsIcon *            as_app_get_icon_default             (AsApp *app);
AsIcon *            as_app_get_icon_for_size            (AsApp *app,
                                                         guint width,
                                                         guint height);
AsBundle *          as_app_get_bundle_default           (AsApp *app);
AsRelease *         as_app_get_release                  (AsApp *app,
                                                         const gchar *version);
AsRelease *         as_app_get_release_default          (AsApp *app);
AsRequire *         as_app_get_require_by_value         (AsApp *app,
                                                         AsRequireKind kind,
                                                         const gchar *value);
gboolean            as_app_convert_icons                (AsApp *app,
                                                         AsIconKind kind,
                                                         GError **error);
gboolean            as_app_equal                        (AsApp *app1,
                                                         AsApp *app2);
AsIdKind            as_app_get_id_kind                  (AsApp *app);
void                as_app_set_id_kind                  (AsApp *app,
                                                         AsIdKind id_kind);
void                as_app_set_source_file              (AsApp *app,
                                                         const gchar *source_file);
const gchar *       as_app_get_source_file              (AsApp *app);
AsFormatKind        as_app_get_source_kind              (AsApp *app);
void                as_app_set_source_kind              (AsApp *app,
                                                         AsFormatKind source_kind);
AsFormatKind        as_app_source_kind_from_string      (const gchar *source_kind);
const gchar *       as_app_source_kind_to_string        (AsFormatKind source_kind);
AsFormatKind        as_app_guess_source_kind            (const gchar *filename);

Description

This object represents the base object of all AppStream, the application. Although called AsApp, this object also represents components like fonts, codecs and input methods.

See also: AsScreenshot, AsRelease

Details

AS_TYPE_APP

#define AS_TYPE_APP (as_app_get_type ())

struct AsAppClass

struct AsAppClass {
	GObjectClass		parent_class;
};

enum AsAppParseFlags

typedef enum {
	AS_APP_PARSE_FLAG_NONE			= 0,
	AS_APP_PARSE_FLAG_USE_HEURISTICS = 1 << 0, /* Since: 0.1.2 */
	AS_APP_PARSE_FLAG_KEEP_COMMENTS		= 1 << 1, /* Since: 0.1.6 */
	AS_APP_PARSE_FLAG_CONVERT_TRANSLATABLE = 1 << 2, /* Since: 0.1.6 */
	AS_APP_PARSE_FLAG_APPEND_DATA		= 1 << 3, /* Since: 0.1.8 */
	AS_APP_PARSE_FLAG_ALLOW_VETO		= 1 << 4, /* Since: 0.2.5 */
	AS_APP_PARSE_FLAG_USE_FALLBACKS		= 1 << 5, /* Since: 0.4.1 */
	AS_APP_PARSE_FLAG_ADD_ALL_METADATA = 1 << 6, /* Since: 0.6.1 */
	AS_APP_PARSE_FLAG_ONLY_NATIVE_LANGS = 1 << 7, /* Since: 0.6.3 */
} AsAppParseFlags;

The flags to use when parsing resources.

AS_APP_PARSE_FLAG_NONE

No special actions to use

AS_APP_PARSE_FLAG_USE_HEURISTICS

Use heuristic to infer properties

AS_APP_PARSE_FLAG_KEEP_COMMENTS

Save comments from the file

AS_APP_PARSE_FLAG_CONVERT_TRANSLATABLE

Allow translatable flags like <_p>

AS_APP_PARSE_FLAG_APPEND_DATA

Append new data rather than replacing

AS_APP_PARSE_FLAG_ALLOW_VETO

Do not return errors for vetoed apps

AS_APP_PARSE_FLAG_USE_FALLBACKS

Fall back to suboptimal data where required

AS_APP_PARSE_FLAG_ADD_ALL_METADATA

Add all extra metadata from the source file

AS_APP_PARSE_FLAG_ONLY_NATIVE_LANGS

Only load native languages

enum AsAppSubsumeFlags

typedef enum {
	AS_APP_SUBSUME_FLAG_NONE		= 0,
	AS_APP_SUBSUME_FLAG_NO_OVERWRITE = 1ull << 0, /* Since: 0.1.4 */
	AS_APP_SUBSUME_FLAG_BOTH_WAYS		= 1ull << 1, /* Since: 0.1.4 */
	AS_APP_SUBSUME_FLAG_REPLACE		= 1ull << 2, /* Since: 0.6.3 */
	AS_APP_SUBSUME_FLAG_KIND		= 1ull << 3, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_STATE		= 1ull << 4, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_BUNDLES		= 1ull << 5, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_TRANSLATIONS = 1ull << 6, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_RELEASES		= 1ull << 7, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_KUDOS		= 1ull << 8, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_CATEGORIES		= 1ull << 9, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_PERMISSIONS		= 1ull << 10, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_EXTENDS		= 1ull << 11, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_COMPULSORY		= 1ull << 12, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_SCREENSHOTS		= 1ull << 13, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_REVIEWS		= 1ull << 14, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_CONTENT_RATINGS = 1ull << 15, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_PROVIDES		= 1ull << 16, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_ICONS		= 1ull << 17, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_MIMETYPES		= 1ull << 18, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_VETOS		= 1ull << 19, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_LANGUAGES		= 1ull << 20, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_NAME		= 1ull << 21, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_COMMENT		= 1ull << 22, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_DEVELOPER_NAME = 1ull << 23, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_DESCRIPTION		= 1ull << 24, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_METADATA		= 1ull << 25, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_URL			= 1ull << 26, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_KEYWORDS		= 1ull << 27, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_FORMATS		= 1ull << 28, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_BRANCH		= 1ull << 29, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_ORIGIN		= 1ull << 30, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_METADATA_LICENSE = 1ull << 31, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_PROJECT_LICENSE = 1ull << 32, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_PROJECT_GROUP = 1ull << 33, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_SOURCE_KIND		= 1ull << 34, /* Since: 0.6.1 */
	AS_APP_SUBSUME_FLAG_SUGGESTS		= 1ull << 35, /* Since: 0.6.3 */
} AsAppSubsumeFlags;

The flags to use when subsuming applications.

AS_APP_SUBSUME_FLAG_NONE

No special actions to use

AS_APP_SUBSUME_FLAG_NO_OVERWRITE

Do not overwrite already set properties

AS_APP_SUBSUME_FLAG_BOTH_WAYS

Copy unset properties both ways

AS_APP_SUBSUME_FLAG_REPLACE

AS_APP_SUBSUME_FLAG_KIND

Copy the kind

AS_APP_SUBSUME_FLAG_STATE

Copy the state

AS_APP_SUBSUME_FLAG_BUNDLES

Copy the bundles

AS_APP_SUBSUME_FLAG_TRANSLATIONS

Copy the translations

AS_APP_SUBSUME_FLAG_RELEASES

Copy the releases

AS_APP_SUBSUME_FLAG_KUDOS

Copy the kudos

AS_APP_SUBSUME_FLAG_CATEGORIES

Copy the categories

AS_APP_SUBSUME_FLAG_PERMISSIONS

Copy the permissions

AS_APP_SUBSUME_FLAG_EXTENDS

Copy the extends

AS_APP_SUBSUME_FLAG_COMPULSORY

Copy the compulsory-for-desktop

AS_APP_SUBSUME_FLAG_SCREENSHOTS

Copy the screenshots

AS_APP_SUBSUME_FLAG_REVIEWS

Copy the reviews

AS_APP_SUBSUME_FLAG_CONTENT_RATINGS

Copy the content ratings

AS_APP_SUBSUME_FLAG_PROVIDES

Copy the provides

AS_APP_SUBSUME_FLAG_ICONS

Copy the icons

AS_APP_SUBSUME_FLAG_MIMETYPES

Copy the mimetypes

AS_APP_SUBSUME_FLAG_VETOS

Copy the vetos

AS_APP_SUBSUME_FLAG_LANGUAGES

Copy the languages

AS_APP_SUBSUME_FLAG_NAME

Copy the name

AS_APP_SUBSUME_FLAG_COMMENT

Copy the comment

AS_APP_SUBSUME_FLAG_DEVELOPER_NAME

Copy the developer name

AS_APP_SUBSUME_FLAG_DESCRIPTION

Copy the description

AS_APP_SUBSUME_FLAG_METADATA

Copy the metadata

AS_APP_SUBSUME_FLAG_URL

Copy the urls

AS_APP_SUBSUME_FLAG_KEYWORDS

Copy the keywords

AS_APP_SUBSUME_FLAG_FORMATS

Copy the source file

AS_APP_SUBSUME_FLAG_BRANCH

Copy the branch

AS_APP_SUBSUME_FLAG_ORIGIN

Copy the origin

AS_APP_SUBSUME_FLAG_METADATA_LICENSE

Copy the metadata license

AS_APP_SUBSUME_FLAG_PROJECT_LICENSE

Copy the project license

AS_APP_SUBSUME_FLAG_PROJECT_GROUP

Copy the project group

AS_APP_SUBSUME_FLAG_SOURCE_KIND

Copy the source kind

AS_APP_SUBSUME_FLAG_SUGGESTS


AS_APP_SUBSUME_FLAG_SOURCE_FILE

#define AS_APP_SUBSUME_FLAG_SOURCE_FILE		AS_APP_SUBSUME_FLAG_FORMATS

AS_APP_SUBSUME_FLAG_MERGE

#define             AS_APP_SUBSUME_FLAG_MERGE

AS_APP_SUBSUME_FLAG_PARTIAL

#define AS_APP_SUBSUME_FLAG_PARTIAL AS_APP_SUBSUME_FLAG_MERGE

AS_APP_SUBSUME_FLAG_DEDUPE

#define             AS_APP_SUBSUME_FLAG_DEDUPE

enum AsAppError

typedef enum {
	AS_APP_ERROR_FAILED,
	AS_APP_ERROR_INVALID_TYPE,
} AsAppError;

The error type.

AS_APP_ERROR_FAILED

Generic failure

AS_APP_ERROR_INVALID_TYPE

Invalid type

enum AsAppValidateFlags

typedef enum {
	AS_APP_VALIDATE_FLAG_NONE		= 0, /* Since: 0.1.4 */
	AS_APP_VALIDATE_FLAG_RELAX		= 1, /* Since: 0.1.4 */
	AS_APP_VALIDATE_FLAG_STRICT		= 2, /* Since: 0.1.4 */
	AS_APP_VALIDATE_FLAG_NO_NETWORK		= 4, /* Since: 0.1.4 */
	AS_APP_VALIDATE_FLAG_ALL_APPS		= 8, /* Since: 0.2.6 */
} AsAppValidateFlags;

The flags to use when validating.

AS_APP_VALIDATE_FLAG_NONE

No extra flags to use

AS_APP_VALIDATE_FLAG_RELAX

Relax the checks

AS_APP_VALIDATE_FLAG_STRICT

Make the checks more strict

AS_APP_VALIDATE_FLAG_NO_NETWORK

Do not use the network

AS_APP_VALIDATE_FLAG_ALL_APPS

Check all applications in a store

enum AsAppTrustFlags

typedef enum {
	AS_APP_TRUST_FLAG_COMPLETE		= 0, /* Since: 0.2.2 */
	AS_APP_TRUST_FLAG_CHECK_DUPLICATES = 1, /* Since: 0.2.2 */
	AS_APP_TRUST_FLAG_CHECK_VALID_UTF8 = 2, /* Since: 0.2.2 */
} AsAppTrustFlags;

The flags to use when checking input.

AS_APP_TRUST_FLAG_COMPLETE

Trusted data with no validation

AS_APP_TRUST_FLAG_CHECK_DUPLICATES

Check for duplicates

AS_APP_TRUST_FLAG_CHECK_VALID_UTF8

Check for valid UTF-8

AsAppSourceKind

typedef AsFormatKind AsAppSourceKind;

The source kind.

This has been deprecated since 0.6.9 in favour of using AsFormatKind.


AS_APP_SOURCE_KIND_UNKNOWN

#define AS_APP_SOURCE_KIND_UNKNOWN AS_FORMAT_KIND_UNKNOWN		/* Since: 0.1.4 */

AS_APP_SOURCE_KIND_APPSTREAM

#define AS_APP_SOURCE_KIND_APPSTREAM AS_FORMAT_KIND_APPSTREAM /* Since: 0.1.4 */

AS_APP_SOURCE_KIND_DESKTOP

#define AS_APP_SOURCE_KIND_DESKTOP AS_FORMAT_KIND_DESKTOP		/* Since: 0.1.4 */

AS_APP_SOURCE_KIND_APPDATA

#define AS_APP_SOURCE_KIND_APPDATA AS_FORMAT_KIND_APPDATA		/* Since: 0.1.4 */

AS_APP_SOURCE_KIND_METAINFO

#define AS_APP_SOURCE_KIND_METAINFO AS_FORMAT_KIND_METAINFO		/* Since: 0.1.7 */

AS_APP_SOURCE_KIND_INF

#define AS_APP_SOURCE_KIND_INF		AS_FORMAT_KIND_UNKNOWN		/* Since: 0.3.5 */

enum AsAppKind

typedef enum {
	AS_APP_KIND_UNKNOWN,		/* Since: 0.5.10 */
	AS_APP_KIND_DESKTOP,		/* Since: 0.5.10 */
	AS_APP_KIND_FONT,		/* Since: 0.5.10 */
	AS_APP_KIND_CODEC,		/* Since: 0.5.10 */
	AS_APP_KIND_INPUT_METHOD, /* Since: 0.5.10 */
	AS_APP_KIND_WEB_APP,		/* Since: 0.5.10 */
	AS_APP_KIND_SOURCE,		/* Since: 0.5.10 */
	AS_APP_KIND_ADDON,		/* Since: 0.5.10 */
	AS_APP_KIND_FIRMWARE,		/* Since: 0.5.10 */
	AS_APP_KIND_RUNTIME,		/* Since: 0.5.10 */
	AS_APP_KIND_GENERIC,		/* Since: 0.5.10 */
	AS_APP_KIND_OS_UPDATE,		/* Since: 0.5.10 */
	AS_APP_KIND_OS_UPGRADE,		/* Since: 0.5.10 */
	AS_APP_KIND_SHELL_EXTENSION, /* Since: 0.5.10 */
	AS_APP_KIND_LOCALIZATION, /* Since: 0.5.11 */
	AS_APP_KIND_CONSOLE,		/* Since: 0.6.1 */
	AS_APP_KIND_DRIVER,		/* Since: 0.6.3 */
} AsAppKind;

The component type.

AS_APP_KIND_UNKNOWN

Type invalid or not known

AS_APP_KIND_DESKTOP

A desktop application

AS_APP_KIND_FONT

A font add-on

AS_APP_KIND_CODEC

A codec add-on

AS_APP_KIND_INPUT_METHOD

A input method add-on

AS_APP_KIND_WEB_APP

A web appication

AS_APP_KIND_SOURCE

A software source

AS_APP_KIND_ADDON

An addon, e.g. a plugin

AS_APP_KIND_FIRMWARE

A firmware update

AS_APP_KIND_RUNTIME

Runtime platform

AS_APP_KIND_GENERIC

Generic component

AS_APP_KIND_OS_UPDATE

Operating system update

AS_APP_KIND_OS_UPGRADE

Operating system upgrade

AS_APP_KIND_SHELL_EXTENSION

GNOME Shell extension

AS_APP_KIND_LOCALIZATION

Localization data

AS_APP_KIND_CONSOLE

Console program

AS_APP_KIND_DRIVER

Driver for hardware support

enum AsAppQuirk

typedef enum {
	AS_APP_QUIRK_NONE		= 0,		/* Since: 0.5.10 */
	AS_APP_QUIRK_PROVENANCE		= 1 << 0, /* Since: 0.5.10 */
	AS_APP_QUIRK_COMPULSORY		= 1 << 1, /* Since: 0.5.10 */
	AS_APP_QUIRK_HAS_SOURCE		= 1 << 2, /* Since: 0.5.10 */
	AS_APP_QUIRK_MATCH_ANY_PREFIX = 1 << 3, /* Since: 0.5.12 */
	AS_APP_QUIRK_NEEDS_REBOOT = 1 << 4, /* Since: 0.5.14 */
	AS_APP_QUIRK_NOT_REVIEWABLE = 1 << 5, /* Since: 0.5.14 */
	AS_APP_QUIRK_HAS_SHORTCUT = 1 << 6, /* Since: 0.5.15 */
	AS_APP_QUIRK_NOT_LAUNCHABLE = 1 << 7, /* Since: 0.5.15 */
	AS_APP_QUIRK_NEEDS_USER_ACTION = 1 << 8, /* Since: 0.6.2 */
	AS_APP_QUIRK_IS_PROXY 		= 1 << 9, /* Since: 0.6.6 */
	AS_APP_QUIRK_REMOVABLE_HARDWARE = 1 << 10, /* Since: 0.6.6 */
} AsAppQuirk;

The component attributes.

AS_APP_QUIRK_NONE

No special attributes

AS_APP_QUIRK_PROVENANCE

Installed by OS vendor

AS_APP_QUIRK_COMPULSORY

Cannot be removed

AS_APP_QUIRK_HAS_SOURCE

Has a source to allow staying up-to-date

AS_APP_QUIRK_MATCH_ANY_PREFIX

Matches applications with any prefix

AS_APP_QUIRK_NEEDS_REBOOT

A reboot is required after the action

AS_APP_QUIRK_NOT_REVIEWABLE

The app is not reviewable

AS_APP_QUIRK_HAS_SHORTCUT

The app has a shortcut in the system

AS_APP_QUIRK_NOT_LAUNCHABLE

The app is not launchable (run-able)

AS_APP_QUIRK_NEEDS_USER_ACTION

The component requires some kind of user action

AS_APP_QUIRK_IS_PROXY

Is a proxy app that operates on other applications

AS_APP_QUIRK_REMOVABLE_HARDWARE

The device is unusable whilst the action is performed

enum AsAppState

typedef enum {
	AS_APP_STATE_UNKNOWN,				/* Since: 0.2.2 */
	AS_APP_STATE_INSTALLED,				/* Since: 0.2.2 */
	AS_APP_STATE_AVAILABLE,				/* Since: 0.2.2 */
	AS_APP_STATE_AVAILABLE_LOCAL,			/* Since: 0.2.2 */
	AS_APP_STATE_UPDATABLE,				/* Since: 0.2.2 */
	AS_APP_STATE_UNAVAILABLE,			/* Since: 0.2.2 */
	AS_APP_STATE_QUEUED_FOR_INSTALL,		/* Since: 0.2.2 */
	AS_APP_STATE_INSTALLING,			/* Since: 0.2.2 */
	AS_APP_STATE_REMOVING,				/* Since: 0.2.2 */
	AS_APP_STATE_UPDATABLE_LIVE,			/* Since: 0.5.4 */
	AS_APP_STATE_PURCHASABLE,			/* Since: 0.5.17 */
	AS_APP_STATE_PURCHASING,			/* Since: 0.5.17 */
} AsAppState;

The application state.

AS_APP_STATE_UNKNOWN

Unknown state

AS_APP_STATE_INSTALLED

Application is installed

AS_APP_STATE_AVAILABLE

Application is available

AS_APP_STATE_AVAILABLE_LOCAL

Application is locally available as a file

AS_APP_STATE_UPDATABLE

Application is installed and updatable

AS_APP_STATE_UNAVAILABLE

Application is referenced, but not available

AS_APP_STATE_QUEUED_FOR_INSTALL

Application is queued for install

AS_APP_STATE_INSTALLING

Application is being installed

AS_APP_STATE_REMOVING

Application is being removed

AS_APP_STATE_UPDATABLE_LIVE

Application is installed and updatable live

AS_APP_STATE_PURCHASABLE

Application is available for purchasing

AS_APP_STATE_PURCHASING

Application is being purchased

enum AsAppScope

typedef enum {
	AS_APP_SCOPE_UNKNOWN,				/* Since: 0.6.1 */
	AS_APP_SCOPE_USER,				/* Since: 0.6.1 */
	AS_APP_SCOPE_SYSTEM,				/* Since: 0.6.1 */
} AsAppScope;

The application scope.

AS_APP_SCOPE_UNKNOWN

Unknown scope

AS_APP_SCOPE_USER

User scope

AS_APP_SCOPE_SYSTEM

System scope

enum AsAppMergeKind

typedef enum {
	AS_APP_MERGE_KIND_UNKNOWN,			/* Since: 0.6.1 */
	AS_APP_MERGE_KIND_NONE,				/* Since: 0.6.1 */
	AS_APP_MERGE_KIND_REPLACE,			/* Since: 0.6.1 */
	AS_APP_MERGE_KIND_APPEND,			/* Since: 0.6.1 */
} AsAppMergeKind;

The component merge kind.

AS_APP_MERGE_KIND_UNKNOWN

Unknown merge type

AS_APP_MERGE_KIND_NONE

No merge to be done

AS_APP_MERGE_KIND_REPLACE

Merge components, replacing

AS_APP_MERGE_KIND_APPEND

Merge components, appending

enum AsAppSearchMatch


The token match kind, which we want to be exactly 16 bits for storage reasons.

AS_APP_SEARCH_MATCH_NONE

No token matching

AS_APP_SEARCH_MATCH_MIMETYPE

Use the app mimetypes

AS_APP_SEARCH_MATCH_PKGNAME

Use the app package name

AS_APP_SEARCH_MATCH_DESCRIPTION

Use the app description

AS_APP_SEARCH_MATCH_COMMENT

Use the app comment

AS_APP_SEARCH_MATCH_NAME

Use the app name

AS_APP_SEARCH_MATCH_KEYWORD

Use the app keyword

AS_APP_SEARCH_MATCH_ID

Use the app application ID

AS_APP_ERROR

#define AS_APP_ERROR				as_app_error_quark ()

as_app_new ()

AsApp *             as_app_new                          (void);

Creates a new AsApp.

Returns :

a AsApp. [transfer full]

Since 0.1.0


as_app_error_quark ()

GQuark              as_app_error_quark                  (void);

Returns :

An error quark.

Since 0.1.2


as_app_state_to_string ()

const gchar *       as_app_state_to_string              (AsAppState state);

Converts the enumerated value to an text representation.

state :

the AsAppState.

Returns :

string version of state, or NULL for unknown

Since 0.2.2


as_app_kind_to_string ()

const gchar *       as_app_kind_to_string               (AsAppKind kind);

Converts the enumerated value to an text representation.

kind :

the AsAppKind.

Returns :

string version of kind

Since 0.5.10


as_app_kind_from_string ()

AsAppKind           as_app_kind_from_string             (const gchar *kind);

Converts the text representation to an enumerated value.

kind :

the string.

Returns :

a AsAppKind or AS_APP_KIND_UNKNOWN for unknown

Since 0.5.10


as_app_scope_from_string ()

AsAppScope          as_app_scope_from_string            (const gchar *scope);

Converts the text representation to an enumerated value.

scope :

a source kind string

Returns :

A AsAppScope, e.g. AS_APP_SCOPE_SYSTEM.

Since 0.6.1


as_app_scope_to_string ()

const gchar *       as_app_scope_to_string              (AsAppScope scope);

Converts the enumerated value to an text representation.

scope :

the AsAppScope, e.g. AS_APP_SCOPE_SYSTEM

Returns :

string version of scope, or NULL for unknown

Since 0.6.1


as_app_merge_kind_from_string ()

AsAppMergeKind      as_app_merge_kind_from_string       (const gchar *merge_kind);

Converts the text representation to an enumerated value.

merge_kind :

a source kind string

Returns :

A AsAppMergeKind, e.g. AS_APP_MERGE_KIND_REPLACE.

Since 0.6.1


as_app_merge_kind_to_string ()

const gchar *       as_app_merge_kind_to_string         (AsAppMergeKind merge_kind);

Converts the enumerated value to an text representation.

merge_kind :

the AsAppMergeKind, e.g. AS_APP_MERGE_KIND_REPLACE

Returns :

string version of merge_kind, or NULL for unknown

Since 0.6.1


as_app_get_kind ()

AsAppKind           as_app_get_kind                     (AsApp *app);

Gets the ID kind.

app :

a AsApp instance.

Returns :

enumerated value

Since 0.5.10


as_app_get_scope ()

AsAppScope          as_app_get_scope                    (AsApp *app);

Gets the scope of the application.

app :

a AsApp instance.

Returns :

enumerated value

Since 0.6.1


as_app_get_merge_kind ()

AsAppMergeKind      as_app_get_merge_kind               (AsApp *app);

Gets the merge_kind of the application.

app :

a AsApp instance.

Returns :

enumerated value

Since 0.6.1


as_app_get_state ()

AsAppState          as_app_get_state                    (AsApp *app);

Gets the application state.

app :

a AsApp instance.

Returns :

enumerated value

Since 0.2.2


as_app_get_trust_flags ()

AsAppTrustFlags     as_app_get_trust_flags              (AsApp *app);

Gets the trust flags, i.e. how trusted the incoming data is.

app :

a AsApp instance.

Returns :

bitfield

Since 0.2.2


as_app_get_languages ()

GList *             as_app_get_languages                (AsApp *app);

Get a list of all languages.

app :

a AsApp instance.

Returns :

list of language values. [transfer container][element-type utf8]

Since 0.1.0


as_app_get_addons ()

GPtrArray *         as_app_get_addons                   (AsApp *app);

Gets all the addons the application has.

app :

a AsApp instance.

Returns :

an array. [element-type AsApp][transfer none]

Since 0.1.7


as_app_get_categories ()

GPtrArray *         as_app_get_categories               (AsApp *app);

Get the application categories.

app :

a AsApp instance.

Returns :

an array. [element-type utf8][transfer none]

Since 0.1.0


as_app_get_compulsory_for_desktops ()

GPtrArray *         as_app_get_compulsory_for_desktops  (AsApp *app);

Returns the desktops where this application is compulsory.

app :

a AsApp instance.

Returns :

an array. [element-type utf8][transfer none]

Since 0.1.0


as_app_get_extends ()

GPtrArray *         as_app_get_extends                  (AsApp *app);

Gets the IDs that are extended from the addon.

app :

a AsApp instance.

Returns :

an array. [element-type utf8][transfer none]

Since 0.1.7


as_app_get_keywords ()

GPtrArray *         as_app_get_keywords                 (AsApp *app,
                                                         const gchar *locale);

Gets any keywords the application should match against.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

Returns :

an array, or NULL. [element-type utf8][transfer none]

Since 0.3.0


as_app_get_kudos ()

GPtrArray *         as_app_get_kudos                    (AsApp *app);

Gets any kudos the application has obtained.

app :

a AsApp instance.

Returns :

an array. [element-type utf8][transfer none]

Since 0.2.2


as_app_get_permissions ()

GPtrArray *         as_app_get_permissions              (AsApp *app);

Gets any permissions the application has obtained.

app :

a AsApp instance.

Returns :

an array. [element-type utf8][transfer none]

Since 0.3.5


as_app_get_formats ()

GPtrArray *         as_app_get_formats                  (AsApp *app);

Gets any formats that make up the application.

app :

a AsApp instance.

Returns :

an array. [element-type utf8][transfer none]

Since 0.6.9


as_app_get_mimetypes ()

GPtrArray *         as_app_get_mimetypes                (AsApp *app);

Gets any mimetypes the application will register.

app :

a AsApp instance.

Returns :

an array. [transfer none][element-type utf8]

Since 0.2.0


as_app_get_pkgnames ()

GPtrArray *         as_app_get_pkgnames                 (AsApp *app);

Gets the package names (if any) for the application.

app :

a AsApp instance.

Returns :

an array. [element-type utf8][transfer none]

Since 0.1.0


as_app_get_architectures ()

GPtrArray *         as_app_get_architectures            (AsApp *app);

Gets the supported architectures for the application, or an empty list if all architectures are supported.

app :

a AsApp instance.

Returns :

an array. [element-type utf8][transfer none]

Since 0.1.1


as_app_get_releases ()

GPtrArray *         as_app_get_releases                 (AsApp *app);

Gets all the releases the application has had.

app :

a AsApp instance.

Returns :

an array. [element-type AsRelease][transfer none]

Since 0.1.0


as_app_get_provides ()

GPtrArray *         as_app_get_provides                 (AsApp *app);

Gets all the provides the application has.

app :

a AsApp instance.

Returns :

an array. [element-type AsProvide][transfer none]

Since 0.1.6


as_app_get_screenshots ()

GPtrArray *         as_app_get_screenshots              (AsApp *app);

Gets any screenshots the application has defined.

app :

a AsApp instance.

Returns :

an array. [element-type AsScreenshot][transfer none]

Since 0.1.0


as_app_get_reviews ()

GPtrArray *         as_app_get_reviews                  (AsApp *app);

Gets any reviews the application has defined.

app :

a AsApp instance.

Returns :

an array. [element-type AsScreenshot][transfer none]

Since 0.6.1


as_app_get_content_ratings ()

GPtrArray *         as_app_get_content_ratings          (AsApp *app);

Gets any content_ratings the application has defined.

app :

a AsApp instance.

Returns :

an array. [element-type AsContentRating][transfer none]

Since 0.5.12


as_app_get_icons ()

GPtrArray *         as_app_get_icons                    (AsApp *app);

Gets any icons the application has defined.

app :

a AsApp instance.

Returns :

an array. [element-type AsIcon][transfer none]

Since 0.3.1


as_app_get_bundles ()

GPtrArray *         as_app_get_bundles                  (AsApp *app);

Gets any bundles the application has defined.

app :

a AsApp instance.

Returns :

an array. [element-type AsBundle][transfer none]

Since 0.3.5


as_app_get_translations ()

GPtrArray *         as_app_get_translations             (AsApp *app);

Gets any translations the application has defined.

app :

a AsApp instance.

Returns :

an array. [element-type AsTranslation][transfer none]

Since 0.5.8


as_app_get_suggests ()

GPtrArray *         as_app_get_suggests                 (AsApp *app);

Gets any suggests the application has defined.

app :

a AsApp instance.

Returns :

an array. [element-type AsSuggest][transfer none]

Since 0.6.1


as_app_get_requires ()

GPtrArray *         as_app_get_requires                 (AsApp *app);

Gets any requires the application has defined. A rquirement could be that a firmware version has to be below a defined version or that another application is required to be installed.

app :

a AsApp instance.

Returns :

an array. [element-type AsRequire][transfer none]

Since 0.6.7


as_app_get_names ()

GHashTable *        as_app_get_names                    (AsApp *app);

Gets the names set for the application.

app :

a AsApp instance.

Returns :

hash table of names. [transfer none]

Since 0.1.6


as_app_get_comments ()

GHashTable *        as_app_get_comments                 (AsApp *app);

Gets the comments set for the application.

app :

a AsApp instance.

Returns :

hash table of comments. [transfer none]

Since 0.1.6


as_app_get_developer_names ()

GHashTable *        as_app_get_developer_names          (AsApp *app);

Gets the developer_names set for the application.

app :

a AsApp instance.

Returns :

hash table of developer_names. [transfer none]

Since 0.1.8


as_app_get_metadata ()

GHashTable *        as_app_get_metadata                 (AsApp *app);

Gets the metadata set for the application.

app :

a AsApp instance.

Returns :

hash table of metadata. [transfer none]

Since 0.1.6


as_app_get_descriptions ()

GHashTable *        as_app_get_descriptions             (AsApp *app);

Gets the descriptions set for the application.

app :

a AsApp instance.

Returns :

hash table of descriptions. [transfer none]

Since 0.1.6


as_app_get_urls ()

GHashTable *        as_app_get_urls                     (AsApp *app);

Gets the URLs set for the application.

app :

a AsApp instance.

Returns :

hash table of URLs. [transfer none]

Since 0.1.0


as_app_get_vetos ()

GPtrArray *         as_app_get_vetos                    (AsApp *app);

Gets the list of vetos.

app :

A AsApp

Returns :

A list of vetos. [transfer none][element-type utf8]

Since 0.2.5


as_app_get_icon_path ()

const gchar *       as_app_get_icon_path                (AsApp *app);

Gets the application icon path.

app :

a AsApp instance.

Returns :

string, or NULL if unset

Since 0.1.0


as_app_get_id_filename ()

const gchar *       as_app_get_id_filename              (AsApp *app);

Returns a filename which represents the applications ID, e.g. "gimp.desktop" becomes "gimp" and is used for cache directories.

app :

a AsApp instance.

Returns :

A utf8 filename

Since 0.3.0


as_app_get_id ()

const gchar *       as_app_get_id                       (AsApp *app);

Gets the full ID value.

app :

a AsApp instance.

Returns :

the ID, e.g. "org.gnome.Software.desktop"

Since 0.1.0


as_app_get_id_no_prefix ()

const gchar *       as_app_get_id_no_prefix             (AsApp *app);

Gets the full ID value, stripping any prefix.

app :

a AsApp instance.

Returns :

the ID, e.g. "org.gnome.Software.desktop"

Since 0.5.12


as_app_get_unique_id ()

const gchar *       as_app_get_unique_id                (AsApp *app);

Gets the unique ID value to represent the component.

app :

a AsApp instance.

Returns :

the unique ID, e.g. `system/package/fedora/desktop/gimp.desktop/master`

Since 0.6.1


as_app_get_pkgname_default ()

const gchar *       as_app_get_pkgname_default          (AsApp *app);

Gets the default package name.

app :

a AsApp instance.

Returns :

string, or NULL if unset

Since 0.2.0


as_app_get_source_pkgname ()

const gchar *       as_app_get_source_pkgname           (AsApp *app);

Gets the source package name that produced the binary package. Only source packages producing more than one binary package will have this entry set.

app :

a AsApp instance.

Returns :

string, or NULL if unset

Since 0.2.4


as_app_get_origin ()

const gchar *       as_app_get_origin                   (AsApp *app);

Gets the application origin.

app :

a AsApp instance.

Returns :

the origin string, or NULL if unset

Since 0.3.2


as_app_get_project_group ()

const gchar *       as_app_get_project_group            (AsApp *app);

Gets an application project group.

app :

a AsApp instance.

Returns :

string, or NULL if unset

Since 0.1.0


as_app_get_project_license ()

const gchar *       as_app_get_project_license          (AsApp *app);

Gets the application project license.

app :

a AsApp instance.

Returns :

string, or NULL if unset

Since 0.1.0


as_app_get_metadata_license ()

const gchar *       as_app_get_metadata_license         (AsApp *app);

Gets the application project license.

app :

a AsApp instance.

Returns :

string, or NULL if unset

Since 0.1.4


as_app_get_update_contact ()

const gchar *       as_app_get_update_contact           (AsApp *app);

Gets the application upstream update contact email.

app :

a AsApp instance.

Returns :

string, or NULL if unset

Since 0.1.4


as_app_get_branch ()

const gchar *       as_app_get_branch                   (AsApp *app);

Gets the branch for the application.

app :

a AsApp instance.

Returns :

string, or NULL if unset

Since 0.6.1


as_app_get_name ()

const gchar *       as_app_get_name                     (AsApp *app,
                                                         const gchar *locale);

Gets the application name for a specific locale.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

Returns :

string, or NULL if unset

Since 0.1.0


as_app_get_comment ()

const gchar *       as_app_get_comment                  (AsApp *app,
                                                         const gchar *locale);

Gets the application summary for a specific locale.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

Returns :

string, or NULL if unset

Since 0.1.0


as_app_get_developer_name ()

const gchar *       as_app_get_developer_name           (AsApp *app,
                                                         const gchar *locale);

Gets the application developer name for a specific locale.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

Returns :

string, or NULL if unset

Since 0.1.8


as_app_get_description ()

const gchar *       as_app_get_description              (AsApp *app,
                                                         const gchar *locale);

Gets the application description markup for a specific locale.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

Returns :

string, or NULL if unset

Since 0.1.0


as_app_get_priority ()

gint                as_app_get_priority                 (AsApp *app);

Gets the application priority. Larger values trump smaller values.

app :

a AsApp instance.

Returns :

priority value

Since 0.1.0


as_app_get_language ()

gint                as_app_get_language                 (AsApp *app,
                                                         const gchar *locale);

Gets the language coverage for the specific language.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

Returns :

a percentage value where 0 is unspecified, or -1 for not found

Since 0.1.0


as_app_get_metadata_item ()

const gchar *       as_app_get_metadata_item            (AsApp *app,
                                                         const gchar *key);

Gets some metadata item.

app :

a AsApp instance.

key :

the metadata key.

Returns :

string, or NULL if unset

Since 0.1.0


as_app_get_url_item ()

const gchar *       as_app_get_url_item                 (AsApp *app,
                                                         AsUrlKind url_kind);

Gets a URL.

app :

a AsApp instance.

url_kind :

the URL kind, e.g. AS_URL_KIND_HOMEPAGE.

Returns :

string, or NULL if unset

Since 0.1.0


as_app_has_category ()

gboolean            as_app_has_category                 (AsApp *app,
                                                         const gchar *category);

Searches the category list for a specific item.

app :

a AsApp instance.

category :

a category string, e.g. "DesktopSettings"

Returns :

TRUE if the application has got the specified category

Since 0.1.5


as_app_has_kudo ()

gboolean            as_app_has_kudo                     (AsApp *app,
                                                         const gchar *kudo);

Searches the kudo list for a specific item.

app :

a AsApp instance.

kudo :

a kudo string, e.g. "SearchProvider"

Returns :

TRUE if the application has got the specified kudo

Since 0.2.2


as_app_has_kudo_kind ()

gboolean            as_app_has_kudo_kind                (AsApp *app,
                                                         AsKudoKind kudo);

Searches the kudo list for a specific item.

app :

a AsApp instance.

kudo :

a AsKudoKind, e.g. AS_KUDO_KIND_SEARCH_PROVIDER

Returns :

TRUE if the application has got the specified kudo

Since 0.2.2


as_app_has_permission ()

gboolean            as_app_has_permission               (AsApp *app,
                                                         const gchar *permission);

Searches the permission list for a specific item.

app :

a AsApp instance.

permission :

a permission string, e.g. "Network"

Returns :

TRUE if the application has got the specified permission

Since 0.3.5


as_app_get_format_default ()

AsFormat *          as_app_get_format_default           (AsApp *app);

Returns the default format.

app :

a AsApp instance.

Returns :

A AsFormat, or NULL if not found. [transfer none]

Since 0.6.9


as_app_get_format_by_kind ()

AsFormat *          as_app_get_format_by_kind           (AsApp *app,
                                                         AsFormatKind kind);

Searches the list of formats for a specific format kind.

app :

a AsApp instance.

kind :

a AsFormatKind, e.g. AS_FORMAT_KIND_APPDATA

Returns :

A AsFormat, or NULL if not found. [transfer none]

Since 0.6.9


as_app_get_format_by_filename ()

AsFormat *          as_app_get_format_by_filename       (AsApp *app,
                                                         const gchar *filename);

Searches the list of formats for a specific filename.

app :

a AsApp instance.

filename :

a filename, e.g. "/home/hughsie/dave.desktop"

Returns :

A AsFormat, or NULL if not found. [transfer none]

Since 0.6.9


as_app_has_compulsory_for_desktop ()

gboolean            as_app_has_compulsory_for_desktop   (AsApp *app,
                                                         const gchar *desktop);

Searches the compulsory for desktop list for a specific item.

app :

a AsApp instance.

desktop :

a desktop string, e.g. "GNOME"

Returns :

TRUE if the application is compulsory for a specific desktop

Since 0.5.12


as_app_has_quirk ()

gboolean            as_app_has_quirk                    (AsApp *app,
                                                         AsAppQuirk quirk);

Queries to see if an application has a specific attribute.

app :

a AsApp instance.

quirk :

the AsAppQuirk, e.g. AS_APP_QUIRK_PROVENANCE

Returns :

TRUE if the application has the attribute

Since 0.5.10


as_app_set_id ()

void                as_app_set_id                       (AsApp *app,
                                                         const gchar *id);

Sets a new application ID. Any invalid characters will be automatically replaced.

app :

a AsApp instance.

id :

the new _full_ application ID, e.g. "org.gnome.Software.desktop".

Since 0.1.0


as_app_set_kind ()

void                as_app_set_kind                     (AsApp *app,
                                                         AsAppKind kind);

Sets the application kind.

app :

a AsApp instance.

kind :

the AsAppKind.

Since 0.5.10


as_app_set_scope ()

void                as_app_set_scope                    (AsApp *app,
                                                         AsAppScope scope);

Sets the scope of the application.

app :

a AsApp instance.

scope :

the AsAppScope.

Since 0.6.1


as_app_set_merge_kind ()

void                as_app_set_merge_kind               (AsApp *app,
                                                         AsAppMergeKind merge_kind);

Sets the merge kind of the application.

app :

a AsApp instance.

merge_kind :

the AsAppMergeKind.

Since 0.6.1


as_app_set_state ()

void                as_app_set_state                    (AsApp *app,
                                                         AsAppState state);

Sets the application state.

app :

a AsApp instance.

state :

the AsAppState.

Since 0.2.2


as_app_set_trust_flags ()

void                as_app_set_trust_flags              (AsApp *app,
                                                         AsAppTrustFlags trust_flags);

Sets the check flags, where AS_APP_TRUST_FLAG_COMPLETE is completely trusted input.

app :

a AsApp instance.

trust_flags :

the AsAppTrustFlags.

Since 0.2.2


as_app_set_origin ()

void                as_app_set_origin                   (AsApp *app,
                                                         const gchar *origin);

Sets the application origin.

app :

a AsApp instance.

origin :

the origin, e.g. "fedora-21"

Since 0.3.2


as_app_set_project_group ()

void                as_app_set_project_group            (AsApp *app,
                                                         const gchar *project_group);

Set any project affiliation.

app :

a AsApp instance.

project_group :

the project group, e.g. "GNOME".

Since 0.1.0


as_app_set_project_license ()

void                as_app_set_project_license          (AsApp *app,
                                                         const gchar *project_license);

Set the project license.

app :

a AsApp instance.

project_license :

the project license string.

Since 0.1.0


as_app_set_metadata_license ()

void                as_app_set_metadata_license         (AsApp *app,
                                                         const gchar *metadata_license);

Set the project license.

app :

a AsApp instance.

metadata_license :

the project license string.

Since 0.1.4


as_app_set_source_pkgname ()

void                as_app_set_source_pkgname           (AsApp *app,
                                                         const gchar *source_pkgname);

Set the project license.

app :

a AsApp instance.

source_pkgname :

the project license string.

Since 0.2.4


as_app_set_update_contact ()

void                as_app_set_update_contact           (AsApp *app,
                                                         const gchar *update_contact);

Set the project license.

app :

a AsApp instance.

update_contact :

the project license string.

Since 0.1.4


as_app_set_icon_path ()

void                as_app_set_icon_path                (AsApp *app,
                                                         const gchar *icon_path);

Sets the icon path, where local icons would be found.

app :

a AsApp instance.

icon_path :

the local path.

Since 0.1.0


as_app_set_name ()

void                as_app_set_name                     (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *name);

Sets the application name for a specific locale.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

name :

the application name.

Since 0.1.0


as_app_set_comment ()

void                as_app_set_comment                  (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *comment);

Sets the application summary for a specific locale.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

comment :

the application summary.

Since 0.1.0


as_app_set_developer_name ()

void                as_app_set_developer_name           (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *developer_name);

Sets the application developer name for a specific locale.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

developer_name :

the application developer name.

Since 0.1.0


as_app_set_description ()

void                as_app_set_description              (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *description);

Sets the application descrption markup for a specific locale.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

description :

the application description.

Since 0.1.0


as_app_set_branch ()

void                as_app_set_branch                   (AsApp *app,
                                                         const gchar *branch);

Set the branch that the instance was sourced from.

app :

a AsApp instance.

branch :

the branch, e.g. "master" or "3-16".

Since 0.6.1


as_app_set_priority ()

void                as_app_set_priority                 (AsApp *app,
                                                         gint priority);

Sets the application priority, where 0 is default and positive numbers are better than negative numbers.

app :

a AsApp instance.

priority :

the priority.

Since 0.1.0


as_app_add_category ()

void                as_app_add_category                 (AsApp *app,
                                                         const gchar *category);

Adds a menu category to the application.

app :

a AsApp instance.

category :

the category.

Since 0.1.0


as_app_add_keyword ()

void                as_app_add_keyword                  (AsApp *app,
                                                         const gchar *locale,
                                                         const gchar *keyword);

Add a keyword the application should match against.

app :

a AsApp instance.

locale :

the locale, or NULL. e.g. "en_GB"

keyword :

the keyword.

Since 0.3.0


as_app_add_kudo ()

void                as_app_add_kudo                     (AsApp *app,
                                                         const gchar *kudo);

Add a kudo the application has obtained.

app :

a AsApp instance.

kudo :

the kudo.

Since 0.2.2


as_app_add_kudo_kind ()

void                as_app_add_kudo_kind                (AsApp *app,
                                                         AsKudoKind kudo_kind);

Add a kudo the application has obtained.

app :

a AsApp instance.

kudo_kind :

the AsKudoKind.

Since 0.2.2


as_app_add_permission ()

void                as_app_add_permission               (AsApp *app,
                                                         const gchar *permission);

Add a permission the application has obtained.

app :

a AsApp instance.

permission :

the permission.

Since 0.3.5


as_app_add_format ()

void                as_app_add_format                   (AsApp *app,
                                                         AsFormat *format);

Add a format the application has been built from.

app :

a AsApp instance.

format :

the AsFormat.

Since 0.6.9


as_app_remove_format ()

void                as_app_remove_format                (AsApp *app,
                                                         AsFormat *format);

Removes a format the application has been built from.

app :

a AsApp instance.

format :

the AsFormat.

Since 0.6.9


as_app_add_mimetype ()

void                as_app_add_mimetype                 (AsApp *app,
                                                         const gchar *mimetype);

Adds a mimetype the application can process.

app :

a AsApp instance.

mimetype :

the mimetype.

Since 0.1.0


as_app_add_pkgname ()

void                as_app_add_pkgname                  (AsApp *app,
                                                         const gchar *pkgname);

Adds a package name to an application.

app :

a AsApp instance.

pkgname :

the package name.

Since 0.1.0


as_app_add_arch ()

void                as_app_add_arch                     (AsApp *app,
                                                         const gchar *arch);

Adds a package name to an application.

app :

a AsApp instance.

arch :

the package name.

Since 0.1.1


as_app_add_release ()

void                as_app_add_release                  (AsApp *app,
                                                         AsRelease *release);

Adds a release to an application.

app :

a AsApp instance.

release :

a AsRelease instance.

Since 0.1.0


as_app_add_provide ()

void                as_app_add_provide                  (AsApp *app,
                                                         AsProvide *provide);

Adds a provide to an application.

app :

a AsApp instance.

provide :

a AsProvide instance.

Since 0.1.6


as_app_add_screenshot ()

void                as_app_add_screenshot               (AsApp *app,
                                                         AsScreenshot *screenshot);

Adds a screenshot to an application.

app :

a AsApp instance.

screenshot :

a AsScreenshot instance.

Since 0.1.0


as_app_add_review ()

void                as_app_add_review                   (AsApp *app,
                                                         AsReview *review);

Adds a review to an application.

app :

a AsApp instance.

review :

a AsReview instance.

Since 0.6.1


as_app_add_content_rating ()

void                as_app_add_content_rating           (AsApp *app,
                                                         AsContentRating *content_rating);

Adds a content_rating to an application.

app :

a AsApp instance.

content_rating :

a AsContentRating instance.

Since 0.5.12


as_app_add_icon ()

void                as_app_add_icon                     (AsApp *app,
                                                         AsIcon *icon);

Adds a icon to an application.

app :

a AsApp instance.

icon :

a AsIcon instance.

Since 0.3.1


as_app_add_bundle ()

void                as_app_add_bundle                   (AsApp *app,
                                                         AsBundle *bundle);

Adds a bundle to an application.

app :

a AsApp instance.

bundle :

a AsBundle instance.

Since 0.3.5


as_app_add_translation ()

void                as_app_add_translation              (AsApp *app,
                                                         AsTranslation *translation);

Adds a translation to an application.

app :

a AsApp instance.

translation :

a AsTranslation instance.

Since 0.5.8


as_app_add_suggest ()

void                as_app_add_suggest                  (AsApp *app,
                                                         AsSuggest *suggest);

Adds a suggest to an application.

app :

a AsApp instance.

suggest :

a AsSuggest instance.

Since 0.6.1


as_app_add_require ()

void                as_app_add_require                  (AsApp *app,
                                                         AsRequire *require);

Adds a require to an application.

app :

a AsApp instance.

require :

a AsRequire instance.

Since 0.6.7


as_app_add_language ()

void                as_app_add_language                 (AsApp *app,
                                                         gint percentage,
                                                         const gchar *locale);

Adds a language to the application.

app :

a AsApp instance.

percentage :

the percentage completion of the translation, or 0 for unknown

locale :

the locale, or NULL. e.g. "en_GB"

Since 0.1.0


as_app_add_compulsory_for_desktop ()

void                as_app_add_compulsory_for_desktop   (AsApp *app,
                                                         const gchar *compulsory_for_desktop);

Adds a desktop that requires this application to be installed.

app :

a AsApp instance.

compulsory_for_desktop :

the desktop string, e.g. "GNOME".

Since 0.1.0


as_app_add_url ()

void                as_app_add_url                      (AsApp *app,
                                                         AsUrlKind url_kind,
                                                         const gchar *url);

Adds some URL data to the application.

app :

a AsApp instance.

url_kind :

the URL kind, e.g. AS_URL_KIND_HOMEPAGE

url :

the full URL.

Since 0.1.0


as_app_add_metadata ()

void                as_app_add_metadata                 (AsApp *app,
                                                         const gchar *key,
                                                         const gchar *value);

Adds a metadata entry to the application.

app :

a AsApp instance.

key :

the metadata key.

value :

the value to store.

Since 0.1.0


as_app_remove_metadata ()

void                as_app_remove_metadata              (AsApp *app,
                                                         const gchar *key);

Removes a metadata item from the application.

app :

a AsApp instance.

key :

the metadata key.

Since 0.1.0


as_app_add_addon ()

void                as_app_add_addon                    (AsApp *app,
                                                         AsApp *addon);

Adds a addon to an application.

app :

a AsApp instance.

addon :

a AsApp instance.

Since 0.1.7


as_app_add_extends ()

void                as_app_add_extends                  (AsApp *app,
                                                         const gchar *extends);

Adds a parent ID to the application.

app :

a AsApp instance.

extends :

the full ID, e.g. "eclipse.desktop".

Since 0.1.7


as_app_add_quirk ()

void                as_app_add_quirk                    (AsApp *app,
                                                         AsAppQuirk quirk);

Adds a specific attribute to an application.

app :

a AsApp instance.

quirk :

the AsAppQuirk, e.g. AS_APP_QUIRK_PROVENANCE

Since 0.5.10


as_app_validate ()

GPtrArray *         as_app_validate                     (AsApp *app,
                                                         AsAppValidateFlags flags,
                                                         GError **error);

Validates data in the instance for style and consitency.

app :

a AsApp instance.

flags :

the AsAppValidateFlags to use, e.g. AS_APP_VALIDATE_FLAG_NONE

error :

A GError or NULL.

Returns :

A list of problems, or NULL. [transfer container][element-type AsProblem]

Since 0.1.4


as_app_subsume ()

void                as_app_subsume                      (AsApp *app,
                                                         AsApp *donor);

Copies information from the donor to the application object.

app :

a AsApp instance.

donor :

the donor.

Since 0.1.0


as_app_subsume_full ()

void                as_app_subsume_full                 (AsApp *app,
                                                         AsApp *donor,
                                                         AsAppSubsumeFlags flags);

Copies information from the donor to the application object.

app :

a AsApp instance.

donor :

the donor.

flags :

any optional flags, e.g. AS_APP_SUBSUME_FLAG_NO_OVERWRITE

Since 0.1.4


as_app_add_veto ()

void                as_app_add_veto                     (AsApp *app,
                                                         const gchar *fmt,
                                                         ...);

Adds a reason to not include the application in the metadata.

app :

A AsApp

fmt :

format string

... :

varargs

Since 0.2.5


as_app_remove_veto ()

void                as_app_remove_veto                  (AsApp *app,
                                                         const gchar *description);

Removes a reason to not include the application in the metadata.

app :

A AsApp

description :

veto string

Since 0.4.1


as_app_search_matches_all ()

guint               as_app_search_matches_all           (AsApp *app,
                                                         gchar **search);

Searches application data for all the specific keywords.

app :

a AsApp instance.

search :

the search terms.

Returns :

a match scrore, where 0 is no match and larger numbers are better matches. It's probably a good idea to use as_utils_search_tokenize() to populate search as very short or common keywords will return a lot of matches.

Since 0.1.3


as_app_search_matches ()

guint               as_app_search_matches               (AsApp *app,
                                                         const gchar *search);

Searches application data for a specific keyword.

app :

a AsApp instance.

search :

the search term.

Returns :

a match scrore, where 0 is no match and 100 is the best match.

Since 0.1.0


as_app_parse_file ()

gboolean            as_app_parse_file                   (AsApp *app,
                                                         const gchar *filename,
                                                         AsAppParseFlags flags,
                                                         GError **error);

Parses a desktop or AppData file and populates the application state.

Applications that are not suitable for the store will have vetos added.

app :

a AsApp instance.

filename :

file to load.

flags :

AsAppParseFlags, e.g. AS_APP_PARSE_FLAG_USE_HEURISTICS

error :

A GError or NULL.

Returns :

TRUE for success

Since 0.1.2


as_app_to_file ()

gboolean            as_app_to_file                      (AsApp *app,
                                                         GFile *file,
                                                         GCancellable *cancellable,
                                                         GError **error);

Exports a DOM tree to an XML file.

app :

a AsApp instance.

file :

a GFile

cancellable :

A GCancellable, or NULL

error :

A GError or NULL

Returns :

TRUE for success

Since 0.2.0


as_app_get_content_rating ()

AsContentRating *   as_app_get_content_rating           (AsApp *app,
                                                         const gchar *kind);

Gets a content ratings the application has defined of a specific type.

app :

a AsApp instance.

kind :

a ratings kind, e.g. "oars-1.0"

Returns :

a AsContentRating or NULL for not found. [transfer none]

Since 0.5.12


as_app_get_icon_default ()

AsIcon *            as_app_get_icon_default             (AsApp *app);

Finds the default icon.

app :

A AsApp

Returns :

a AsIcon, or NULL. [transfer none]

Since 0.3.1


as_app_get_icon_for_size ()

AsIcon *            as_app_get_icon_for_size            (AsApp *app,
                                                         guint width,
                                                         guint height);

Finds an icon of a specific size.

app :

A AsApp

width :

Size in pixels

height :

Size in pixels

Returns :

a AsIcon, or NULL. [transfer none]

Since 0.3.1


as_app_get_bundle_default ()

AsBundle *          as_app_get_bundle_default           (AsApp *app);

Finds the default bundle.

app :

A AsApp

Returns :

a AsBundle, or NULL. [transfer none]

Since 0.3.5


as_app_get_release ()

AsRelease *         as_app_get_release                  (AsApp *app,
                                                         const gchar *version);

Gets a specific release from the application.

app :

a AsApp instance.

version :

a version string

Returns :

a release, or NULL. [transfer none]

Since 0.3.5


as_app_get_release_default ()

AsRelease *         as_app_get_release_default          (AsApp *app);

Gets the default (newest) release from the application.

app :

a AsApp instance.

Returns :

a release, or NULL. [transfer none]

Since 0.3.5


as_app_get_require_by_value ()

AsRequire *         as_app_get_require_by_value         (AsApp *app,
                                                         AsRequireKind kind,
                                                         const gchar *value);

Gets a specific requirement for the application.

app :

a AsApp instance.

kind :

a AsRequireKind, e.g. AS_REQUIRE_KIND_FIRMWARE

value :

a string, or NULL, e.g. `bootloader`

Returns :

A AsRequire, or NULL for not found. [transfer none]

Since 0.6.7


as_app_convert_icons ()

gboolean            as_app_convert_icons                (AsApp *app,
                                                         AsIconKind kind,
                                                         GError **error);

Converts all the icons in the application to a specific kind.

app :

A AsApp.

kind :

the AsIconKind, e.g. AS_ICON_KIND_EMBEDDED.

error :

A GError or NULL

Returns :

TRUE for success

Since 0.3.1


as_app_equal ()

gboolean            as_app_equal                        (AsApp *app1,
                                                         AsApp *app2);

Compare one application with another for equality using the following properties:

1. scope, e.g. `system` or `user` 2. bundle kind, e.g. `package` or `flatpak` 3. origin, e.g. `fedora` or `gnome-apps-nightly` 4. kind, e.g. `app` or `runtime` 5. AppStream ID, e.g. `gimp.desktop` 6. branch, e.g. `stable` or `master`

app1 :

a AsApp instance.

app2 :

another AsApp instance.

Returns :

TRUE if the applications are equal

Since 0.6.1


as_app_get_id_kind ()

AsIdKind            as_app_get_id_kind                  (AsApp *app);

Gets the ID kind.

app :

a AsApp instance.

Returns :

enumerated value

Since 0.1.0


as_app_set_id_kind ()

void                as_app_set_id_kind                  (AsApp *app,
                                                         AsIdKind id_kind);

Sets the application kind.

app :

a AsApp instance.

id_kind :

the AsAppKind.

Since 0.1.0


as_app_set_source_file ()

void                as_app_set_source_file              (AsApp *app,
                                                         const gchar *source_file);

Set the file that the instance was sourced from.

app :

a AsApp instance.

source_file :

the filename.

Since 0.2.2


as_app_get_source_file ()

const gchar *       as_app_get_source_file              (AsApp *app);

Gets the default source filename the instance was populated from.

app :

a AsApp instance.

Returns :

string, or NULL if unset

Since 0.2.2


as_app_get_source_kind ()

AsFormatKind        as_app_get_source_kind              (AsApp *app);

Gets the source kind, i.e. where the AsApp came from.

app :

a AsApp instance.

Returns :

enumerated value

Since 0.1.4


as_app_set_source_kind ()

void                as_app_set_source_kind              (AsApp *app,
                                                         AsFormatKind source_kind);

Sets the source kind.

app :

a AsApp instance.

source_kind :

the AsFormatKind.

Since 0.1.4


as_app_source_kind_from_string ()

AsFormatKind        as_app_source_kind_from_string      (const gchar *source_kind);

Converts the text representation to an enumerated value.

source_kind :

a source kind string

Returns :

A AsFormatKind, e.g. AS_FORMAT_KIND_APPSTREAM.

Since 0.2.2


as_app_source_kind_to_string ()

const gchar *       as_app_source_kind_to_string        (AsFormatKind source_kind);

Converts the enumerated value to an text representation.

source_kind :

the AsFormatKind.

Returns :

string version of source_kind, or NULL for unknown

Since 0.2.2


as_app_guess_source_kind ()

AsFormatKind        as_app_guess_source_kind            (const gchar *filename);

Guesses the source kind based from the filename.

filename :

a file name

Returns :

A AsFormatKind, e.g. AS_FORMAT_KIND_APPSTREAM.

Since 0.1.8