Como você fez a correção do locale?
Roda o comando $ locale
e verifica a saída, se está tudo correto
Comunidade Lusófona de entusiastas Linux.
Bem vindo ao nosso agregado de links sobre Linux.
Como você fez a correção do locale?
Roda o comando $ locale
e verifica a saída, se está tudo correto
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=pt_BR
LC_CTYPE="pt_BR"
LC_NUMERIC="pt_BR"
LC_TIME="pt_BR"
LC_COLLATE="pt_BR"
LC_MONETARY="pt_BR"
LC_MESSAGES="pt_BR"
LC_PAPER="pt_BR"
LC_NAME="pt_BR"
LC_ADDRESS="pt_BR"
LC_TELEPHONE="pt_BR"
LC_MEASUREMENT="pt_BR"
LC_IDENTIFICATION="pt_BR"
LC_ALL=
Esses erros aí em cima eu corrigi com: export LC_ALL="pt_BR.UTF-8"
Agora vai sem erros:
LANG=pt_BR
LC_CTYPE="pt_BR.UTF-8"
LC_NUMERIC="pt_BR.UTF-8"
LC_TIME="pt_BR.UTF-8"
LC_COLLATE="pt_BR.UTF-8"
LC_MONETARY="pt_BR.UTF-8"
LC_MESSAGES="pt_BR.UTF-8"
LC_PAPER="pt_BR.UTF-8"
LC_NAME="pt_BR.UTF-8"
LC_ADDRESS="pt_BR.UTF-8"
LC_TELEPHONE="pt_BR.UTF-8"
LC_MEASUREMENT="pt_BR.UTF-8"
LC_IDENTIFICATION="pt_BR.UTF-8"
LC_ALL=pt_BR.UTF-8
Mas no próximo boot, LC_ALL não está setado
Eu corrigi o locale naquele arquivo, /etc/locale.conf, eu tinha escrito errado, e corrigi agora a pouco.
De acordo com esse passo na arch wiki:
Create the locale.conf(5) file, and set the LANG variable accordingly:
/etc/locale.conf
---------------------
LANG=en_US.UTF-8
No meu tá assim:
LANG=pt_BR.UTF-8
Opa! O problema era o LC_ALL mesmo
echo "LC_ALL=pt_BR.UTF-8" | sudo tee -a /etc/environment
Isso aí resolveu, valeu!
Você não deve usar LC_ALL
como variável de ambiente. LC_ALL
é só pra debug
Faz o seguinte:
Vai em /etc/locale.gen
e tenha certeza que pt_BR.UTF-8 UTF-8
está descomentado
Então rode
# locale-gen
Depois roda o seguinte comando:
# localectl set-locale LANG=pt_BR.UTF-8
Pra aplicar imediatamente, roda os comandos
$ unset LANG
$ source /etc/profile.d/locale.sh
Imagino que com isso você conseguirá fazer funcionar direitinho
Qualquer coisa dá uma lida no Arch Wiki referente a locales
https://wiki.archlinux.org/title/locale
Edit:
O problema reside no fato de que não existe locale pt_BR
. O correto é pt_BR.UTF-8
Quando você usa o LC_ALL
ele sobrescreve todos os outros locales. Inclusive é por isso que ele não deve ser usado fora de ambiente de debug. A questão aqui é que no LC_ALL
você colocou o locale correto, então pareceu uma solução. Mas a solução mesmo é você alterar todas as variáveis para o locale correto, pt_BR.UTF-8
, desativando o LC_ALL
Ahhhh, por isso que não funcionava no meu também. Vou poder tirar a minha gambiarra do sistema