# French translations for PROJECT. # Copyright (C) 2024 ORGANIZATION # This file is distributed under the same license as the PROJECT project. # FIRST AUTHOR , 2024. # msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" "POT-Creation-Date: 2024-05-08 17:57+0200\n" "PO-Revision-Date: 2024-03-31 20:23+0200\n" "Last-Translator: FULL NAME \n" "Language: fr\n" "Language-Team: fr \n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.15.0\n" #: app.py:41 app.py:291 msgid "English" msgstr "Anglais" #: app.py:41 app.py:292 msgid "French" msgstr "Français" #: app.py:100 msgid "Application identifier (id)" msgstr "Identifiant (id) de l'application" #: app.py:101 msgid "Small caps and without spaces" msgstr "En minuscule et sans espace" #: app.py:109 msgid "App name" msgstr "Nom de l'application" #: app.py:110 msgid "It's the application name, displayed in the user interface" msgstr "" "Il s'agit du nom l'application, affiché dans les interfaces " "utilisateur·ice·s" #: app.py:118 msgid "Short description (en)" msgstr "Description courte (en)" #: app.py:119 app.py:126 msgid "" "Explain in a few words (10-15) why this app is useful or what it does " "(the goal is to give a broad idea for the user browsing an hundred apps " "long catalog" msgstr "" "Expliquez en *quelques* (10~15) mots l'utilité de l'app ou ce qu'elle " "fait (l'objectif est de donner une idée grossière pour des utilisateurs " "qui naviguent dans un catalogue de 100+ apps)" #: app.py:125 msgid "Short description (fr)" msgstr "Description courte (fr)" #: app.py:137 msgid "Version" msgstr "Version" #: app.py:143 msgid "Maintainer of the generated app" msgstr "Mainteneur·euse de l'app YunoHost créée" #: app.py:144 msgid "Usually you put your name here... If you're okay with it ;)" msgstr "Généralement vous mettez votre nom ici… Si vous êtes d'accord ;)" #: app.py:148 msgid "Minimal YunoHost version" msgstr "Version YunoHost minimale" #: app.py:149 msgid "Minimal YunoHost version for the application to work" msgstr "Version minimale de Yunohost pour que l'application fonctionne." #: app.py:156 msgid "Supported architectures" msgstr "Architectures supportées" #: app.py:158 msgid "All architectures" msgstr "Toutes les architectures" #: app.py:169 msgid "" "The app can be installed multiple times at the same time on the same " "server" msgstr "" "L'app pourra être installée simultanément plusieurs fois sur la même " "machine" #: app.py:176 msgid "The app will be integrating LDAP" msgstr "L'app s'intègrera avec le LDAP" #: app.py:177 msgid "" "Which means it's possible to use Yunohost credentials to log into this " "app. 'LDAP' corresponds to the technology used by Yunohost to handle a " "centralised user base. Bridging the app and Yunohost's LDAP often " "requires to add the proper technical details in the app's configuration " "file" msgstr "" "C'est-à-dire pouvoir se connecter en utilisant ses identifiants YunoHost." " 'LDAP' corresponds à la technologie utilisée par YunoHost comme base de " "compte utilisateurs centralisée. L'interface entre l'app et le LDAP de " "YunoHost nécessite le plus souvent de remplir des paramètres dans la " "configuration de l'app" #: app.py:181 app.py:195 msgid "No" msgstr "Non" #: app.py:182 app.py:194 msgid "Yes" msgstr "Oui" #: app.py:183 app.py:196 msgid "Not relevant" msgstr "Non pertinent" #: app.py:189 msgid "The app will be integrated in Yunohost SSO (Single Sign On)" msgstr "L'app s'intègrera avec le SSO (Single Sign On) de YunoHost" #: app.py:190 msgid "" "Which means that people will be logged in the app after logging in " "YunoHost's portal, without having to sign on specifically into this app." msgstr "" "Ce qui signifie que les personnes seront logguées dans l'app après s'être" " connectées au portail YunoHost, sans avoir à se connecter spécifiquement" " dans" #: app.py:206 msgid "Licence" msgstr "License" #: app.py:207 msgid "" "You should check this on the upstream repository. The expected format is " "a SPDX id listed in https://spdx.org/licenses/" msgstr "" "Vous devriez chercher cela dans le dépôt du logiciel. Le format attendu " "est un identifiant SPDX listé dans https://spdx.org/licenses/" #: app.py:214 msgid "Official website" msgstr "Site web officiel" #: app.py:215 msgid "Leave empty if there is no official website" msgstr "Laisser vide s'il n'y a pas de site officiel" #: app.py:222 msgid "Official app demo" msgstr "Démo officielle de l'app" #: app.py:223 msgid "Leave empty if there is no official demo" msgstr "Laisser vide s'il n'y a pas de démo officielle" #: app.py:230 msgid "Admin documentation" msgstr "Documentation d'administration" #: app.py:231 msgid "Leave empty if there is no official admin doc" msgstr "Laisser vide s'il n'y a pas de documentation d'administration officielle" #: app.py:238 msgid "Usage documentation" msgstr "Documentation d'utilisation" #: app.py:239 msgid "Leave empty if there is no official user doc" msgstr "Laisser vide s'il n'y a pas de documentation d'utilisation officielle" #: app.py:246 msgid "Code repository" msgstr "Dépôt de code" #: app.py:257 msgid "" "Ask the URL where the app will be installed ('domain' and 'path' " "variables)" msgstr "" "Demander l'URL sur laquelle sera installée l'app (variables 'domain' et " "'path')" #: app.py:262 msgid "Ask domain+path" msgstr "Demander le domaine+chemin" #: app.py:265 msgid "" "Ask only the domain (the app requires to be installed at the root of a " "dedicated domain)" msgstr "" "Demander le domaine uniquement (l'app nécessite d'être installée à la " "racine d'un domaine dédié à cette app)" #: app.py:269 msgid "Do not ask (it isn't a webapp)" msgstr "Ne pas demander (l'app n'est pas une webapp)" #: app.py:274 msgid "Ask who can access to the app" msgstr "Demander qui pourra accéder à l'app" #: app.py:275 msgid "" "In the users groups : by default at least 'visitors', 'all_users' et " "'admins' exists. (It was previously the private/public app concept)" msgstr "" "Parmis les groupes d'utilisateurs : par défaut au moins 'visitors', " "'all_users' et 'admins' existent. (Corresponds anciennement à la notion " "d'app privée/publique)" #: app.py:282 msgid "Ask who can access to the admin interface" msgstr "Demander qui pourra accéder à l'interface d'admin" #: app.py:283 msgid "In the case where the app has an admin interface" msgstr "Ceci suppose a priori que l'app dispose d'une interface d'admin" #: app.py:288 msgid "Supported languages" msgstr "Langues supportées" #: app.py:290 msgid "None / not relevant" msgstr "Aucune / non pertinent" #: app.py:293 msgid "Spanish" msgstr "Espagnol" #: app.py:294 msgid "Italian" msgstr "Italien" #: app.py:295 msgid "German" msgstr "Allemand" #: app.py:296 msgid "Chinese" msgstr "Chinois" #: app.py:297 msgid "Japanese" msgstr "Japonais" #: app.py:298 msgid "Danish" msgstr "Danois" #: app.py:299 msgid "Portugese" msgstr "Portugais" #: app.py:300 msgid "Dutch" msgstr "Néerlandais" #: app.py:301 msgid "Russian" msgstr "Russe" #: app.py:313 msgid "Application source code or executable" msgstr "Code source ou exécutable de l'application" #: app.py:320 msgid "Sources sha256 checksum" msgstr "Empreinte sha256 des sources" #: app.py:328 msgid "Enable automatic update of sources (using a bot running every night)" msgstr "" "Activer le robot de mise à jour automatique des sources (via un robot " "chaque nuit)" #: app.py:329 msgid "" "If the upstream software is hosted in one of the handled sources and " "publishes proper releases or tags, the bot will create a pull request to " "update the sources URL and checksum" msgstr "" "Si le logiciel est disponible sur une des sources prises en charge et " "publie des releases ou des tags pour ses nouvelles versions, un robot " "proposera automatiquement des mises à jour de l'URL et de la checksum." #: app.py:351 msgid "Dependencies to be installed via apt (separated by comma and/or spaces)" msgstr "Dépendances à installer via apt (séparées par des virgules et/ou espaces)" #: app.py:358 msgid "Initialize an SQL database" msgstr "Initialiser une base de données SQL" #: app.py:368 msgid "Initialize a system user for this app" msgstr "Initialiser un utilisateur système pour cet app" #: app.py:373 msgid "Initialize an installation folder for this app" msgstr "Initialiser un dossier d'installation de l'app" #: app.py:374 msgid "By default it's /var/www/$app" msgstr "Par défaut il s'agit de /var/www/$app" #: app.py:379 msgid "Initialize a folder to store the app data" msgstr "Initialiser un dossier destiné à stocker les données de l'app" #: app.py:380 msgid "By default it's /var/yunohost.app/$app" msgstr "Par défaut il s'agit de /home/yunohost.app/$app" #: app.py:388 msgid "App main technology" msgstr "Technologie principale de l'app" #: app.py:390 msgid "None / Static application" msgstr "Aucune / application statique" #: app.py:395 msgid "Other" msgstr "Autre" #: app.py:402 msgid "Installation specific commands" msgstr "Commandes spécifiques d'installation" #: app.py:403 msgid "" "These commands are executed from the app installation folder (by default," " /var/www/$app) after the sources have been deployed. This field uses by " "default a classic example based on the selected technology. You should " "probably compare and adapt it according to the app installation " "documentation" msgstr "" "Ces commandes seront éxécutées depuis le répertoire d'installation de " "l'app (par défaut, /var/www/$app) après que les sources aient été " "déployées. Le champ est pré-rempli avec un exemple classique basé sur la " "technologie sélectionnée. Vous devriez sans-doute le comparer et " "l'adapter en fonction de la documentation d'installation de l'app." #: app.py:415 msgid "Use composer" msgstr "Utiliser composer" #: app.py:416 msgid "Composer is a PHP dependencies manager used by some apps" msgstr "Composer est un gestionnaire de dépendance PHP utilisé par certaines apps" #: app.py:425 msgid "NodeJS version" msgstr "Version de NodeJS" #: app.py:426 msgid "For example: 16.4, 18, 18.2, 20, 20.1, ..." msgstr "Par exemple: 16.4, 18, 18.2, 20, 20.1, ..." #: app.py:433 msgid "Install and use Yarn" msgstr "Installer et utiliser Yarn" #: app.py:440 msgid "Command to start the app daemon (from systemd service)" msgstr "Commande pour lancer le daemon de l'app (depuis le service systemd)" #: app.py:441 msgid "" "Corresponds to 'ExecStart' statement in systemd. You can use " "'__INSTALL_DIR__' to refer to the install directory, or '__APP__' to " "refer to the app id" msgstr "" "Correspond à l'intruction 'ExecStart' dans systemd. Vous pouvez utiliser " "'__INSTALL_DIR__' pour faire référence directory, our '__APP__' pour " "l'identifiant de l'application" #: app.py:453 msgid "The app uses a specific configuration file" msgstr "L'app utilise un fichier de configuration spécifique" #: app.py:454 msgid "Usually : .env, config.json, conf.ini, params.yml, ..." msgstr "Typiquement : .env, config.json, conf.ini, params.yml, ..." #: app.py:459 msgid "Name or file path to use" msgstr "Nom ou chemin du fichier à utiliser" #: app.py:467 msgid "App configuration file pattern" msgstr "Modèle de fichier de configuration de l'app" #: app.py:468 msgid "" "In this pattern, you can use the syntax __FOO_BAR__ which will " "automatically replaced by the value of the variable $foo_bar" msgstr "" "Dans ce modèle, vous pouvez utilisez la syntaxe __FOO_BAR__ qui sera " "automatiquement remplacé par la valeur de la variable $foo_bar" #: app.py:479 msgid "" "doc/DESCRIPTION.md: A comprehensive presentation of the app, possibly " "listing the main features, possible warnings and specific details on its " "functioning in Yunohost (e.g. warning about integration issues)." msgstr "" "doc/DESCRIPTION.md : Une présentation plus complète que le résumé rempli " "plus haut de ce à quoi correspond le logiciel, et les avertissements et " "précisions éventuelles sur son fonctionnement dans Yunohost (c'est " "l'endroit où l'on signale des problèmes d'intégrations)." #: app.py:488 msgid "" "doc/PRE_INSTALL.md: important info to be shown to the admin before " "installing the app" msgstr "" "doc/PRE_INSTALL.md : info importantes à montrer aux admins avant " "l'installation de l'app" #: app.py:491 app.py:501 app.py:511 app.py:521 app.py:529 msgid "Leave empty if not relevant" msgstr "Laisser vide si pas pertinent" #: app.py:498 msgid "" "doc/POST_INSTALL.md: important info to be shown to the admin after " "installing the app" msgstr "" "doc/POST_INSTALL.md : infos importantes à montrer aux admins après " "l'installation de l'app" #: app.py:508 msgid "" "doc/PRE_UPGRADE.md: important info to be shown to the admin before " "upgrading the app" msgstr "" "doc/PRE_UPGRADE.md : infos importantes à montrer aux admins avant la mise" " à jour de l'app" #: app.py:518 msgid "" "doc/POST_UPGRADE.md: important info to be shown to the admin after " "upgrading the app" msgstr "" "doc/POST_UPGRADE.md : infos importantes à montrer aux admins après la " "mise à jour de l'app" #: app.py:528 msgid "doc/ADMIN.md: general tips on how to administrate this app" msgstr "doc/ADMIN.md : indications générales pour administrer l'app" #: app.py:540 msgid "Handle app install URL change (change_url script)" msgstr "Gérer le changement d'URL d'installation (script change_url)" #: app.py:543 msgid "Should changing the app URL be allowed ? (change_url change)" msgstr "" "Faut-il permettre le changement d'URL pour l'application ? (fichier " "change_url)" #: app.py:548 msgid "Use logrotate for the app logs" msgstr "Utiliser logrotate pour les journaux de l'app" #: app.py:551 msgid "" "If the app generates logs, this option permit to handle their archival. " "Recommended." msgstr "" "Si l'application genère des journaux (log), cette option permet d'en " "gérer l'archivage. Recommandé." #: app.py:559 msgid "Protect the application against brute force attacks (via fail2ban)" msgstr "Protéger l'application des attaques par force brute (via fail2ban)" #: app.py:562 msgid "" "If the app generates failed connexions logs, this option allows to " "automatically banish the related IP after a certain number of failed " "password tries. Recommended." msgstr "" "Si l'application genère des journaux (log) d'erreurs de connexion, cette " "option permet de bannir automatiquement les IP au bout d'un certain " "nombre d'essais de mot de passe. Recommandé." #: app.py:568 msgid "Add a CRON task for this application" msgstr "Ajouter une tâche CRON pour cette application" #: app.py:569 msgid "Corresponds to some app periodic operations" msgstr "Corresponds à des opérations périodiques de l'application" #: app.py:573 msgid "Type the CRON file content" msgstr "Saisissez le contenu du fichier CRON" #: app.py:582 msgid "Regular expression for fail2ban" msgstr "Expression régulière pour fail2ban" #: app.py:586 msgid "A regular expression" msgstr "Une expression régulière" #: app.py:588 msgid "" "Regular expression to check in the log file to activate failban (search " "for a line that indicates a credentials error)." msgstr "" "Expression régulière à vérifier dans le journal pour que fail2ban " "s'active (cherchez une ligne qui indique une erreur d'identifiants de " "connexion)." #: app.py:612 msgid "Generator mode" msgstr "Mode du générateur" #: app.py:613 msgid "" "In tutorial version, the generated app will contain additionnal comments " "to ease the understanding. In steamlined version, the generated app will " "only contain the necessary minimum." msgstr "" "En mode tutoriel, l'application générée contiendra des commentaires " "additionnels pour faciliter la compréhension. En version épurée, " "l'application générée ne contiendra que le minimum nécessaire." #: app.py:617 msgid "Streamlined version" msgstr "Version épurée" #: app.py:618 msgid "Tutorial version" msgstr "Version tutoriel" #: app.py:624 msgid "Previsualise" msgstr "Prévisualiser" #: app.py:625 msgid "Download the .zip" msgstr "Télécharger le .zip" #: app.py:627 msgid "Fill with demo values" msgstr "Remplir avec des valeurs de démonstration" #: app.py:630 msgid "" "Generate a complete and functionnal minimalistic app that you can iterate" " from" msgstr "" "Générer une application minimaliste complète et fonctionnelle à partir de" " laquelle itérer" #: templates/base.html:4 templates/index.html:60 msgid "YunoHost package generator" msgstr "Générateur de paquet YunoHost" #: templates/index.html:80 msgid "The form contains issues" msgstr "Le formulaire contient des problèmes" #: templates/index.html:88 msgid "1/9 - General information" msgstr "1/9 - Informations générales" #: templates/index.html:103 msgid "2/9 - Upstream information" msgstr "2/9 - Informations sur l'upstream" #: templates/index.html:106 msgid "" "The word 'upstream' refers to the original project that develops and " "maintains the app" msgstr "" "Le terme 'upstream' désigne le projet original qui développe et maintient" " l'app" #: templates/index.html:121 msgid "3/9 - Integration in YunoHost" msgstr "3/9 - Intégration dans YunoHost" #: templates/index.html:137 msgid "4/9 - Questions to ask during installation" msgstr "4/9 - Questions à poser pendant l'installation" #: templates/index.html:141 msgid "This part is meant to indicate the questions that will be asked." msgstr "Cette partie sert à indiquer les questions qui devront être posées." #: templates/index.html:143 msgid "" "NB: only standard questions are asked here, it might be required to " "complete it by hand using other questions as a guide." msgstr "" "NB: seules des questions standard sont proposées ici, il faudra " "éventuellement compléter à la main en suivant le modèle des autres " "questions." #: templates/index.html:157 msgid "5/9 - Resources to initialize" msgstr "5/9 - Ressources à initialiser" #: templates/index.html:161 msgid "" "Technical elements configured before launching the 'real' app install " "script. Usually : creating a system user, downloading app sources, " "initialiser le dossier d'install et de données, install apt dependencies," " create a database, ..." msgstr "" "Il s'agit d'éléments techniques configurés avant que le 'vrai' script " "d'install de l'app ne soit lancé. Typiquement : créer un user système, " "télécharger les sources de l'app, initialiser le dossier d'install et de " "données, installer des dépendances avec apt, créer une base de données, " "..." #: templates/index.html:184 msgid "6/9 - Specific technology" msgstr "6/9 - Technologie spécifique" #: templates/index.html:189 msgid "" "You probably want to make sure to have 'phpX.Y-fpm' and others " "'phpX.Y-foobar' libraries listed the apt dependencies earlier (with X.Y " "being the php version you want to use)" msgstr "" "Vous voulez probablement vous assurer d'avoir 'phpX.Y-fpm' and autres " "librairies 'phpX.Y-foobar' listées dans les dépendances apt (X.Y étant la" " version de PHP que vous voulez utiliser)" #: templates/index.html:190 msgid "" "The generated application draft will include an nginx configuration " "snippet that interfaces with PHP-FPM" msgstr "" "Le brouillon de l'application inclura une configuration nginx qui " "s'interface avec PHP-FPM" #: templates/index.html:198 msgid "" "You probably want to make sure to have 'python3' and 'python3-venv' " "listed in the apt dependencies earlier. Other dependencies should be " "installed inside a venv (cf the proposed install snippet)" msgstr "" "Vous voulez probablement vous assurer d'avoir 'python3' et 'python3-venv'" " listés dans les dépendances apt. Les autres dépendences devront être " "installées dans un venv" #: templates/index.html:202 msgid "" "The generated application draft will include an nginx configuration " "snippet that reverse-proxies to a systemd service using an internal port" msgstr "" "Le brouillon de l'application inclura une configuration nginx qui " "redirige vers le service systemd en utilisant un port interne" #: templates/index.html:270 msgid "7/9 - App configuration" msgstr "7/9 - Configuration de l'app" #: templates/index.html:294 msgid "8/9 - General and advanced documentation" msgstr "8/9 - Documentation générale et avancée" #: templates/index.html:308 msgid "9/9 - Advanced options" msgstr "9/9 - Options avancées"