# Définir la locale par défaut sur Raspberry Pi OS Dans un terminal Linux sous Raspberry Pi OS, l'exécution d'une commande comme `apt update` peut afficher l'avertissement suivant : ``` perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LC_CTYPE = "fr_FR.UTF-8", LANG = "en_GB.UTF-8" are supported and installed on your system. perl: warning: Falling back to a fallback locale ("en_GB.UTF-8"). locale: Cannot set LC_CTYPE to default locale: No such file or directory locale: Cannot set LC_ALL to default locale: No such file or directory ``` Ce message indique que les locales déclarées dans l'environnement ne sont pas installées sur le système. Pour lister les locales actuellement disponibles : ``` localectl list-locales ``` Voici la procédure pour activer la locale `fr_FR.UTF-8` et la définir comme locale par défaut. ## 1. Activer la locale dans `/etc/locale.gen` Le fichier `/etc/locale.gen` liste les locales connues, la plupart commentées. On dé-commente la ligne correspondant à `fr_FR.UTF-8` : ``` sudo sed -i 's/^# *\(fr_FR.UTF-8\)/\1/' /etc/locale.gen ``` ## 2. Générer les fichiers de locale ``` sudo locale-gen ``` Cette commande compile, à partir de `/etc/locale.gen`, les fichiers nécessaires au système. ## 3. Définir la locale par défaut `update-locale` met à jour `/etc/default/locale` afin que les variables d'environnement soient correctement positionnées pour tous les comptes : ``` sudo update-locale LANG=fr_FR.UTF-8 LANGUAGE=fr_FR.UTF-8 LC_ALL=fr_FR.UTF-8 ``` ## 4. Vérifier Fermer la session (ou redémarrer la machine), puis vérifier la configuration avec : ``` locale ``` Le résultat attendu : ``` LANG=fr_FR.UTF-8 LANGUAGE=fr_FR.UTF-8 LC_CTYPE="fr_FR.UTF-8" LC_NUMERIC="fr_FR.UTF-8" LC_TIME="fr_FR.UTF-8" LC_COLLATE="fr_FR.UTF-8" LC_MONETARY="fr_FR.UTF-8" LC_MESSAGES="fr_FR.UTF-8" LC_PAPER="fr_FR.UTF-8" LC_NAME="fr_FR.UTF-8" LC_ADDRESS="fr_FR.UTF-8" LC_TELEPHONE="fr_FR.UTF-8" LC_MEASUREMENT="fr_FR.UTF-8" LC_IDENTIFICATION="fr_FR.UTF-8" LC_ALL=fr_FR.UTF-8 ``` Les commandes ultérieures (`apt update`, scripts Perl, etc.) ne devraient plus produire d'avertissement sur les locales.