1
0
Fork 0

Add a README generator

This commit is contained in:
Alexandre Aubin 2021-04-23 20:01:40 +02:00
parent 69efab1a4d
commit d23820291a
3 changed files with 147 additions and 0 deletions

40
READMEs/make_readme.py Normal file
View file

@ -0,0 +1,40 @@
from jinja2 import Environment, FileSystemLoader
import json
import os
import sys
if len(sys.argv) <= 1:
raise Exception("You should provide the path to the app as first arg")
app = sys.argv[1]
if not os.path.exists(app):
raise Exception("App path provided doesn't exists ?!")
env = Environment(loader=FileSystemLoader('./templates'))
for lang, lang_suffix in [("en", ""), ("fr", "_fr")]:
template = env.get_template(f'README{lang_suffix}.md.j2')
manifest = json.load(open(os.path.join(app, "manifest.json")))
upstream = manifest.get("upstream", {})
if os.path.exists(os.path.join(app, "doc", "screenshots")):
screenshots = os.listdir(os.path.join(app, "doc", "screenshots"))
if ".gitkeep" in screenshots:
screenshots.remove(".gitkeep")
else:
screenshots = []
if os.path.exists(os.path.join(app, "doc", f"DISCLAIMER{lang_suffix}.md")):
disclaimer = open(os.path.join(app, "doc", f"DISCLAIMER{lang_suffix}.md")).read()
# Fallback to english if maintainer too lazy to translate the disclaimer idk
elif os.path.exists(os.path.join(app, "doc", f"DISCLAIMER.md")):
disclaimer = open(os.path.join(app, "doc", f"DISCLAIMER.md")).read()
else:
disclaimer = None
out = template.render(lang=lang, upstream=upstream, screenshots=screenshots, disclaimer=disclaimer, manifest=manifest)
with open(os.path.join(app, f"README{lang_suffix}.md"), "w") as f:
f.write(out)

View file

@ -0,0 +1,53 @@
# {{manifest.name}} for YunoHost
[![Integration level](https://dash.yunohost.org/integration/{{manifest.id}}.svg)](https://dash.yunohost.org/appci/app/{{manifest.id}}) ![](https://ci-apps.yunohost.org/ci/badges/{{manifest.id}}.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/{{manifest.id}}.maintain.svg)
[![Install {{manifest.id}} with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app={{manifest.id}})
*[Lire ce readme en français.](./README_fr.md)*
> *This package allows you to install {{manifest.id}} quickly and simply on a YunoHost server.
If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.*
## Overview
{{manifest.description[lang]}}
**Shipped version:** {{manifest.version}}
{% if upstream.demo %}**Demo:** {{upstream.demo}}{% endif %}
{% if screenshots %}
## Screenshots
{% for screenshot in screenshots %}
![](./doc/screenshots/{{screenshot}})
{% endfor %}
{% endif %}
{% if disclaimer %}
## Disclaimers / important information
{{ disclaimer }}
{% endif %}
## Documentation and resources
{% if upstream.website %}* Official app website: {{ upstream.website }}{% endif %}
{% if upstream.userdoc %}* Official user documentation: {{ upstream.userdoc }}{% endif %}
{% if upstream.admindoc %}* Official admin documentation: {{ upstream.admindoc }}{% endif %}
{% if upstream.code %}* Upstream app code repository: {{ upstream.code }}{% endif %}
* YunoHost documentation for this app: https://yunohost.org/app_{{manifest.id}}
* Report a bug: https://github.com/YunoHost-Apps/{{manifest.id}}_ynh/issues
## Developer info
Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/{{manifest.id}}_ynh/tree/testing).
To try the testing branch, please proceed like that.
```
sudo yunohost app install https://github.com/YunoHost-Apps/{{manifest.id}}_ynh/tree/testing --debug
or
sudo yunohost app upgrade {{manifest.id}} -u https://github.com/YunoHost-Apps/{{manifest.id}}_ynh/tree/testing --debug
```
**More info regarding app packaging:** https://yunohost.org/packaging_apps

View file

@ -0,0 +1,54 @@
# {{manifest.name}} pour YunoHost
[![Niveau d'intégration](https://dash.yunohost.org/integration/{{manifest.id}}.svg)](https://dash.yunohost.org/appci/app/{{manifest.id}}) ![](https://ci-apps.yunohost.org/ci/badges/{{manifest.id}}.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/{{manifest.id}}.maintain.svg)
[![Installer {{manifest.id}} avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app={{manifest.id}})
*[Read this readme in english.](./README.md)*
*[Lire ce readme en français.](./README_fr.md)*
> *This package allows you to install {{manifest.id}} quickly and simply on a YunoHost server.
If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.*
## Vue d'ensemble
{{manifest.description[lang]}}
**Version incluse:** {{manifest.version}}
{% if upstream.demo %}**Démo:** {{upstream.demo}}{% endif %}
{% if screenshots %}
## Captures d'écran
{% for screenshot in screenshots %}
![](./doc/screenshots/{{screenshot}})
{% endfor %}
{% endif %}
{% if disclaimer %}
## Avertissements / informations importantes
{{ disclaimer }}
{% endif %}
## Documentations et ressources
{% if upstream.website %}* Site official de l'app : {{ upstream.website }}{% endif %}
{% if upstream.userdoc %}* Documentation officielle utilisateur: {{ upstream.userdoc }}{% endif %}
{% if upstream.admindoc %}* Documentation officielle de l'admin: {{ upstream.admindoc }}{% endif %}
{% if upstream.code %}* Dépôt de code officiel de l'app: {{ upstream.code }}{% endif %}
* Documentation YunoHost pour cette app: https://yunohost.org/app_{{manifest.id}}
* Signaler un bug: https://github.com/YunoHost-Apps/{{manifest.id}}_ynh/issues
## Informations pour les développeurs
Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/{{manifest.id}}_ynh/tree/testing).
Pour essayer la branche testing, procédez comme suit.
```
sudo yunohost app install https://github.com/YunoHost-Apps/{{manifest.id}}_ynh/tree/testing --debug
or
sudo yunohost app upgrade {{manifest.id}} -u https://github.com/YunoHost-Apps/{{manifest.id}}_ynh/tree/testing --debug
```
**Plus d'infos sur le packaging d'applications:** https://yunohost.org/packaging_apps