Если gtk не находит нужных шрифтов, он режет 8-й бит. Шрифты задаются в /etc/gtk/gtkrc.$LANG. Поэтому нужно создать файл gtkrc.ru или поправить существующий. Внутри должно быть примерно следующее (названия шрифтов, размеры и прочие атрибуты можно исправить по вкусу, но эти шрифты должны содержать кириллицу в koi8-r):
style "gtk-default-ru" {
fontset = "-cronyx-helvetica-medium-r-normal--*-*-*-*-*-*-koi8-r,\
-cronyx-courier-medium-r-normal--*-*-*-*-*-*-koi8-r,\
-cronyx-fixed-medium-r-normal--*-*-*-*-*-*-koi8-r,\
-cronyx-times-medium-r-normal--*-*-*-*-*-*-koi8-r"
}
class "GtkWidget" style "gtk-default-ru"
и скопировать этот файл в 'gtkrc.ru_RU.KOI8-R', или сделать symlink:
$ cd /etc/gtk/
$ ln -s gtkrc.ru gtkrc.ru_RU.KOI8-R
Подробности см. www.gtk.org, а также http://www.linux.org.ru/gnome/
gtk понимает национальные файлы gtkrc с именами типа gtkrc.ru_RU.koi8r (не gtkrc.ru_RU.KOI8-R). Это позволяет хранить файлы конфигурации для нескольких locales одновременно, при условии, что отсутствует gtkrc.ru.