# [Corrigé] Problème de localisation

## destroyedlolo

Bonjour,

Depuis quelques semaines, j'ai un pb de localisation sur plusieurs de mes systèmes.

Sur le premier, il a basculé à C.utf8 ... Un

```
eselect locale set 7
```

plus tard, j'ai toujours XFCE en englais.

Sur un second système, eselect semble avoir fonctionné, mais j'ai eu des 

```
# eselect locale set 7

/usr/bin/locale: Cannot set LC_CTYPE to default locale: No such file or directory

/usr/bin/locale: Cannot set LC_MESSAGES to default locale: No such file or directory

/usr/bin/locale: Cannot set LC_COLLATE to default locale: No such file or directory

Setting LANG to fr_FR@euro ...

Run ". /etc/profile" to update the variable in your shell.

```

Quelq'un aurait-il des idées pour corrigé ce pb ?

MerciLast edited by destroyedlolo on Sat May 11, 2019 8:55 pm; edited 1 time in total

----------

## sdauth

Ma conf si ça peut te dépanner :

/etc/locale.gen

```
en_US ISO-8859-1

en_US.UTF-8 UTF-8

fr_FR.UTF-8 UTF-8

fr_FR ISO-8859-1
```

/etc/env.d/02locale

```
LANG="fr_FR.UTF-8"

LC_COLLATE="C"
```

dispatch-conf && locale-gen

env-update && source /etc/profile

locale -a

----------

## destroyedlolo

Salut,

Bon bien, maj d'un 2nd système : même motif, même punissions, il est passé à l'anglais   :Confused: 

J'ai regénéré mes locale car avant j'utilisais fr_FR qui est remplacé par fr_FR.utf8.

J'ai bien

```
# eselect locale list

Available targets for the LANG variable:

  [1]   C

  [2]   C.utf8

  [3]   POSIX

  [4]   fr_FR

  [5]   fr_FR.iso88591

  [6]   fr_FR.iso885915@euro

  [7]   fr_FR.utf8 *

  [8]   fr_FR@euro

  [ ]   (free form)

```

et mon 

```
# cat /etc/env.d/02locale

# Configuration file for eselect

# This file has been automatically generated.

LANG="fr_FR.utf8"

```

donc correcte.

Sauf que dans un shell, seule la variable LANG est défini et contient

```
LANG=C.utf8
```

Bref, on dirait que la local système n'est plus pris en compte ...

----------

## Syl20

Problème de permissions sur le fichier /etc/env.d/02locale ? Il doit être lisible par tout le monde.

----------

## destroyedlolo

Bon, j'ai fini par trouver et c'était un peu tordu : 

Le font du problème est que la définition des locales a changé. Ainsi, mon ancien 

```
fr_FR UTF-8
```

 a été changé par 

```
fr_FR.UTF-8 UTF-8
```

 ce qui a rendu ma locale invalide et a été dégradé en C.UTF8.

J'ai corrigé, mais ce que je n'avais pas vu, c'est qu'il y a une option dans lightDM pour indiquer la langue que l'on veut ... du coup, même après la regénération des locale et le eselect qui va bien, lightDM forcait quand même à C.

Bref, tout est revenu dans l'ordre.

----------

