странности с locale ( как найти зловреда? )

вот честно, пытался понять в чём может быть дело но так и не понял.
перестал после обнов smplayer понимать русские буквы.
locale в консоле
показывает:
LANG=ru_RU.UTF-8
LC_CTYPE=
LC_NUMERIC=
LC_TIME=
LC_COLLATE=
LC_MONETARY=
LC_MESSAGES=
LC_PAPER=
LC_NAME=
LC_ADDRESS=
LC_TELEPHONE=
LC_MEASUREMENT=
LC_IDENTIFICATION=
LC_ALL=

перегенерил locale.gen + locale-gen, убедился что в locale.conf, только одна строка - LANG=ru_RU.UTF-8
а теперь самое смешное, захожу ssh localhost, а там вывод locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE=C
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES=ru_RU.UTF-8
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=


перезагрузка на ситуацию не влияет. До загрузки иксов тоже самое показывает. Кто знает, почему так происходит? Как отдебажить?
А здесь что-нибудь есть?

cat ~/.config/locale.conf

Еще здесь странности поищи
grep -E "LC|LANG" /etc/profile.d/*

UPD: есть предложение в /etc/locale.conf прописать все переменные LC_* явно, т.к. /etc/profile.d/locale.sh экспортирует тольо явно заданные.
Пробовал явно прописывать, всё работает, но вот в чём проблема, на остальных машинах работает без этого, т.е. они в locale откуда-то заполняются.
И вот ещё в чём "прикол", как и писал, если зайти через ssh на localhost, то все переменные инициализированы!

нет, я те файлы проверял, вроде нет ничего.

К сожалению, добавить нечего, кроме того, что у меня инициализация этих переменных происходит так же, как и у вас.
Но копаться лень, т.к. у меня нет таких проблем. Кроме того, переменной LANG должно быть вполне достаточно, что бы правильно собранная программа понимала нац. настройки.
То есть, если мне не изменяет память, значение LANG будет подставляться для всех LC_*, если они не инициализированы чем-то другим, а если LC_ALL инициализирована, то она безусловно всех "победит".
С такой логикой все должно работать нормально...
вот не знаю, оно не оно, надо же было мне так вляпаться
https://bugs.archlinux.org/task/54988

Зы. Почитал, да-а, два месяца прошло,...

Зы.Зы. а как применить изменённые настройки locale.conf не перезагружаясь? Есть такой способ?
bitrixbiz
как применить изменённые настройки locale.conf не перезагружаясь? Есть такой способ?

Можно запустить приложение с измененными текущими языковыми настройками. Например, так:
$ LANGUAGE=en_US:us chromium
$ LANG=en_US.UTF-8 mc

И еще можно сделать так:
$ export LANG=en_US.UTF-8
Да про это я в курсе, а как сделать так чтобы по всей системе эффект был, например в другой консоли? наверное такого способа нет, раз в вики его тоже нет?
bitrixbiz
наверное такого способа нет, раз в вики его тоже нет?
Как раз в Wiki это описано, только нужно делать, как прописано в us, а не в ru. В ru описано правильно, а команда не совсем.
Сам этого никогда не делал, так что гарантии дать не могу.
Ошибки не исчезают с опытом - они просто умнеют
Так не помогает?
# localectl set-keymap ru
# localectl set-locale LANG="ru_RU.UTF-8"
# export LANG=ru_RU.UTF-8
# mkinitcpio -p linux
RusWolf
Так не помогает?
# localectl set-keymap ru
# localectl set-locale LANG="ru_RU.UTF-8"
# export LANG=ru_RU.UTF-8
# mkinitcpio -p linux
Не, не взлетело, думаю пока systemd не обновят, буду сидеть с этим. С другой стороны, ведь когда захожу через ssh на localhost, всё нормально. Хз что они там намудрили.

Кстати кроме проблем локали ещё стали ошибки при монтировании для nfs выскакивать во время загрузки, обновил принудительно systemd, всё нормально стало. :/

vasek
Как раз в Wiki это описано, только нужно делать, как прописано в us, а не в ru. В ru описано правильно, а команда не совсем.
Сам этого никогда не делал, так что гарантии дать не могу.
Та-ак, ну да, так и есть, я тупо locale.sh запускал, а надо LANG= source /etc/profile.d/locale.sh, НО опять-же, это работает когда иксы не запущены, на другой консоли заходишь, видишь измененную локаль. Под иксами влияет только на текущую сессию в виртуальном терминале, надо сначала иксы убить. Ну и ладно, я уже с этим смирился, хотя жаль что способ не на 100% рабочий, да и не часто настройки локали менять надо.
 
Зарегистрироваться или войдите чтобы оставить сообщение.