diff --git a/pages/06.contribute/10.packaging_apps/10.manifest/manifest.md b/pages/06.contribute/10.packaging_apps/10.manifest/docs.md similarity index 98% rename from pages/06.contribute/10.packaging_apps/10.manifest/manifest.md rename to pages/06.contribute/10.packaging_apps/10.manifest/docs.md index 87709f17..321d921f 100644 --- a/pages/06.contribute/10.packaging_apps/10.manifest/manifest.md +++ b/pages/06.contribute/10.packaging_apps/10.manifest/docs.md @@ -1,10 +1,11 @@ --- -title: Writing app manifest +title: 'Writing the app manifest' template: docs taxonomy: - category: docs + category: + - docs routes: - default: '/packaging_manifest' + default: /packaging_manifest --- The app's `manifest.toml` can be seen as the ID card of the app. It declares various basic metadata such as the id, name, description of the app, its version, install questions to be asked to the admin prior to installation, etc. @@ -16,31 +17,21 @@ In this page, the data are described according to a somewhat dummy app called `h ```toml packaging_format = 2 -``` - -- `packaging_format` (`int`) is the packaging version format used to package this app. Newly packaged apps are strongly encouraged to use the new "v2" format (starting with YunoHost 11.1) while older apps may still be in "v1" format. - -```toml id = "helloworld" name = "Hello World" description.en = "A dummy basic app to illustrate YunoHost's app packaging." description.fr = "Une app simple et bidon pour illustrer comme le packaging d'app de YunoHost fonctionne" -``` -- `id` (`str`) is expected to be lower-case alphanumeric (and possibly `-`). This is what will be used for instance in the syntax `yunohost app install `. This will also be the name of various folder or conf files such as `/etc/yunohost/apps/` or `/etc/nginx/conf.d/.d/.conf` (if applicable), and a dedicated system user. -- `name` (`str`) is the display name of the app, shown for example in the webadmin UI or user portal. It is limited to 22 chars (though not sure why this number?). -- `description` (`dict` of `lang code`->`str`) contains *short*, *concise* descriptions of the app in different languages (at least `en`). It is limited to 150 chars. It will be displayed on the app catalog and should allow people to understand what this app is about at a glance. A more extensive description of the app can be provided in `doc/DESCRIPTION.md`. - -```toml version = "0.1~ynh1" -``` -- `version` (`str`) is composed of the *upstream* version of the app shipped, and an `~ynhX` suffix. Changing this version is what effectively triggers an available upgrade for YunoHost instances which installed this package (hence no upgrade will be displayed as available if you forget to change it). The point of the `~ynhX` suffix is to have a way to increment the version when commiting changes unrelated to the upstream but still trigger an upgrade. - -```toml maintainers = ["alexAubin"] ``` +- `packaging_format` (`int`) is the packaging version format used to package this app. Newly packaged apps are strongly encouraged to use the new "v2" format (starting with YunoHost 11.1) while older apps may still be in "v1" format. +- `id` (`str`) is expected to be lower-case alphanumeric (and possibly `-`). This is what will be used for instance in the syntax `yunohost app install `. This will also be the name of various folder or conf files such as `/etc/yunohost/apps/` or `/etc/nginx/conf.d/.d/.conf` (if applicable), and a dedicated system user. +- `name` (`str`) is the display name of the app, shown for example in the webadmin UI or user portal. It is limited to 22 chars (though not sure why this number?). +- `description` (`dict` of `lang code`->`str`) contains *short*, *concise* descriptions of the app in different languages (at least `en`). It is limited to 150 chars. It will be displayed on the app catalog and should allow people to understand what this app is about at a glance. A more extensive description of the app can be provided in `doc/DESCRIPTION.md`. +- `version` (`str`) is composed of the *upstream* version of the app shipped, and an `~ynhX` suffix. Changing this version is what effectively triggers an available upgrade for YunoHost instances which installed this package (hence no upgrade will be displayed as available if you forget to change it). The point of the `~ynhX` suffix is to have a way to increment the version when commiting changes unrelated to the upstream but still trigger an upgrade. - `maintainers` (`list` or `str`) may allow to declare which person should be the referring person for this package (though packages are often maintained collectively and not really used in practice). This should contain a list of easily identifiable persons (eg your Github or Matrix username) ## Upstream section