{"id":13677223,"url":"https://github.com/ximion/appstream","last_synced_at":"2025-04-11T22:30:29.987Z","repository":{"id":20597121,"uuid":"23877983","full_name":"ximion/appstream","owner":"ximion","description":"Tools and libraries to work with AppStream metadata","archived":false,"fork":false,"pushed_at":"2025-04-06T18:03:08.000Z","size":36218,"stargazers_count":232,"open_issues_count":67,"forks_count":120,"subscribers_count":17,"default_branch":"main","last_synced_at":"2025-04-06T20:50:09.666Z","etag":null,"topics":["appstream","appstream-specification","freedesktop","metadata","metainfo"],"latest_commit_sha":null,"homepage":"http://www.freedesktop.org/wiki/Distributions/AppStream/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ximion.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-09-10T14:39:51.000Z","updated_at":"2025-04-06T18:03:11.000Z","dependencies_parsed_at":"2023-10-15T04:37:05.863Z","dependency_job_id":"a50070fb-a004-4dcc-bea8-c27711f0765b","html_url":"https://github.com/ximion/appstream","commit_stats":{"total_commits":4437,"total_committers":382,"mean_commits":"11.615183246073299","dds":0.3761550597250395,"last_synced_commit":"2a02e412a8da2639192edeac926fd022ce469af8"},"previous_names":[],"tags_count":86,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ximion%2Fappstream","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ximion%2Fappstream/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ximion%2Fappstream/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ximion%2Fappstream/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ximion","download_url":"https://codeload.github.com/ximion/appstream/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248489436,"owners_count":21112573,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["appstream","appstream-specification","freedesktop","metadata","metainfo"],"created_at":"2024-08-02T13:00:39.075Z","updated_at":"2025-04-11T22:30:29.950Z","avatar_url":"https://github.com/ximion.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"AppStream\n=========\n\u003cimg align=\"right\" src=\"docs/images/src/png/appstream-logo.png\"\u003e\n\n![Build Test](https://github.com/ximion/appstream/workflows/Build%20Test/badge.svg)\n[![Translation status](https://hosted.weblate.org/widgets/appstream/-/svg-badge.svg)](https://hosted.weblate.org/engage/appstream/?utm_source=widget)\n\nAppStream makes machine-readable software metadata easily accessible.\nIt is a foundational block for modern Linux software centers, offering a seamless way to retrieve\ninformation about available software, no matter the repository it is contained in.\nIt can provide data about available applications as well as available firmware, drivers,\nfonts and other components.\nThis project it part of freedesktop.org.\n\n\n## What AppStream Offers\n\n- **Specifications \u0026 Standards**: Describes the XML-based MetaInfo files for use by upstream\n  projects, as well as AppStream catalog metadata in XML or YAML for use by repository providers.\n- **Reference Implementation**: Provides GLib/GObject libraries for easy manipulation of metadata,\n  with features for quick metadata indexing, querying and system compatibility checks.\n  A Qt interface and other language bindings are provided as well.\n- **Tools**: Includes `appstreamcli` for metadata queries, data verification and diagnostics.\n  The `appstreamcli compose` tool can be used for simple catalog metadata composition.\n\nYou can [download signed release tarballs of AppStream on freedesktop.org](https://www.freedesktop.org/software/appstream/releases/).\n\n#### Other links:\n- [AppStream Documentation](https://www.freedesktop.org/software/appstream/docs/)\n- [AppStream on Freedesktop](https://www.freedesktop.org/wiki/Distributions/AppStream/)\n- [AppStream Mailinglist](https://lists.freedesktop.org/mailman/listinfo/appstream)\n\n\n## Information For Users\n\n### For Upstream Application Authors\n- **[Quickstart Guides](https://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html)**:\n  Simple tutorials on how to write MetaInfo files for your application.\n- **[MetaInfo Creator](https://www.freedesktop.org/software/appstream/metainfocreator/)**:\n  An easy-to-use web application for generating metadata.\n\n\n### For Distributors\n- **[AppStream Generator](https://github.com/ximion/appstream-generator)**:\n  Generate comprehensive metadata for your Linux distribution. Uses *libappstream-compose* internally.\n\n### Data Validation\nRun `appstreamcli validate --pedantic /path/to/metadata.xml` on the XML metadata you want to check.\nAny error makes the data unreadable, warnings result in degraded data (and parts of it may be ignored),\nwhile infos are recommendations that are not fatal. Pedantic issues are nice-to-have or may not\nbe applicable recommendations in all cases.\n\n\n## Contributing to AppStream\n\nYour contributions make AppStream better!\nWhether you're a developer, translator, or enthusiast, there's a place for you here.\n\n### Issue Reporting\n\nIssues are currently tracked [via GitHub Issues](https://github.com/ximion/appstream/issues).\nFeel free to file your bug, feature request or change request there. Please be patient in\ncase it takes a while for your issue rto be reviewed, and be open to discussions in case of\nfeature requests.\n\n### Pull Requests\n\nWe gladly consider your changes as pull requests! Thank you for contributing and taking the time\nto write a patch. Make sure your code compiles in maintainer mode, and you may want to format\nyour changes to adhere to the AppStream coding style.\nTo help with the latter we provide the `autoformat.py` helper script to format code via *clang-format*.\n\n### Build \u0026 Install\n\n#### Dependencies\n\n * Meson (\u003e= 0.62)\n * glib2 (\u003e= 2.58)\n * GObject-Introspection\n * libxml2\n * libyaml\n * libcurl (\u003e= 7.62)\n * libxmlb (\u003e= 0.3.6)\n\nOptional:\n * Vala Compiler (vapigen) (for Vala VAPI file)\n * [Snowball](https://snowballstem.org/download.html) (for stemming support)\n * Qt6 Core (for libappstream-qt)\n * [DAPS](https://github.com/openSUSE/daps) (to build the specification)\n\nIf you are using the released tarballs, the HTML documentation will be prebuilt and DAPS, which\nis a heavy dependency, is not required to make it available locally.\n\n#### Build Instructions\n\nTo compile AppStream, make sure that you have all required libraries (development files!) installed.\nThen continue (the build system will complain about missing dependencies).\n\nUse Meson to configure AppStream and build it with Ninja:\n```bash\nmkdir build\ncd build\nmeson setup \u003cflags\u003e ..\nninja\nninja test\n```\n\nFor commonly used setup flags, use `-Dqt=true` to enable building the Qt interface, `-Dvapi=true`\nto build the Vala bindings, `-Dcompose=true` to build the AppStream catalog compose library and\ntools, `-Dapt-support=true` to enable integration with APT and `-Ddocs=true` to rebuild\nthe documentation using DAPS.\n\nDuring development and before submitting a pull-request, you may also want to use\n`-Dmaintainer=true` to enable stricter compiler flags and other changes to aid development.\n\n#### Installation\n\nTo install the compiled binaries and required data, execute `ninja install`.\n\n### Translators\n\nYou can help translating AppStream via Weblate!\nCheck out the [AppStream Weblate Page](https://hosted.weblate.org/projects/appstream/translations/),\nand thank you for helping to translate this project!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fximion%2Fappstream","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fximion%2Fappstream","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fximion%2Fappstream/lists"}