AppBundle Documentation & Implementation Details Labs

AppBundleID Format Specification

by xplshn 2025/07/12

An AppBundleID is required for every AppBundle to ensure proper functionality, such as generating the mountDir and enabling tools like appstream-helper to figure out info about the AppBundle. It can be non-compliant (i.e., not follow Type I, II, or III) if distribution via AppBundleHUB or dbin is not intended.

Supported Formats

Type I: Legacy Format

Type II: Modern Format without Date

Type III: Modern Format with Optional Date

Requirements and Usage

NOTEs

  1. The program’s AppStreamID should be used as the Name in the AppBundleID if the AppBundle does not ship with an .xml appstream metainfo file in the top-level of its AppDir. This way appstream-helper can use scrapped Flathub data to automatically populate a .description, .icon, .screenshots, .rank & .version entry for the dbin repository index file
  2. Type I, II & III are all parsable by appstream-helper