New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[QUESTION] Is there already a centralized place where appstream information is submitted and stored? #176
Comments
|
Eww, that is a very misleading sentence. I wonder where that OCS statement is from, I checked the current documentation and pages I am aware of, and there is no mention of OCS or any user-contributed content database anywhere.
Which is still pretty accurate (although after looking at it, we should update the document a bit ^^) AppStream metainfo files are created by upstream projects as described here (and with a more formal and extensive documentation on the XML format here as well). Those small XML files are shipped by the software project in There is no real centralization in AppStream. There are plans to add more component-types to the metadata, e.g. one for themes and icon sets, but that's it. In any case, AppStream metadata (metainfo files) should always be stored with the project they belong to, and not be deployed from a separate place[1]. [1]: With minor exceptions, e.g. distros often provide the data for fonts, if font authors don't include it. |
|
Some addition, after looking at the connected bug: If Your distribution supports AppStream (pretty much all distros do), accessing the data pool is damn easy. Doing it from C (and finding one component with a specific ID): g_autoptr(AsPool) pool = NULL;
g_autoptr(GPtrArray) result = NULL;
g_autoptr(GError) error = NULL;
AsComponent *cpt;
pool = as_pool_new ();
as_pool_load (dpool, NULL, &error);
if (error != NULL) {
g_printerr ("%s\n", error->message);
return FALSE;
}
result = as_pool_get_components_by_id (dpool, identifier);
if (result->len == 0) {
g_printerr ("Unable to find component with ID '%s'!\n", identifier);
return FALSE;
}
cpt = AS_COMPONENT (g_ptr_array_index (result, 0));You can also use as_pool_search to find a list of components via search terms. |
|
Thanks a lot for your response and for the snippet it was very helpful. |
As it mentiones such a thing here: https://en.wikipedia.org/wiki/AppStream
"...which aims at creating an unified software metadata database, and also a centralized [...] user-contributed content database".
The text was updated successfully, but these errors were encountered: