Ajoute les mises à jour autonomes

Les installations hors YunoHost peuvent désormais vérifier et installer une release Forgejo avec sauvegarde et retour arrière complet.
This commit is contained in:
Alexandre NOEL 2026-09-08 20:13:55 +02:00
commit 53e79a72d7
25 changed files with 1146 additions and 61 deletions

View file

@ -127,4 +127,75 @@ return [
'care.noon'=>'midi','care.afternoon'=>'après-midi','rooms.admission_rules'=>'Critères d’accueil facultatifs','rooms.care_periods'=>'Tournées prévues dans cette salle','rooms.period_required'=>'Sélectionnez au moins un créneau de tournée par salle.','rooms.animal_not_allowed'=>'Cet animal ne correspond pas aux critères d’accueil de la salle choisie.',
'pricing.before_sterilization'=>'Avant stérilisation','pricing.after_sterilization'=>'Après stérilisation','pricing.free_fee'=>'Tarif libre','pricing.free'=>'Libre','pricing.adoption_fees_help'=>'Montants indicatifs par espèce. Activez « Tarif libre » lorsqu’aucun montant fixe n’est imposé.','animal.sterilization_auto_free'=>'Le tarif d’adoption de cette espèce reste libre après la stérilisation.',
'pricing.delete_confirm'=>'Supprimer ce tarif ? Les dépenses déjà enregistrées conserveront leur libellé et leur montant.','pricing.edit_tariff'=>'Modifier le tarif',
'settings.updates'=>'Mises à jour',
'updates.title'=>'Paramètres — Mises à jour',
'updates.heading'=>'Mises à jour de Globinours',
'updates.intro'=>'Vérification, sauvegarde, installation et retour arrière depuis un même écran.',
'updates.version_status'=>'État de la version',
'updates.installed_version'=>'Version installée',
'updates.available_version'=>'Dernière version connue',
'updates.last_check'=>'Dernière vérification',
'updates.available'=>'La version :version est disponible.',
'updates.available_short'=>'Mise à jour disponible',
'updates.current'=>'Globinours est à jour.',
'updates.checked'=>'La recherche de mise à jour est terminée.',
'updates.check_error'=>'La dernière vérification a échoué : :error',
'updates.check_now'=>'Rechercher maintenant',
'updates.release_notes'=>'Consulter les notes de version',
'updates.preflight'=>'Compatibilité de l’hébergement',
'updates.check_php'=>'Version de PHP',
'updates.check_zip'=>'Création des sauvegardes ZIP',
'updates.check_phar'=>'Lecture des archives TAR',
'updates.check_root'=>'Écriture des fichiers applicatifs',
'updates.check_public'=>'Écriture des ressources publiques',
'updates.check_storage'=>'Écriture du stockage privé',
'updates.check_disk'=>'Espace disque disponible',
'updates.unknown'=>'Inconnu',
'updates.automatic'=>'Mise à jour officielle',
'updates.automatic_help'=>'La dernière release stable est relue sur Forgejo, puis son archive et son empreinte SHA-256 sont contrôlées avant toute modification.',
'updates.password'=>'Mot de passe administrateur',
'updates.backup_and_install'=>'Sauvegarder et mettre à jour',
'updates.manual_archive'=>'Installation manuelle',
'updates.manual_help'=>'Pour un serveur sans accès sortant, téléversez l’archive officielle et recopiez son empreinte SHA-256.',
'updates.archive'=>'Archive Globinours (.tar.gz)',
'updates.sha256'=>'Empreinte SHA-256 publiée avec la release',
'updates.install_archive'=>'Vérifier et installer',
'updates.install_confirm'=>'Lancer la mise à jour ? Une sauvegarde complète sera créée et vérifiée avant l’installation.',
'updates.installed'=>'Globinours :version est installé. La sauvegarde de retour arrière a été conservée.',
'updates.failed'=>'Mise à jour impossible :',
'updates.rollback'=>'Retour à la version précédente',
'updates.rollback_help'=>'La version :version et les données sauvegardées avant la mise à jour du :date sont disponibles.',
'updates.rollback_data_warning'=>'Les modifications saisies après cette sauvegarde seront remplacées. Une sauvegarde de l’état actuel sera créée avant le retour arrière.',
'updates.rollback_confirm'=>'Revenir à la version précédente ? Les données seront replacées dans l’état précédant la mise à jour.',
'updates.rollback_button'=>'Revenir à :version',
'updates.privacy'=>'La vérification transmet uniquement la version de Globinours dans l’identifiant HTTP. Aucune donnée du refuge n’est envoyée.',
'updates.password_invalid'=>'Le mot de passe administrateur est incorrect.',
'updates.temp_failed'=>'Impossible de préparer le fichier temporaire.',
'updates.archive_invalid'=>'L’archive de mise à jour est absente, trop volumineuse ou invalide.',
'updates.hash_mismatch'=>'L’empreinte SHA-256 ne correspond pas à l’archive.',
'updates.preflight_failed'=>'Le contrôle « :check » empêche la mise à jour automatique.',
'updates.locked'=>'Une autre mise à jour est déjà en cours.',
'updates.maintenance_failed'=>'Le mode maintenance n’a pas pu être activé.',
'updates.not_newer'=>'La version :version n’est pas plus récente que la version installée.',
'updates.rollback_failed'=>'La mise à jour a échoué (:update) et le retour arrière automatique a également échoué (:rollback).',
'updates.no_rollback'=>'Aucun retour arrière complet n’est disponible.',
'updates.release_invalid'=>'La réponse de la forge ne contient pas une liste de releases valide.',
'updates.no_release'=>'Aucune release stable complète n’est encore publiée sur ce dépôt.',
'updates.repository_invalid'=>'L’adresse du dépôt Forgejo est invalide.',
'updates.checksum_missing'=>'La release ne contient ni fichier SHA256SUMS ni empreinte associée à son archive.',
'updates.checksum_invalid'=>'L’empreinte de l’archive est absente ou invalide dans la release.',
'updates.php_incompatible'=>'Cette version nécessite PHP :version ou plus récent.',
'updates.curl_missing'=>'L’extension cURL est nécessaire pour les mises à jour en ligne.',
'updates.network_failed'=>'Le téléchargement a échoué (:error).',
'updates.url_invalid'=>'L’adresse de mise à jour doit être une URL HTTPS sûre.',
'updates.archive_unsafe'=>'L’archive contient un chemin ou un lien symbolique dangereux.',
'updates.archive_too_large'=>'Le contenu décompressé de l’archive dépasse les limites autorisées.',
'updates.extract_failed'=>'Impossible d’extraire complètement l’archive.',
'updates.release_missing'=>'La release ne contient pas le composant requis : :path.',
'updates.symlink_refused'=>'Le lien symbolique :path ne peut pas être intégré au code.',
'updates.copy_failed'=>'Impossible de copier le fichier :path.',
'updates.postcheck_failed'=>'Les contrôles effectués après l’installation ont échoué.',
'updates.directory_failed'=>'Impossible de préparer le dossier :path.',
'updates.download_log'=>'Télécharger le journal technique',
'updates.log_missing'=>'Aucun journal de mise à jour n’est disponible.',
];