Problème de "locale"

Salut,

Je viens d’installer une Debian wheezy (hybride), j’ai quelques problèmes avec les “locales”. J’ai beau avoir édité “/etc/default/locale” puis exécuté “locale-gen”, exécuté “dpkg-reconfigure locales” et relancé ma session, rien n’y fait, quand je lance “locale” en root ou avec un user, le résultat est différent.

Le résultat avec root est celui attendu (correspondant au contenu de “/etc/default/locale”).

Je ne comprends pas pourquoi les valeurs des locales pour les users diffèrent.

Une idée ?

Merci d’avance :slightly_smiling:

user@pc ~ cat /etc/default/locale # ok

# File generated by update-locale LANG=en_US.UTF-8 LANGUAGE=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC=fr_FR.UTF-8 LC_TIME=en_GB.UTF-8 LC_COLLATE="en_US.UTF-8" LC_MONETARY=fr_FR.UTF-8 LC_MESSAGES="en_US.UTF-8" LC_PAPER=en_GB.UTF-8 LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION="en_US.UTF-8" LC_ALL=
root@pc ~ locale # ok

LANG=en_US.UTF-8 LANGUAGE=en_US.UTF-8 LC_CTYPE=en_US.UTF-8 LC_NUMERIC=fr_FR.UTF-8 LC_TIME=en_GB.UTF-8 LC_COLLATE=en_US.UTF-8 LC_MONETARY=fr_FR.UTF-8 LC_MESSAGES=en_US.UTF-8 LC_PAPER=en_GB.UTF-8 LC_NAME=en_US.UTF-8 LC_ADDRESS=en_US.UTF-8 LC_TELEPHONE=en_US.UTF-8 LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=en_US.UTF-8 LC_ALL=
user@pc ~ locale # nope

LANG=C LANGUAGE= LC_CTYPE=en_US.UTF-8 LC_NUMERIC=en_US.utf8 LC_TIME=en_US.utf8 LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.utf8 LC_MESSAGES=en_US.UTF-8 LC_PAPER=en_GB.UTF-8 LC_NAME=en_US.UTF-8 LC_ADDRESS=en_US.UTF-8 LC_TELEPHONE=en_US.UTF-8 LC_MEASUREMENT=en_US.utf8 LC_IDENTIFICATION=en_US.UTF-8 LC_ALL=

Export LC_ALL=xy
Ou xy est le nom de ta langue (fr_FR.UTF-8)

Bonjour, merci pour ta réponse.

Il est écrit verbatim dans la doc qu’il faut éviter de forcer la réécriture de toutes les variables en attribuant une valeur à LC_ALL.

Donc je ne pense pas que ce soit une solution viable.

Salut,

Ensuite, tu intègres :

Pour ma part, ça fonctionne très bien.

Bonjour,

Merci pour ta réponse.

[quote=“stef157”]export LC_ALL=fr_BE.UTF-8
Pour ma part, ça fonctionne très bien.[/quote]
Je n’en doute pas, mais cette méthode est explicitement déconseillée par le wiki (notamment) et a pour effet d’attribuer à toutes les variables lc_ une valeur donnée, ce que je ne souhaite pas faire.

Je souhaite pouvoir attribuer des valeurs différentes à différentes variables.

Up :blush:

bonjour.

chez moi:

avram@sdb5:~$ cat /etc/default/locale

File generated by update-locale

LANG="fr_FR.UTF-8"
avram@sdb5:~$

chez vous:

user@pc ~ cat /etc/default/locale # ok
Code:

File generated by update-locale

LANG=en_US.UTF-8
LANGUAGE=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=fr_FR.UTF-8
LC_TIME=en_GB.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=fr_FR.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=en_GB.UTF-8
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT=en_GB.UTF-8
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

root@sdb5:/home/avram# locale
LANG=fr_FR.UTF-8
LANGUAGE=
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=

@ lvlup
Pourrais-tu (depuis le compte root) donner le retour de :

Bonjour,

Hop :

root@pc ~ apt-cache policy localepurge localepurge: Installed: (none) Candidate: 0.6.3+deb7u1 Version table: 0.6.3+deb7u1 0 500 http://ftp.de.debian.org/debian/ wheezy/main amd64 Packages
La description du paquet n’incite pas vraiment à son installation :slightly_smiling:

[quote] Please note, that this tool is a hack which is not integrated with Debian’s package management system and therefore is not for the faint of heart. This program interferes with the Debian package management and does provoke strange, but usually harmless, behaviour of programs related with apt/dpkg like dpkg-repack, reportbug, etc. Responsibility for its usage and possible breakage of your system therefore lies in the sysadmin’s (your) hands.

Please definitely do abstain from reporting any such bugs blaming localepurge if you break your system by using it. If you don’t know what you are doing and can’t handle any resulting breakage on your own then please simply don’t use this package. [/quote]

[quote]…La description du paquet n’incite pas vraiment à son installation…[/quote]C’est pour cela que voulais être sûr qu’il ne l’ait pas été,

maintenant, on est sûr que le problème ne vient pas de la présence de ce paquetage.

Ok.

C’est vraiment une fresh install, j’ai sélectionné “en_US.UTF-8” comme locale durant le processus d’installation (comme je l’ai toujours fait) puis n’ai plus touché aux locales jusqu’à réaliser que mon shell était en “C” et que je ne pouvais pas me loger en root car le password contient des caractères accentués (en pratique, je peux le faire, il suffit que je force les options de charset via le menu).

Je n’ai rien installé pour éviter de me retrouver avec des configuration de langue à la con.

Au delà du wiki, du man, y aurait il d’autres ressources décrivant la configuration des locales par utilisateur ?

Je ne peux pas croire qu’un truc aussi fondamental ne soit pas documenté.

(j’ai posé une question identique sur le forum anglais et je n’ai, jusqu’à présent, pas eu plus de chance)