From d2c4ff368d6e968c016ce088f4a005c56edd4cab Mon Sep 17 00:00:00 2001 From: "ma.azimi@laposte.net" Date: Tue, 26 Jan 2016 17:33:28 +0100 Subject: [PATCH] Update packaging_apps.md --- packaging_apps.md | 55 ++--------------------------------------------- 1 file changed, 2 insertions(+), 53 deletions(-) diff --git a/packaging_apps.md b/packaging_apps.md index 3d294b18..b6218fc2 100644 --- a/packaging_apps.md +++ b/packaging_apps.md @@ -19,59 +19,8 @@ A YunoHost package is composed of: **[A basic package](https://github.com/YunoHost/example_ynh)**: feel free to use it as a framework. -### Manifest -The `manifest.json` file defines the app's constants, a bunch of values that YunoHost needs to identify the app and install it correctly. It looks like this: -```json -{ - "name": "Roundcube", - "id": "roundcube", - "description": { - "en": "Open Source Webmail software", - "fr": "Webmail Open Source" - }, - "license": "free", - "maintainer": { - "name": "kload", - "email": "kload@kload.fr", - "url": "http://kload.fr" - }, - "multi_instance": "true", - "arguments": { - "install" : [ - { - "name": "domain", - "ask": { - "en": "Choose a domain for Roundcube" - }, - "example": "domain.org" - }, - { - "name": "path", - "ask": { - "en": "Choose a path for Roundcube" - }, - "example": "/webmail", - "default": "/webmail" - } - ] - } -} -``` - -* **name**: the app name. It does not have to be unique, but it should be, since it is the name shown to all the YunoHost administrators in the app list. - -* **id**: the unique ID of the app. You have to ensure that this ID is unique before submit an app integration request. - -* **description**: the complete description of the app. You can make it as detailed as you feel it should be. Only `en` is required right now, but you can translate the description by prepending the locale prefix. - -* **license**: software license type: `free` or `non-free`. Be careful to not confuse with package license which must be put in `LICENSE` file. - -* **maintainer**: informations about the app maintainer. - -* **multi_instance**: this defines your app's ability to be installed multiple times. When YunoHost tries to install a second instance of the app, it will replace the `id` in the scripts by an `id__2`. It means that, if you want to be `multi_instance`, you have to put all the identifiers in the scripts. -

**E.g.** in the roundcube script, database is called `roundcube`, the install directory `roundcube` and the Nginx configuration `roundcube`. This way, the second instance of roundcube will not conflict with the first one, and will be installed in the `roundcube__2` database, in the `roundcube__2`directory, and with the `roundcube__2` Nginx configuration. - -* **arguments**: the settings for the YunoHost's administrator to enter at installation. You have to set a `name` (for argument identification), and a question in `ask` (at least in `en`) that you can translate like the description above. You can also set a `default` value and an `example` to help administrator to fill the input. +## Manifest +Manifest ## Scripts For now, a YunoHost package must contain five Shell scripts: `install`, `remove`, `upgrade`, `backup` and `restore`.