
Estou executando o Manjaro Gnome e instalei algumas atualizações com o gerenciador de pacotes. Desde então, continuo recebendo estas mensagens no console:
manpath: can't set the locale; make sure $LC_* and $LANG are correct
(anon):12: character not in range
manpath: can't set the locale; make sure $LC_* and $LANG are correct
Correr locale
me dá esta saída:
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=en_US.UTF-8
LC_CTYPE=
LC_NUMERIC=en_US.UTF-8
LC_TIME=en_US.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=en_US.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=en_US.UTF-8
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT=en_US.UTF-8
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
Quando executo sudo locale-gen
recebo uma mensagem de erro informando que arquivos ou diretórios não existem
Generating locales...
de_DE.UTF-8...failed to set locale!
[error] cannot open locale definition file `i18n_ctype': No such file or directory
de_DE.UTF-8 UTF-8
quando comento /etc/locale.gen
(então a única linha não comentada é en_US.UTF-8 UTF-8
), recebo:
Generating locales...
en_US.UTF-8...failed to set locale!
[error] cannot open locale definition file `en_GB': No such file or directory
Este é o conteúdo de /usr/share/i18n/locales
:
de_DE translit_combining
en_US translit_compat
i18n translit_font
iso14651_t1 translit_fraction
iso14651_t1_common translit_hangul
iso14651_t1_pinyin translit_narrow
translit_circle translit_neutral
translit_cjk_compat translit_small
translit_cjk_variants translit_wide
Parece que os arquivos en_GB
estão i18n_ctype
realmente faltando (embora eu não tenha certeza se eles deveriam estar nesta pasta)
Além disso, se eu for aoConfigurações->Região e Idioma, não posso mudar oLinguagem(diz Unspecified [ANSI_X3.4-1968]
. Se eu clicar nele, não há nada para selecionar noSelecione o idiomaAparecer.
Descobri online que o problema poderia ser glibc
(e de acordo com o histórico glibc
foi reinstalado durante a atualização que executei [2020-08-11T18:49:33+0200] [ALPM] reinstalled glibc (2.31-5)
). No entanto, não sei como consertar isso. Não há botão de reinstalação do glibc no gerenciador de pacotes, e não quero fazer nenhum experimento onde possa acabar em uma bagunça maior.
Existe uma maneira de reinstalar/redefinir os arquivos de idioma?
Atualizar
Eu uso NoExtract
para /etc/pacman.conf
economizar espaço no disco rígido, conforme descrito no [Arch wiki] (https://wiki.archlinux.org/index.php/Pacman/Tips_and_tricks#Installing_only_content_in_required_languages)
NoExtract = usr/share/help/* !usr/share/help/en*
NoExtract = usr/share/gtk-doc/html/*
NoExtract = usr/share/locale/* usr/share/X11/locale/* usr/share/i18n/* opt/google/chrome/locales/*
NoExtract = !*locale*/en*/* !usr/share/i18n/charmaps/UTF-8.gz !usr/share/*locale*/locale.*
NoExtract = !usr/share/*locales/en_US !usr/share/*locales/i18n !usr/share/*locales/iso*
NoExtract = !usr/share/*locales/trans*
NoExtract = !*locale*/de*/* !usr/share/i18n/charmaps/UTF-8.gz !usr/share/*locale*/locale.*
NoExtract = !usr/share/*locales/de_DE !usr/share/*locales/i18n !usr/share/*locales/iso*
NoExtract = !usr/share/*locales/trans*
NoExtract = usr/share/qt4/translations/*
NoExtract = usr/share/man/* !usr/share/man/man*
NoExtract = usr/share/vim/vim*/lang/*
NoExtract = usr/lib/libreoffice/help/en-US/*
Eu me pergunto se isso é parte do problema, talvez quando o glibc foi reinstalado alguns arquivos tenham sido ignorados.
Responder1
Editar
/etc/locale.gen
:Remova o comentário da linha com o seu:
locale en_US.UTF-8
correr
sudo locale-gen
Crédito:https://nanxiao.me/en/fix-locale-configuration-issue-on-arch-linux/
Responder2
Encontrei uma solução agora. Não acho que essa seja a melhor maneira, mas parece funcionar para mim.
eu baixei opacote glibce copiei manualmente os arquivos ausentes ( en_GB
e i18n_ctype
) para /usr/share/i18n/locales/
.
E então corrasudo locale-gen
Responder3
Você pode recuperá-lo /etc/locale.gen
reinstalando o glibc
pacote. Isso irá gerar um novo arquivo na instalação.
Responder4
No meu caso, o problema foi causado por KDE Plasma Settings Manager
- que configurou a localidade para uma configuração não existente.
Durante a instalação do Manjaro, escolhi Finland/English
lá, porque estava disponível. Por que não? Resolve o fi_EN.UTF-8
que acaba sendo no mínimo um absurdo, já que glibc
não contém tal combo.
Você pode listar os glibc
idiomas verificando seus arquivos de pacote assim:
pacman -Ql glibc | grep fi_
Que no meu caso mostrou esses dois:
glibc /usr/share/i18n/locales/fi_FI
glibc /usr/share/i18n/locales/fi_FI@euro
fi_FI
é o adequado, não fi_EN
nenhum dos dois fi_US
. Que vergonha, Plasma.
Substitua grep fi_
no comando acima para encontrar seu idioma, como para polonês:, grep pl_
alemão: grep de_
e assim por diante.
Em seguida, compare-o com o resultado da locale
chamada de comando. No meu caso precisei corrigir editando o arquivo /etc/locale.gen
. Você pode seguir a solução de problemas do Manjaro:
https://wiki.manjaro.org/index.php/Locale
Ou melhor, no Holly Arch Wiki: