1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
* vi:set noexpandtab tabstop=8 shiftwidth=8:
*
* Copyright (C) 2016 Joaquim Rocha <jrocha@endlessm.com>
* Copyright (C) 2016-2018 Richard Hughes <richard@hughsie.com>
*
* SPDX-License-Identifier: GPL-2.0+
*/
#pragma once
#include <gnome-software.h>
#include <flatpak.h>
G_BEGIN_DECLS
#define GS_TYPE_FLATPAK (gs_flatpak_get_type ())
G_DECLARE_FINAL_TYPE (GsFlatpak, gs_flatpak, GS, FLATPAK, GObject)
typedef enum {
GS_FLATPAK_FLAG_NONE = 0,
GS_FLATPAK_FLAG_IS_TEMPORARY = 1 << 0,
GS_FLATPAK_FLAG_LAST /*< skip >*/
} GsFlatpakFlags;
GsFlatpak *gs_flatpak_new (GsPlugin *plugin,
FlatpakInstallation *installation,
GsFlatpakFlags flags);
FlatpakInstallation *gs_flatpak_get_installation (GsFlatpak *self,
gboolean interactive);
GsApp *gs_flatpak_ref_to_app (GsFlatpak *self,
const gchar *ref,
gboolean interactive,
GCancellable *cancellable,
GError **error);
AsComponentScope gs_flatpak_get_scope (GsFlatpak *self);
const gchar *gs_flatpak_get_id (GsFlatpak *self);
gboolean gs_flatpak_setup (GsFlatpak *self,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_add_installed (GsFlatpak *self,
GsAppList *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_add_sources (GsFlatpak *self,
GsAppList *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_add_updates (GsFlatpak *self,
GsAppList *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_refresh (GsFlatpak *self,
guint64 cache_age_secs,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_refine_app (GsFlatpak *self,
GsApp *app,
GsPluginRefineFlags flags,
gboolean interactive,
GCancellable *cancellable,
GError **error);
void gs_flatpak_refine_addons (GsFlatpak *self,
GsApp *parent_app,
GsPluginRefineFlags flags,
GsAppState state,
gboolean interactive,
GCancellable *cancellable);
gboolean gs_flatpak_refine_app_state (GsFlatpak *self,
GsApp *app,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_refine_wildcard (GsFlatpak *self,
GsApp *app,
GsAppList *list,
GsPluginRefineFlags flags,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_launch (GsFlatpak *self,
GsApp *app,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_app_remove_source (GsFlatpak *self,
GsApp *app,
gboolean is_remove,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_app_install_source (GsFlatpak *self,
GsApp *app,
gboolean is_install,
gboolean interactive,
GCancellable *cancellable,
GError **error);
GsApp *gs_flatpak_file_to_app_ref (GsFlatpak *self,
GFile *file,
gboolean unrefined,
gboolean interactive,
GCancellable *cancellable,
GError **error);
GsApp *gs_flatpak_file_to_app_bundle (GsFlatpak *self,
GFile *file,
gboolean unrefined,
gboolean interactive,
GCancellable *cancellable,
GError **error);
GsApp *gs_flatpak_find_source_by_url (GsFlatpak *self,
const gchar *name,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_search (GsFlatpak *self,
const gchar * const *values,
GsAppList *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_search_developer_apps(GsFlatpak *self,
const gchar * const *values,
GsAppList *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_refine_category_sizes(GsFlatpak *self,
GPtrArray *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_add_category_apps (GsFlatpak *self,
GsCategory *category,
GsAppList *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_add_popular (GsFlatpak *self,
GsAppList *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_add_featured (GsFlatpak *self,
GsAppList *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_add_deployment_featured
(GsFlatpak *self,
GsAppList *list,
gboolean interactive,
const gchar *const *deployments,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_add_alternates (GsFlatpak *self,
GsApp *app,
GsAppList *list,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_add_recent (GsFlatpak *self,
GsAppList *list,
guint64 age,
gboolean interactive,
GCancellable *cancellable,
GError **error);
gboolean gs_flatpak_url_to_app (GsFlatpak *self,
GsAppList *list,
const gchar *url,
gboolean interactive,
GCancellable *cancellable,
GError **error);
void gs_flatpak_set_busy (GsFlatpak *self,
gboolean busy);
gboolean gs_flatpak_get_busy (GsFlatpak *self);
G_END_DECLS
|