Files
abonnel-www/3c0dbff9-caa3-4fc9-b58b-20b33a88013c/index.md
T

2.2 KiB

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.