21 Commits

Author SHA1 Message Date
2c1cbe133f yolo refresh_store.sh 2024-03-05 23:12:34 +01:00
e3cf837d70 Merge pull request #2085 from YunoHost/add-to-wishlist-bukuserver
Add bukuserver to wishlist
2024-03-05 22:45:05 +01:00
fec3aac3dc Merge pull request #2086 from YunoHost/add-to-wishlist-suwayomi
Add Suwayomi to wishlist
2024-03-05 22:44:35 +01:00
5f3c78f888 Merge pull request #2088 from YunoHost/add-logos
add logos
2024-03-05 22:41:21 +01:00
86bae45424 Merge pull request #2089 from YunoHost/store-show-deprecated-aside 2024-03-05 21:24:18 +01:00
8c01dc5484 fix gitignore for downloaded assets 2024-03-05 21:23:02 +01:00
aba744e440 doc(store): add instructions on how to download css/js assets 2024-03-05 21:20:13 +01:00
4904a20488 another french translation fix 2024-03-05 19:51:58 +01:00
5a1cfa3cb8 Fix french translation 2024-03-05 19:50:25 +01:00
6b55602a45 remove fuzzy tag 2024-03-05 19:47:59 +01:00
836983c7f4 french translation 2024-03-05 19:41:20 +01:00
fee7549d4a update messages.pot for weblate 2024-03-05 19:36:37 +01:00
3092f26be2 Revert "update message.pot"
This reverts commit 97a3b5e93d.
2024-03-05 19:36:15 +01:00
97a3b5e93d update message.pot 2024-03-05 19:35:55 +01:00
3d62036187 add matrix-appservice-irc logo 2024-03-05 19:34:08 +01:00
606cc86751 remove deprecated softwares from the main catalog list and add a dedicated list at the bottom 2024-03-05 19:33:46 +01:00
b269877498 Merge pull request #2087 from YunoHost/daprecated-mautrix-facebook
deprecated mautrix facebook
2024-03-05 19:27:37 +01:00
ce39e50a4e deprecated mautrix facebook 2024-03-05 19:01:05 +01:00
a7a2115fd5 add logos 2024-03-05 18:59:43 +01:00
a6c1a75dbf Add Suwayomi to wishlist 2024-03-05 16:32:25 +01:00
0cfc0ee125 Add bukuserver to wishlist 2024-03-05 06:42:11 +01:00
18 changed files with 187 additions and 96 deletions

View File

@ -1927,6 +1927,7 @@ url = "https://github.com/YunoHost-Apps/mautrix_discord_ynh"
[mautrix_facebook]
category = "communication"
antifeatures = [ "deprecated-software" ]
level = 6
potential_alternative_to = [ "Facebook Messenger" ]
state = "working"

BIN
logos/fastapi.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
logos/mautrix_discord.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
logos/mautrix_facebook.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
logos/mautrix_meta.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
logos/mautrix_signal.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
logos/mautrix_telegram.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
logos/mautrix_whatsapp.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
logos/owncast-emojiwall.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 KiB

BIN
logos/shuri.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 KiB

6
store/.gitignore vendored
View File

@ -1,2 +1,8 @@
config.toml
.stars
assets/fork-awesome.*
assets/forkawesome-webfont.*
assets/tailwind.css
assets/tailwindcss-linux-x64
assets/ynh_logo_*

View File

@ -17,6 +17,9 @@ nano config.toml
mkdir -p ../builds/default/v3/
curl https://app.yunohost.org/default/v3/apps.json > ../builds/default/v3/apps.json
# you need to manually download the assets to have access to the css and the javascript files
(cd assets && bash fetch_assets)
# You will also want to run list_builder.py to initialize the .apps_cache (at least for a few apps, you can Ctrl+C after a while)
pip3 install tqdm GitPython
pushd ..

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2024-02-27 19:41+0100\n"
"POT-Creation-Date: 2024-03-05 19:36+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -139,7 +139,7 @@ msgid ""
msgstr ""
#: templates/app.html:30 templates/app.html:31 templates/catalog.html:41
#: templates/catalog.html:42 templates/catalog.html:169
#: templates/catalog.html:42 templates/catalog.html:170
msgid ""
"This is usually a temporary situation which requires packagers to fix "
"something in the app."
@ -331,14 +331,28 @@ msgstr ""
msgid "Checkout the wishlist!"
msgstr ""
#: templates/catalog.html:165
#: templates/catalog.html:166
msgid "Applications currently flagged as broken"
msgstr ""
#: templates/catalog.html:168
#: templates/catalog.html:169
msgid "These are apps which failed our automatic tests."
msgstr ""
#: templates/catalog.html:184
msgid "Deprecated applications"
msgstr ""
#: templates/catalog.html:187
msgid "These are apps who are not maintained anymore."
msgstr ""
#: templates/catalog.html:188
msgid ""
"This means that the developer will no longer update them. We strongly "
"advise against their installation and advise users to find alternatives."
msgstr ""
#: templates/index.html:10
msgid "Application Store"
msgstr ""

15
store/refresh_store.sh Normal file
View File

@ -0,0 +1,15 @@
#!/usr/bin/env bash
workdir=$(realpath "$(dirname "$0")")
log=$workdir/refresh_store.log
cd "$workdir"
date >> "$log"
git pull &>/dev/null
cat cron | sed "s@__BASEDIR__@$workdir@g" > /etc/cron.d/refresh_store
systemctl restart appstore.service 2>&1 | tee "$log"
if systemctl --quiet is-failed appstore.service; then
sendxmpppy "[refresh_store] Restarting appstore.service failed miserably :scream:"
fi

View File

@ -143,7 +143,7 @@
<div id="catalogGoodQuality" class="grid grid-cols-1 gap-4 sm:grid-cols-2 md:grid-cols-3 max-w-screen-lg mx-auto pt-10">
{% for app, infos in catalog['apps'].items() %}
{% if infos['level'] and infos['level'] != "?" and infos['level'] > 4 %}
{% if infos['level'] and infos['level'] != "?" and infos['level'] > 4 and not "deprecated-software" in infos['antifeatures'] %}
{{ appCard(app, infos, timestamp_now, catalog) }}
{% endif %}
{% endfor %}
@ -160,6 +160,7 @@
</p>
</div>
<div id="lowQualityAppTitle" class="text-center pt-10 mx-4 md:mx-0">
<h2 class="text-lg font-bold text-gray-900">
{{ _("Applications currently flagged as broken") }}
@ -178,6 +179,24 @@
{% endfor %}
</div>
<div id="deprecatedAppTitle" class="text-center pt-10 mx-4 md:mx-0">
<h2 class="text-lg font-bold text-gray-900">
{{ _("Deprecated applications") }}
</h2>
<p class="text-sm">
{{ _("These are apps who are not maintained anymore.") }}<br/>
{{ _("This means that the developer will no longer update them. We strongly advise against their installation and advise users to find alternatives.") }}
</p>
</div>
<div id="catalogDeprecated" class="grid grid-cols-1 gap-4 sm:grid-cols-2 md:grid-cols-3 max-w-screen-lg mx-auto pt-10">
{% for app, infos in catalog['apps'].items() %}
{% if "deprecated-software" in infos['antifeatures'] %}
{{ appCard(app, infos, timestamp_now, catalog) }}
{% endif %}
{% endfor %}
</div>
<script type="text/javascript">
// A little delay

View File

@ -7,17 +7,16 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2024-02-27 19:41+0100\n"
"POT-Creation-Date: 2024-03-05 19:36+0100\n"
"PO-Revision-Date: 2024-02-27 19:19+0000\n"
"Last-Translator: OniriCorpe <oniricorpe@disroot.org>\n"
"Language-Team: French <https://translate.yunohost.org/projects/yunohost/apps/"
"fr/>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language-Team: French "
"<https://translate.yunohost.org/projects/yunohost/apps/fr/>\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 5.3.1\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.14.0\n"
#: app.py:150
@ -30,22 +29,21 @@ msgstr "Vous devez être connecté·e pour mettre une app en favoris"
#: app.py:152 app.py:195 app.py:449 templates/wishlist_add.html:33
msgid ""
"Note that, due to various abuses, we restricted login on the app store to "
"'trust level 1' users.<br/><br/>'Trust level 1' is obtained after "
"Note that, due to various abuses, we restricted login on the app store to"
" 'trust level 1' users.<br/><br/>'Trust level 1' is obtained after "
"interacting a minimum with the forum, and more specifically: entering at "
"least 5 topics, reading at least 30 posts, and spending at least 10 minutes "
"reading posts."
"least 5 topics, reading at least 30 posts, and spending at least 10 "
"minutes reading posts."
msgstr ""
"Notez que, suite à divers abus, la connexion nécessite maintenant d'être "
"'trust level 1' sur le forum.<br/><br/>Le 'trust level 1' est obtenu après "
"avoir intéragit un minimum avec le forum, et plus précisémment: ouvrir au "
"moins 5 fils de discussion, lire au moins 30 messages, et passer au moins 10 "
"minutes à lire des messages."
"'trust level 1' sur le forum.<br/><br/>Le 'trust level 1' est obtenu "
"après avoir intéragit un minimum avec le forum, et plus précisémment: "
"ouvrir au moins 5 fils de discussion, lire au moins 30 messages, et "
"passer au moins 10 minutes à lire des messages."
#: app.py:195
msgid "You must be logged in to submit an app to the wishlist"
msgstr ""
"Vous devez être connecté·e pour proposer une app pour la liste de souhaits"
msgstr "Vous devez être connecté·e pour proposer une app pour la liste de souhaits"
#: app.py:207
msgid "Invalid CSRF token, please refresh the page and try again"
@ -56,8 +54,8 @@ msgid ""
"Proposing wishlist additions is limited to once every 15 days per user. "
"Please try again in a few days."
msgstr ""
"Proposer une app dans la liste de souhaits est limité à une fois tous les 15 "
"jours et par personne. Merci de réessayer dans quelques jours."
"Proposer une app dans la liste de souhaits est limité à une fois tous les"
" 15 jours et par personne. Merci de réessayer dans quelques jours."
#: app.py:230
msgid "App name should be at least 3 characters"
@ -101,23 +99,25 @@ msgstr "Le nom de l'app contient des caractères spéciaux"
#: app.py:263
msgid ""
"Please focus on what the app does, without using marketing, fuzzy terms, or "
"repeating that the app is 'free' and 'self-hostable'."
"Please focus on what the app does, without using marketing, fuzzy terms, "
"or repeating that the app is 'free' and 'self-hostable'."
msgstr ""
"S'il vous plaît décrivez ce que fait l'application sans utiliser de termes "
"marketing nébuleux ou répéter que l'app est 'libre' ou 'auto-hébergeable'."
"S'il vous plaît décrivez ce que fait l'application sans utiliser de "
"termes marketing nébuleux ou répéter que l'app est 'libre' ou 'auto-"
"hébergeable'."
#: app.py:267
msgid "No need to repeat the name of the app. Focus on what the app does."
msgstr ""
"Pas besoin de répéter le nom de l'application. Prière de rester concis et de "
"se concentrer sur ce que l'app fait."
"Pas besoin de répéter le nom de l'application. Prière de rester concis et"
" de se concentrer sur ce que l'app fait."
#: app.py:301
#, python-format
msgid ""
"An entry with the name %(slug)s already exists in the wishlist, instead, you "
"can <a href='%(url)s'>add a star to the app to show your interest</a>."
"An entry with the name %(slug)s already exists in the wishlist, instead, "
"you can <a href='%(url)s'>add a star to the app to show your "
"interest</a>."
msgstr ""
"Une entrée nommée %(slug)s existe déjà dans la liste de souhaits, vous "
"pouvez <a href='%(url)s'>l'ajouter en favori</a> afin de montrer votre "
@ -130,20 +130,21 @@ msgid ""
"there's already <a href='%(url)s'>a waiting PR for this app</a>? Else, "
"please report the issue to the YunoHost team."
msgstr ""
"Échec de la création de la demande d'intégration de l'app dans la liste de "
"souhaits… Peut-être qu'il y a <a href='%(url)s'>déjà une PR en attente pour "
"cette app</a>? Sinon, merci de signaler le problème à l'équipe YunoHost."
"Échec de la création de la demande d'intégration de l'app dans la liste "
"de souhaits… Peut-être qu'il y a <a href='%(url)s'>déjà une PR en attente"
" pour cette app</a>? Sinon, merci de signaler le problème à l'équipe "
"YunoHost."
#: app.py:376
#, python-format
msgid ""
"Your proposed app has succesfully been submitted. It must now be validated "
"by the YunoHost team. You can track progress here: <a href='%(url)s'>"
"%(url)s</a>"
"Your proposed app has succesfully been submitted. It must now be "
"validated by the YunoHost team. You can track progress here: <a "
"href='%(url)s'>%(url)s</a>"
msgstr ""
"Un demande d'intégration à la liste de souhaits a bien été créée pour cette "
"app. Elle doit maintenant être validée par l'équipe YunoHost. Vous pouvez "
"suivre cette demande ici: <a href='%(url)s'>%(url)s</a>"
"Un demande d'intégration à la liste de souhaits a bien été créée pour "
"cette app. Elle doit maintenant être validée par l'équipe YunoHost. Vous "
"pouvez suivre cette demande ici: <a href='%(url)s'>%(url)s</a>"
#: app.py:449
msgid "Unfortunately, login was denied."
@ -160,11 +161,11 @@ msgid ""
"This app is currently flagged as broken because it failed our automatic "
"tests."
msgstr ""
"Cette app est actuellement marquée comme cassée ou de mauvaise qualité car "
"elle ne passe pas nos tests automatisés."
"Cette app est actuellement marquée comme cassée ou de mauvaise qualité "
"car elle ne passe pas nos tests automatisés."
#: templates/app.html:30 templates/app.html:31 templates/catalog.html:41
#: templates/catalog.html:42 templates/catalog.html:169
#: templates/catalog.html:42 templates/catalog.html:170
msgid ""
"This is usually a temporary situation which requires packagers to fix "
"something in the app."
@ -178,8 +179,8 @@ msgid ""
"This app has been good quality according to our automatic tests over at "
"least one year."
msgstr ""
"Cette app est de bonne qualité d'après nos tests automatisés depuis au moins "
"un an."
"Cette app est de bonne qualité d'après nos tests automatisés depuis au "
"moins un an."
#: templates/app.html:81
msgid "Try the demo"
@ -210,8 +211,7 @@ msgstr "Capture d'écran pour %(app)s"
#: templates/app.html:106
#, python-format
msgid ""
"This app is only compatible with these specific architectures: %(archs)s"
msgid "This app is only compatible with these specific architectures: %(archs)s"
msgstr ""
"Cette app est uniquement compatible avec les architectures suivantes : "
"%(archs)s"
@ -220,8 +220,8 @@ msgstr ""
#, python-format
msgid "This app requires an unusual amount of RAM to install: %(ram)s"
msgstr ""
"Cette app requiert une quantité inhabituelle de RAM pour être installée : "
"%(ram)s"
"Cette app requiert une quantité inhabituelle de RAM pour être installée :"
" %(ram)s"
#: templates/app.html:118
msgid "Important infos before installing"
@ -302,18 +302,21 @@ msgstr "Afficher le menu"
#: templates/base.html:197
msgid ""
"Made with <i class='text-red-500 fa fa-heart-o' aria-label='love'></i> using "
"<a class='text-blue-800' href='https://flask.palletsprojects.com'>Flask</a> "
"and <a class='text-blue-800' href='https://tailwindcss.com/'>TailwindCSS</a> "
"- <a class='text-blue-800' href='https://github.com/YunoHost/apps/tree/"
"master/store'><i class='fa fa-code fa-fw' aria-hidden='true'></i> Source</a>"
"Made with <i class='text-red-500 fa fa-heart-o' aria-label='love'></i> "
"using <a class='text-blue-800' "
"href='https://flask.palletsprojects.com'>Flask</a> and <a class='text-"
"blue-800' href='https://tailwindcss.com/'>TailwindCSS</a> - <a class"
"='text-blue-800' "
"href='https://github.com/YunoHost/apps/tree/master/store'><i class='fa "
"fa-code fa-fw' aria-hidden='true'></i> Source</a>"
msgstr ""
"Fait avec <i class='text-red-500 fa fa-heart-o' aria-label='amour'></i> à "
"l'aide de <a class='text-blue-800' href='https://flask.palletsprojects."
"com'>Flask</a> et <a class='text-blue-800' href='https://tailwindcss."
"com/'>TailwindCSS</a> - <a class='text-blue-800' href='https://github.com/"
"YunoHost/apps/tree/master/store'><i class='fa fa-code fa-fw' aria-"
"hidden='true'></i> Source</a>"
"Fait avec <i class='text-red-500 fa fa-heart-o' aria-label='amour'></i> à"
" l'aide de <a class='text-blue-800' "
"href='https://flask.palletsprojects.com'>Flask</a> et <a class='text-"
"blue-800' href='https://tailwindcss.com/'>TailwindCSS</a> - <a class"
"='text-blue-800' "
"href='https://github.com/YunoHost/apps/tree/master/store'><i class='fa "
"fa-code fa-fw' aria-hidden='true'></i> Source</a>"
#: templates/catalog.html:75 templates/catalog.html:80
msgid "Application Catalog"
@ -369,14 +372,31 @@ msgstr "Vous ne trouvez pas ce que vous cherchez ?"
msgid "Checkout the wishlist!"
msgstr "Jetez un oeil à la liste de souhaits !"
#: templates/catalog.html:165
#: templates/catalog.html:166
msgid "Applications currently flagged as broken"
msgstr "Applications actuellement marquées comme cassées"
#: templates/catalog.html:168
#: templates/catalog.html:169
msgid "These are apps which failed our automatic tests."
msgstr "Il s'agit d'apps qui n'ont pas validé nos tests automatisés."
#: templates/catalog.html:184
msgid "Deprecated applications"
msgstr "Applications obsolètes"
#: templates/catalog.html:187
msgid "These are apps who are not maintained anymore."
msgstr "Il s'agit des applications qui ne sont plus maintenues."
#: templates/catalog.html:188
msgid ""
"This means that the developer will no longer update them. We strongly "
"advise against their installation and advise users to find alternatives."
msgstr ""
"Cela signifie que le développeur ne les mettra plus à jour. Nous "
"décourageons fortement leur installation et conseillons aux utilisateurs "
"de se tourner vers des alternatives."
#: templates/index.html:10
msgid "Application Store"
msgstr "Store d'application"
@ -391,19 +411,19 @@ msgstr "Liste de souhaits d'applications"
#: templates/wishlist.html:10
msgid ""
"The wishlist is the place where people can collectively suggest and vote for "
"apps that they would like to see packaged and made available in YunoHost's "
"official apps catalog. Nevertheless, the fact that apps are listed here "
"should by no mean be interpreted as a fact that the YunoHost project plans "
"to integrate it, and is merely a source of inspiration for packaging "
"volunteers."
"The wishlist is the place where people can collectively suggest and vote "
"for apps that they would like to see packaged and made available in "
"YunoHost's official apps catalog. Nevertheless, the fact that apps are "
"listed here should by no mean be interpreted as a fact that the YunoHost "
"project plans to integrate it, and is merely a source of inspiration for "
"packaging volunteers."
msgstr ""
"La liste de souhaits est l'endroit où il est possible de collectivement "
"suggérer et voter pour des applications que vous aimeriez voir packagée et "
"intégrée dans le catalogue officiel de YunoHost. Néanmoins, le fait que des "
"apps soient listées ici ne devrait en aucun cas être interprété comme le "
"fait que le projet YunoHost prévoit leur intégration, et est uniquement une "
"source d'inspiration pour les packageur·euse·s bénévoles."
"suggérer et voter pour des applications que vous aimeriez voir packagée "
"et intégrée dans le catalogue officiel de YunoHost. Néanmoins, le fait "
"que des apps soient listées ici ne devrait en aucun cas être interprété "
"comme le fait que le projet YunoHost prévoit leur intégration, et est "
"uniquement une source d'inspiration pour les packageur·euse·s bénévoles."
#: templates/wishlist.html:33 templates/wishlist_add.html:3
msgid "Suggest an app"
@ -435,22 +455,22 @@ msgstr "Suggérer une application à ajouter dans le catalogue de YunoHost"
#: templates/wishlist_add.html:29
msgid "You must first login to be allowed to submit an app to the wishlist"
msgstr ""
"Vous devez être connecté·e pour proposer une app pour la liste de souhaits"
msgstr "Vous devez être connecté·e pour proposer une app pour la liste de souhaits"
#: templates/wishlist_add.html:40
msgid "Due to abuses, only one proposal every 15 days per user is allowed."
msgstr ""
"En raison d'abus, la proposition d'app est limitée à une tous les 15 jours "
"par utilisateur·ice."
"En raison d'abus, la proposition d'app est limitée à une tous les 15 "
"jours par utilisateur·ice."
#: templates/wishlist_add.html:43
msgid ""
"Reviewing those proposals is tiring for volunteers, please don't yolo-send "
"every random nerdy stuff you find on the Internet."
"Reviewing those proposals is tiring for volunteers, please don't yolo-"
"send every random nerdy stuff you find on the Internet."
msgstr ""
"La vérification des propositions est éreintante pour les bénévoles, merci de "
"ne pas bêtement proposer n'importe quelle app un peu nerd que vous trouvez."
"La vérification des propositions est éreintante pour les bénévoles, merci"
" de ne pas bêtement proposer n'importe quelle app un peu nerd que vous "
"trouvez."
#: templates/wishlist_add.html:64
msgid "App's description"
@ -462,15 +482,15 @@ msgstr "Prière de rester concis et de se concentrer sur ce que l'app fait."
#: templates/wishlist_add.html:66
msgid ""
"No need to repeat '[App] is …'. No need to state that it is free/open-source "
"or self-hosted (otherwise it wouldn't be packaged for YunoHost). Avoid "
"marketing stuff like 'the most', or vague properties like 'easy', 'simple', "
"'lightweight'."
"No need to repeat '[App] is …'. No need to state that it is free/open-"
"source or self-hosted (otherwise it wouldn't be packaged for YunoHost). "
"Avoid marketing stuff like 'the most', or vague properties like 'easy', "
"'simple', 'lightweight'."
msgstr ""
"Il n'est pas nécessaire de répéter '[App] est …', ni que l'app est libre/"
"open-source (sinon, elle ne serait pas intégrable au catalogue). Évitez les "
"formulations marketing type 'le meilleur', ou les propriétés vagues telles "
"que 'facile', 'simple', 'léger'."
"Il n'est pas nécessaire de répéter '[App] est …', ni que l'app est libre"
"/open-source (sinon, elle ne serait pas intégrable au catalogue). Évitez "
"les formulations marketing type 'le meilleur', ou les propriétés vagues "
"telles que 'facile', 'simple', 'léger'."
#: templates/wishlist_add.html:68
msgid "Project code repository"
@ -486,8 +506,8 @@ msgid ""
"possible case-by-case exceptions for apps which are not-totally-free)"
msgstr ""
"Le projet YunoHost intègrera uniquement des logiciels libre/open-source "
"(avec quelques possibles exceptions au cas-par-cas pour des apps qui ne sont "
"pas entièrement libres)"
"(avec quelques possibles exceptions au cas-par-cas pour des apps qui ne "
"sont pas entièrement libres)"
#: templates/wishlist_add.html:75
msgid "Project website"
@ -495,11 +515,11 @@ msgstr "Site officiel"
#: templates/wishlist_add.html:77
msgid ""
"Please *do not* just copy-paste the code repository URL. If the project has "
"no proper website, then leave the field empty."
"Please *do not* just copy-paste the code repository URL. If the project "
"has no proper website, then leave the field empty."
msgstr ""
"Prière de *ne pas* juste copier-coller l'URL du dépôt de code. Si le projet "
"n'a pas de site web dédié, laissez le champ vide."
"Prière de *ne pas* juste copier-coller l'URL du dépôt de code. Si le "
"projet n'a pas de site web dédié, laissez le champ vide."
#: templates/wishlist_add.html:84
msgid "Submit"
@ -507,3 +527,4 @@ msgstr "Envoyer"
#~ msgid "Please check the license of the app your are proposing"
#~ msgstr "Merci de vérifier la licence de l'app que vous proposez"

View File

@ -197,6 +197,12 @@ description = "Low code platform for creating internal apps, workflows, and admi
upstream = "https://github.com/Budibase/budibase"
website = "https://budibase.com/"
[bukuserver]
name = "bukuserver"
description = "Bookmark manager and personal textual mini-web with browsable front-end on a web server"
upstream = "https://github.com/jarun/buku"
website = ""
[cactus-comments]
name = "Cactus Comments"
description = "Federated comment system, to embed into your webpages, based on the Matrix protocol."
@ -1570,6 +1576,12 @@ description = "Crypto trading bot, automated bitcoin / cryptocurrency trading so
upstream = "https://github.com/Superalgos/Superalgos"
website = "https://superalgos.org/"
[suwayomi]
name = "Suwayomi"
description = "A manga reader server that runs extensions built for Tachiyomi"
upstream = "https://github.com/Suwayomi/Suwayomi-Server"
website = ""
[sympa]
name = "Sympa"
description = "Mailing List manager"