mirror of
https://github.com/YunoHost/apps.git
synced 2024-09-03 20:06:07 +02:00
commit
9cfdc1b864
3 changed files with 149 additions and 2 deletions
116
antifeatures.yml
Normal file
116
antifeatures.yml
Normal file
|
@ -0,0 +1,116 @@
|
|||
- id: tracking
|
||||
icon: user-secret
|
||||
title:
|
||||
en: "Tracking"
|
||||
fr: "Pistage"
|
||||
description:
|
||||
en: "Tracks you and/or reports your activity to upstream maintainer or third parties, either without your permission or by default."
|
||||
fr: "Vous piste et/ou rapporte vos activités au mainteneur source ou à des tiers, sans votre permission ou par défaut."
|
||||
|
||||
- id: non-free-network
|
||||
icon: network-wired
|
||||
title:
|
||||
en: "Non-free Network Services"
|
||||
fr : "Services réseau non libres"
|
||||
description:
|
||||
en: "Promotes or depends entirely on a non-free network service."
|
||||
fr: "Promeut ou utilise des services réseau non libres."
|
||||
|
||||
- id: non-free-addons
|
||||
icon: puzzle-piece
|
||||
title:
|
||||
en: "Non-free Addons"
|
||||
fr: "Extensions non libres"
|
||||
description:
|
||||
en: "Promotes other non-free applications or plugins."
|
||||
fr: "Promeut d'autres applications ou plugins non libres."
|
||||
|
||||
- id: non-free-dependencies
|
||||
icon: book
|
||||
title:
|
||||
en: "Non-free dependencies"
|
||||
fr: "Dépendances non libres"
|
||||
description:
|
||||
en: "Relies on software dependencies that are not free in order to run."
|
||||
fr: "Dépend pour fonctionner de dépendances logicielles non libres."
|
||||
|
||||
- id: non-free-assets
|
||||
icon: file-image
|
||||
title:
|
||||
en: "Non-free assets"
|
||||
fr: "Ressources non libres"
|
||||
description:
|
||||
en: "Contains and makes use of non-free assets. The most common case is apps using artwork - images, sounds, music, etc. - under a commercial license."
|
||||
fr: "Contient ou utilise des médias non libres. Le cas le plus fréquent concerne des applications utilisant des œuvres (images, sons, musiques, etc.) sous une licence commerciale."
|
||||
|
||||
- id: bad-security-reputation
|
||||
icon: door-open
|
||||
title:
|
||||
en: "Bad security reputation"
|
||||
fr: "Mauvaise réputation en matière de sécurité"
|
||||
description:
|
||||
en: "Has a bad security reputation, such as deprecated addons."
|
||||
fr: "A une mauvaise réputation en matière de sécurité, en utilisant des plugins dépréciés par exemple."
|
||||
|
||||
- id: deprecated-software
|
||||
icon: face-frown
|
||||
title:
|
||||
en: "Upstream not maintained"
|
||||
fr: "Application non maintenue"
|
||||
description:
|
||||
en: "This software is not maintained anymore. Expect it to break down over time, be exposed to unfixed security breaches, etc."
|
||||
fr: "Ce logiciel n'est plus maintenu. Attendez-vous à ce qu'il ne fonctionne plus avec le temsp, et que l'on découvre des failles de sécurité qui ne seront pas corrigées, etc."
|
||||
|
||||
- id: package-not-maintained
|
||||
icon: user-slash
|
||||
title:
|
||||
en: "Package not maintained"
|
||||
fr: "Paquet non maintenu"
|
||||
description:
|
||||
en: "This YunoHost package is not maintained and need adoption."
|
||||
fr: "Ce package YunoHost n'est plus maintenu et doit être adopté."
|
||||
|
||||
- id: paid-content
|
||||
icon: coins
|
||||
title:
|
||||
en: "Paid content"
|
||||
fr: "Contenu payant"
|
||||
description:
|
||||
en: "Promotes or depends, entirely or partially, on a paid service."
|
||||
fr: "Promeut ou dépend, entièrement ou partiellement, d'un service payant."
|
||||
|
||||
- id: arbitrary-limitations
|
||||
icon: face-frown
|
||||
title:
|
||||
en: "Arbitrary limitations"
|
||||
fr: "Limitations arbitraires"
|
||||
description:
|
||||
en: "Please refer to the README."
|
||||
fr: "Se référer au fichier README."
|
||||
|
||||
- id: replaced-by-another-app
|
||||
icon: rotate
|
||||
title:
|
||||
en: "Replaced by another app"
|
||||
fr: "Remplacé par une autre application"
|
||||
description:
|
||||
en: "Was replaced by another app. Please refer to the README."
|
||||
fr: "A été remplacée par une autre application. Se référer au fichier README."
|
||||
|
||||
- id: alpha-software
|
||||
icon: flask
|
||||
title:
|
||||
en: "Alpha Software"
|
||||
fr: "Logiciel en version alpha"
|
||||
despcription:
|
||||
en: "Early development stage. May contain changing or unstable features, bugs, and security vulnerability."
|
||||
fr: "Le logiciel est au tout début de son développment. Il pourrait contenir des fonctionnalités changeantes ou instables, des bugs, et des failles de sécurité."
|
||||
|
||||
- id: not-totally-free
|
||||
icon: lock
|
||||
title:
|
||||
en: "Not totally free upstream"
|
||||
fr: "Application sous licence libre restreinte"
|
||||
description:
|
||||
en: "The packaged app is under an overall free licence, but with clauses that restrict its use."
|
||||
fr: "L'application packagée ests sous une licence globalement libre, mais avec des clauses qui pourrait restreindre son utilisation."
|
28
apps.json
28
apps.json
|
@ -3,6 +3,9 @@
|
|||
"category": "games",
|
||||
"level": 8,
|
||||
"state": "working",
|
||||
"antifeatures": [
|
||||
"non-free-assets"
|
||||
],
|
||||
"url": "https://github.com/YunoHost-Apps/20euros_ynh"
|
||||
},
|
||||
"243": {
|
||||
|
@ -93,6 +96,9 @@
|
|||
"subtags": [
|
||||
"download"
|
||||
],
|
||||
"antifeatures": [
|
||||
"non-free-network"
|
||||
],
|
||||
"url": "https://github.com/YunoHost-Apps/alltube_ynh"
|
||||
},
|
||||
"ampache": {
|
||||
|
@ -200,6 +206,9 @@
|
|||
"subtags": [
|
||||
"pictures"
|
||||
],
|
||||
"antifeatures": [
|
||||
"non-free-network"
|
||||
],
|
||||
"url": "https://github.com/YunoHost-Apps/bibliogram_ynh"
|
||||
},
|
||||
"biboumi": {
|
||||
|
@ -532,6 +541,9 @@
|
|||
"category": "games",
|
||||
"level": 8,
|
||||
"state": "working",
|
||||
"antifeatures": [
|
||||
"tracking"
|
||||
],
|
||||
"url": "https://github.com/YunoHost-Apps/Cubiks-2048_ynh"
|
||||
},
|
||||
"dato": {
|
||||
|
@ -1380,6 +1392,9 @@
|
|||
"subtags": [
|
||||
"videos"
|
||||
],
|
||||
"antifeatures": [
|
||||
"non-free-network"
|
||||
],
|
||||
"url": "https://github.com/YunoHost-Apps/invidious_ynh"
|
||||
},
|
||||
"invoiceninja": {
|
||||
|
@ -2180,6 +2195,9 @@
|
|||
"subtags": [
|
||||
"microblogging"
|
||||
],
|
||||
"antifeatures": [
|
||||
"non-free-network"
|
||||
],
|
||||
"url": "https://github.com/YunoHost-Apps/nitter_ynh"
|
||||
},
|
||||
"noalyss": {
|
||||
|
@ -3589,6 +3607,10 @@
|
|||
"websites",
|
||||
"blog"
|
||||
],
|
||||
"antifeatures": [
|
||||
"non-free-addons",
|
||||
"paid-content"
|
||||
],
|
||||
"url": "https://github.com/YunoHost-Apps/wordpress_ynh"
|
||||
},
|
||||
"writefreely": {
|
||||
|
@ -3644,6 +3666,9 @@
|
|||
"subtags": [
|
||||
"download"
|
||||
],
|
||||
"antifeatures": [
|
||||
"non-free-network"
|
||||
],
|
||||
"url": "https://github.com/YunoHost-Apps/youtube-dl-webui_ynh"
|
||||
},
|
||||
"yunofav": {
|
||||
|
@ -3733,6 +3758,9 @@
|
|||
"subtags": [
|
||||
"network"
|
||||
],
|
||||
"antifeatures": [
|
||||
"non-free-dependencies"
|
||||
],
|
||||
"url": "https://github.com/YunoHost-Apps/ztncui_ynh"
|
||||
},
|
||||
"zusam": {
|
||||
|
|
|
@ -149,9 +149,10 @@ def build_catalog():
|
|||
# Current version 2 #
|
||||
#####################
|
||||
categories = yaml.load(open("categories.yml").read())
|
||||
antifeatures = yaml.load(open("antifeatures.yml").read())
|
||||
os.system("mkdir -p ./builds/default/v2/")
|
||||
with open("builds/default/v2/apps.json", 'w') as f:
|
||||
f.write(json.dumps({"apps": result_dict, "categories": categories}, sort_keys=True))
|
||||
f.write(json.dumps({"apps": result_dict, "categories": categories, "antifeatures": antifeatures}, sort_keys=True))
|
||||
|
||||
####################
|
||||
# Legacy version 1 #
|
||||
|
@ -199,6 +200,7 @@ def build_catalog():
|
|||
"broken": level <= 0,
|
||||
"good_quality": level >= 8,
|
||||
"bad_quality": level <= 5,
|
||||
"antifeatures": infos["antifeatures"],
|
||||
}
|
||||
result_dict_doc = {k: infos_for_doc_catalog(v) for k, v in result_dict.items() if v["state"] in ["working", "validated"]}
|
||||
with open("builds/default/doc_catalog/apps.json", 'w') as f:
|
||||
|
@ -217,7 +219,7 @@ def build_app_dict(app, infos):
|
|||
|
||||
# If using head, find the most recent meaningful commit in logs
|
||||
if infos["revision"] == "HEAD":
|
||||
relevant_files = ["manifest.json", "actions.json", "hooks/", "scripts/", "conf/", "sources/"]
|
||||
relevant_files = ["manifest.json", "config_panel.toml", "hooks/", "scripts/", "conf/", "sources/"]
|
||||
most_recent_relevant_commit = "rev-list --full-history --all -n 1 -- " + " ".join(relevant_files)
|
||||
infos["revision"] = git(most_recent_relevant_commit, in_folder=this_app_cache)
|
||||
assert re.match(r"^[0-9a-f]+$", infos["revision"]), "Output was not a commit? '%s'" % infos["revision"]
|
||||
|
@ -247,6 +249,7 @@ def build_app_dict(app, infos):
|
|||
'featured': infos.get("featured", False),
|
||||
'category': infos.get('category', None),
|
||||
'subtags': infos.get('subtags', []),
|
||||
'antifeatures': list(set(manifest.get('antifeatures', []) + infos.get('antifeatures', [])))
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue