LINUX.ORG.RU

Проблема с локализацией Plasma 5

 , , ,


0

1

Всем привет. Имеется следующая проблема: Plasma 5 русифицировалась, но только частично. Конкретно: SDDM на английском, часть надписей на английском, контекстные меню на русском, названия ярлыков на русском, при этом само меню на английском и так далее. Я подумал, что проблема кроется где-то в районе системной локали, но есть нюанс:

SLV-Work ~ # locale
LANG=ru_RU.utf8
LC_CTYPE="ru_RU.utf8"
LC_NUMERIC="ru_RU.utf8"
LC_TIME="ru_RU.utf8"
LC_COLLATE="ru_RU.utf8"                                                                                                                                                                                                                            
LC_MONETARY="ru_RU.utf8"                                                                                                                                                                                                                           
LC_MESSAGES="ru_RU.utf8"                                                                                                                                                                                                                           
LC_PAPER="ru_RU.utf8"                                                                                                                                                                                                                              
LC_NAME="ru_RU.utf8"
LC_ADDRESS="ru_RU.utf8"
LC_TELEPHONE="ru_RU.utf8"
LC_MEASUREMENT="ru_RU.utf8"
LC_IDENTIFICATION="ru_RU.utf8"
LC_ALL=

SLV-Work ~ # locale -a
C
en_US.utf8
POSIX
ru_RU.utf8
SLV-Work ~ # cat /etc/locale.gen
#en_US ISO-8859-1
en_US.UTF-8 UTF-8
#ja_JP.EUC-JP EUC-JP
#ja_JP.UTF-8 UTF-8
#ja_JP EUC-JP
#en_HK ISO-8859-1
#en_PH ISO-8859-1
#de_DE ISO-8859-1
#de_DE@euro ISO-8859-15
#es_MX ISO-8859-1
#fa_IR UTF-8
#fr_FR ISO-8859-1
#fr_FR@euro ISO-8859-15
#it_IT ISO-8859-1
ru_RU.UTF-8 UTF-8

Т.е, вроде бы, все здесь хорошо и все должно работать. Тем не менее, почему-то не работает. В системе ТОЧНО имеются пакеты kde-apps/kde4-l10n, kde-apps/kde-l10n версий 15.12.3-r1 и kde-frameworks/ki18n версии 5.21.0. В настройках в меню локализации нет никаких языков, кроме American English, выбор которого приводит к тому, что KDE полностью англифицируется.

Система: Gentoo Linux, Multilib, Systemd.

Что я пробовал?

  1. Задать вручную все параметры локали в значения ru_RU.UTF-8 и ru_RU.utf8 в /etc/env.d/02locale, /etc/locale.conf. Это не помогло.
  2. Задать локали через eselect locale set и localectl set-locale LANG=
  3. Пересобрать все с помощью emerge --emptytree world
  4. Пересобрать отдельно Glibc
  5. Пересобрать все пакеты с -l10n и -i18n
  6. Пересобрать все пакеты, использующие LINGUAS.

На большее фантазии не хватило. Что можете посоветовать, кроме «снеси все к чертям и пересобери заново»?

P.S. Ну и вообще, мне интересно, почему когда я делаю locale-gen, у меня локали, отображаемые locale -a называются не .UTF-8, а .utf8

На кеды локаль не влияет.
Язык интерфейс устанавливается сугубо в system settings. Чтобы там появился русский, нужно чтобы в LINGUAS был ru.

Покажи вывод emerge --info | grep LINGUAS

Kroz ★★★★★ ()
Ответ на: комментарий от Kroz
SLV-Work ~ # emerge --info | grep LINGUAS
LINGUAS="ru en ru_RU"
USE="X a52 aac acl acpi alsa amd64 avahi bash-completion berkdb bluetooth branding bzip2 cairo cdda cddb cdr cli cracklib crypt cups cxx dbus declarative dhcp djvu dri dts dvb dvd dvdr ebook embedded emboss encode exif fam fbsplash ffmpeg firefox flac fontconfig fortran gdbm gif gimp git glamor gpm gstreamer gtk hal iconv icq icu ipv6 jack java java6 javascript jpeg jpeg2k kde kipi kipid lastfm lcms ldap libkms libnotify lm_sensors lyrics mad mdnsresponder-compat midi mmx mmxext mng modules mozilla mp3 mp3tunes mp4 mpeg mplayer multilib mysql ncurses networkmanager nls nptl odbc ogg openexr opengl openmp pam pango pch pcre pdf phonon plasma plugins png policykit ppds pulseaudio python qml qt3support qt4 qt5 readline rtlsdr samba scanner sdl seccomp semantic-desktop sensord session simlink spell sse sse2 sse3 ssl startup-notification subversion svg symlink systemd tcpd tiff tk truetype udev udisks uft8 unicode unrar upnp upower usb userlocales v4l v4l2 vdpau vkontakte vorbis w32codecs webgl webkit widgets winbind wxwidgets x264 xattr xcb xcomposite xinerama xml xscreensaver xv xvid zeroconf zip zlib" ABI_X86="64 32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx mmx vmx fpu acpi mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="pc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ru en ru_RU" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="nvidia intel" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
USE_EXPAND="ABI_MIPS ABI_PPC ABI_S390 ABI_X86 ALSA_CARDS APACHE2_MODULES APACHE2_MPMS CALLIGRA_FEATURES CAMERAS COLLECTD_PLUGINS CPU_FLAGS_X86 CROSSCOMPILE_OPTS CURL_SSL DRACUT_MODULES DVB_CARDS ELIBC ENLIGHTENMENT_MODULES FCDSL_CARDS FFTOOLS FOO2ZJS_DEVICES FRITZCAPI_CARDS GPSD_PROTOCOLS GRUB_PLATFORMS INPUT_DEVICES KERNEL LCD_DEVICES LIBREOFFICE_EXTENSIONS LINGUAS LIRC_DEVICES MONKEYD_PLUGINS NETBEANS_MODULES NGINX_MODULES_HTTP NGINX_MODULES_MAIL NGINX_MODULES_STREAM OFED_DRIVERS OFFICE_IMPLEMENTATION OPENMPI_FABRICS OPENMPI_OFED_FEATURES OPENMPI_RM PHP_TARGETS PYTHON_SINGLE_TARGET PYTHON_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS ROS_MESSAGES RUBY_TARGETS SANE_BACKENDS USERLAND UWSGI_PLUGINS VIDEO_CARDS VOICEMAIL_STORAGE XFCE_PLUGINS XTABLES_ADDONS"
Slaviro ()

~ # locale -a

что ты этим хотел показать вообще?

eselect locale list

?

kep ()
Ответ на: комментарий от Slaviro

LINGUAS=«ru en ru_RU»

LINGUAS="ru en ru"

После этого перекомпиль пакеты, которые используют эти установки.

Kroz ★★★★★ ()
Последнее исправление: Kroz (всего исправлений: 2)
Ответ на: комментарий от kep

На первое - имеющиеся локали, очевидно.

SLV-Work ~ # eselect locale list
Available targets for the LANG variable:
  [1]   C
  [2]   en_US.utf8
  [3]   POSIX
  [4]   ru_RU.utf8 *
  [ ]   (free form)
Slaviro ()
Ответ на: комментарий от Slaviro

ну так вот это покажет и имеющиеся и текущую.

kep ()
Ответ на: комментарий от Kroz

LINGUAS=«ru en ru»

Это что, шутка? У ТСа как раз всё правильно стоит, половина пакетов жрет ru, половина русский в России, лол. Давно известная параша в пакетах, но это не проблема генты, это проблема майнтейнеров.

kep ()
Ответ на: комментарий от Kroz

Во-первых, зачем дублировать ru? Во-вторых, при emerge -av я смотрел какие LINGUAS будут использоваться, вот там везде ru был включен, т.е, я вообще не вижу разницы между тем, что было и тем, что будет.

Slaviro ()

У меня тоже не всё переведено. Думаю, косяк плазмы. Как обычно, поторопились в «stable» переводить. Посидели бы ещё на kde4, не умерли.

BattleCoder ★★★★★ ()
Ответ на: комментарий от kep

Это что, шутка? У ТСа как раз всё правильно стоит, половина пакетов жрет ru, половина русский в России, лол. Давно известная параша в пакетах, но это не проблема генты, это проблема майнтейнеров.

Пруф есть?
И меня другая инфа (KDE, если что):

$ eix -IU linguas | grep "Install" | grep ru_RU | wc -l
2
$ eix -IU linguas | grep "Install" | grep ru | wc -l
30

Kroz ★★★★★ ()
Ответ на: комментарий от Kroz

Зато на кути ещё как влияет, в том числе на дельфин и тот баг с локалями. Ты бы проверил прежде чем лезть с советами.

anonymous ()
Ответ на: комментарий от Kroz

Пруфа нет, т.к. отличные от en_US.utf8 локали не нужны в принципе, нигде, никому, никогда.

Вот вы смеетесь с ЯП 1С:

СхемаКомпоновкиДанных = ПолучитьМакет("ФактЗатрат");
КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных;
КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
ЗУП_ТиповыеОтчеты.УстановитьПараметр(КомпоновщикНастроек, "ОбъектЗатрат", Ссылка);
 
ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки, ДанныеРасшифровки);
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки);
ДокументРезультат = ЭлементыФормы.ТабличныйДокументЗатратыФакт;
ДокументРезультат.Очистить();
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
но ведь в тоже самое превращаете свои десктопы и пользовательские интерфейсы! Не знаешь английского языка во взрослом возрасте? Позор тебе и забвение. Школьник, что-ли? Не пропускай уроки английского.

kep ()
Ответ на: комментарий от Slaviro

Во-первых, зачем дублировать ru?

'ru_RU' не то же что и 'ru'.

Во-вторых, при emerge -av я смотрел какие LINGUAS будут использоваться, вот там везде ru был включен

Ты уверен?
Попробуй повторить мой эксперимент:

$ LINGUAS="ru_RU" emerge -pv --nodeps k3b smplayer

These are the packages that would be merged, in order:

[ebuild   R    ] app-cdr/k3b-2.0.3-r2:4::gentoo  USE="dvd encode ffmpeg flac mad mp3 vcd vorbis (-aqua) -debug -emovix -handbook -libav -musepack -sndfile -sox -taglib" LINGUAS="-ast -be -bg -bs -ca -ca@valencia -cs -csb -da -de -el -en_GB -eo -es -et -eu -fi -fr -ga -gl -he -hi -hne -hr -hu -is -it -ja -kk -km -ko -ku -lt -lv -mai -mr -ms -nb -nds -nl -nn -oc -pa -pl -pt -pt_BR -ro -ru -se -sk -sl -sr -sr@ijekavian -sr@ijekavianlatin -sr@latin -sv -th -tr -ug -uk -zh_CN -zh_TW" 0 KiB
[ebuild   R    ] media-video/smplayer-16.4.0-r2::gentoo  USE="qt5 -autoshutdown -bidi -debug -mpris -streaming" LINGUAS="ru_RU* -am -ar -ar_SY -bg -ca -cs -da -de -el_GR -en_GB -en_US -es -et -eu -fa -fi -fr -gl -he_IL -hr -hu -id -it -ja -ka -ko -ku -lt -mk -ms_MY -nl -nn_NO -pl -pt -pt_BR -ro_RO -sk -sl_SI -sq_AL -sr -sv -th -tr -uk_UA -uz -vi_VN -zh_CN* -zh_TW" 0 KiB

Total: 2 packages (2 reinstalls), Size of downloads: 0 KiB

$ LINGUAS="ru" emerge -pv --nodeps k3b smplayer                                                                                   
These are the packages that would be merged, in order:

[ebuild   R    ] app-cdr/k3b-2.0.3-r2:4::gentoo  USE="dvd encode ffmpeg flac mad mp3 vcd vorbis (-aqua) -debug -emovix -handbook -libav -musepack -sndfile -sox -taglib" LINGUAS="ru* -ast -be -bg -bs -ca -ca@valencia -cs -csb -da -de -el -en_GB -eo -es -et -eu -fi -fr -ga -gl -he -hi -hne -hr -hu -is -it -ja -kk -km -ko -ku -lt -lv -mai -mr -ms -nb -nds -nl -nn -oc -pa -pl -pt -pt_BR -ro -se -sk -sl -sr -sr@ijekavian -sr@ijekavianlatin -sr@latin -sv -th -tr -ug -uk -zh_CN -zh_TW" 0 KiB
[ebuild   R    ] media-video/smplayer-16.4.0-r2::gentoo  USE="qt5 -autoshutdown -bidi -debug -mpris -streaming" LINGUAS="-am -ar -ar_SY -bg -ca -cs -da -de -el_GR -en_GB -en_US -es -et -eu -fa -fi -fr -gl -he_IL -hr -hu -id -it -ja -ka -ko -ku -lt -mk -ms_MY -nl -nn_NO -pl -pt -pt_BR -ro_RO -ru_RU -sk -sl_SI -sq_AL -sr -sv -th -tr -uk_UA -uz -vi_VN -zh_CN* -zh_TW" 0 KiB

Total: 2 packages (2 reinstalls), Size of downloads: 0 KiB


И, да, уговорил на LINGUAS="en ru ru_RU". Себе тоже так сделаю...

Kroz ★★★★★ ()
Ответ на: комментарий от anonymous

Зато на кути ещё как влияет, в том числе на дельфин и тот баг с локалями. Ты бы проверил прежде чем лезть с советами.

А я по-твоему здесь фантазирую? Или с рабочей машины пишу?

Ладно, признаю, упустил вот это:

$ cat package.use | grep linguas
sys-auth/polkit-kde-agent -linguas_ru -linguas_uk -linguas_zh_CN # Requires kde-base/kde-l10n:4 which blocks kde-base/libkscreen:5
kde-misc/kde-gtk-config -linguas_ru -linguas_uk -linguas_zh_CN # Requires kde-base/kde-l10n:4 which blocks kde-base/libkscreen:5
media-plugins/kipi-plugins -linguas_ru -linguas_uk -linguas_zh_CN # Requires kde-base/kde-l10n:4 which blocks kde-base/libkscreen:5
app-cdr/k3b -linguas_ru -linguas_uk -linguas_zh_CN # Requires kde-base/kde-l10n:4 which blocks kde-base/libkscreen:5
www-client/rekonq -linguas_ru -linguas_uk -linguas_zh_CN # Requires kde-base/kde-l10n:4 which blocks kde-base/libkscreen:5

Актуально было 1.5 года назад, когда, собственно, ставил KDE5. Актуально ли сейчас - не знаю.

Зато на кути ещё как влияет, в том числе на дельфин и тот баг с локалями

Пруфы, пожалуйста, в студию.

Kroz ★★★★★ ()
Ответ на: комментарий от Kroz
LC_ALL=en_US.UTF-8 dolphin

ну во всяком случае наоборот работает. с нормальной системной локалью и руру.

anonymous ()
Ответ на: комментарий от Kroz

linguas через юзы прописывать это клиника, там есть специальная переменная для этого. и все не указанные в ней выключены.

anonymous ()
Ответ на: комментарий от anonymous

linguas через юзы прописывать это клиника, там есть специальная переменная для этого. и все не указанные в ней выключены.

Ок, как мне включить ru везде, но выключить для sys-auth/polkit-kde-agent ?

Kroz ★★★★★ ()
Ответ на: комментарий от Kroz

в package.env подключаешь файл minus.ru с LINGUAS="en"? можно ещё попробовать -ru. В мейк.конф оставляешь ру.

anonymous ()
Ответ на: комментарий от anonymous

в package.env подключаешь файл minus.ru с LINGUAS=«en»? можно ещё попробовать -ru. В мейк.конф оставляешь ру.

Согласен. Наверное так правильнее.

Kroz ★★★★★ ()

Тоже были проблемы после обновления кде до 5-й версии

Так то система на русском была, но вот krusader, libreoffice, kmail и иже с ними были на инглише. поставил пакеты l10n для либры и других приложений. Пересобрал мир. но нифига не изменилось. самое интересное, что LINGUAS=«ru ru_RU» никак не влияет на установку флага L10N=«ru» в пакетах имеющих оный флаг, все языковые флаги идут с минусом. Сначала я плюнул на это дело, не так уж критично, но потом, через пару дней, вернулся к вопросу и сделал «equery u libreoffice-l10n», посмотрел флаги и решил добавить в LINGUAS «l10n_ru», добавил, делаю обновление мира - ноль эмоций, флаг не встал. Потом я решил удалить из LINGUAS «l10n_ru» и поставить в USE в make.conf. Поставил, обновляю мир и, о чудо, флаг встал и пакеты пересобрались с поддержкой русского языка. P.S.: Получилось, что надо просто добавить флаг l10n_ru в make.conf, но при этом не в LINGUAS, а как обычный флаг в USE. Пока вроде все нормально, проблем с русификацией больше нет.

Demonit ()
Ответ на: комментарий от Slaviro

Пробовал отдельно прописывать L10N, но не помогло. Да и запихнуть в USE флаг не тянет на мучение, всяко не сложнее чем прописывать отдельно L10N. Тут проблема была в том, что нигде не указано. что надо прописывать отдельный флаг l10n_ru, сколько читал манов, там везде написано, что надо LINGUAS «ru» ставить и все. как бы с 4-ми кедами так и было, но вот в 5-х получается, что надо отдельно дописывать костыль.

Demonit ()
Ответ на: комментарий от Demonit

Тут проблема была в том, что нигде не указано. что надо прописывать отдельный флаг l10n_ru, сколько читал манов, там везде написано, что надо LINGUAS «ru» ставить и все.

Все же запускать

eselect news read 
когда портаж предупреждает желательно.

https://www.gentoo.org/support/news-items/2016-06-23-l10n-use_expand.html

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.