0
Другие записи за это число:
2010/07/20_01 - Давайте поговорим про установку кондиционеров!
<< предыдущая заметкаследующая заметка >>
20 июля 2010
Про Линукс и UTF - успешное завершение эпопеи

Приезжал в гости великолепный Гоша frbrgeorge, и пока мы ели вареники и трепались о политике о политике операционных систем, все исправил. Докладываю по пунктам, может кому-то будет полезно.

1. ALT-linux прекрасен

ALT-linux — по-прежнему прекрасен, быстр и легок в настройке. Спасибо всем, кто посоветовал иные платформы, я все с интересом прочел (и уже даже скачал Debian), но раз ALT-linux столь чудесным образом ожил, то конечно же переезд на иные платформы отменяется. Причины, по которым я использую ALT-linux последние 7 лет:
а) Он удивительно быстро работает на моем железе. Пробовал в разное время ubuntu, kubuntu, ubuntu-xfce, mandriva — ни один не давал такой скорости.
б) Поддержим отечественного производителя! (По той же причине я даже из принципа стараюсь быть обладателем лицензионной коробочки — за эти годы у меня коробок с ALT-linux накопилось 4 штуки: пару купил, пару подарили, постараюсь купить и «Пятую платформу» тоже, хотя там Гном).
в) Привычка. Все за эти годы уже настроено так, как надо мне.

2. Проблема была в том, что у меня кривые руки.

И плюс — у меня большие требования, это фатальное сочетание. В данном случае все случилось исключительно по моей глупости — неправильно подключил репозитарии. В /etc/apt/sources значилось так:

rpm [p5] http://mirror.yandex.ru/altlinux/p5/branch/ i586 classic
#rpm [p5] http://mirror.yandex.ru/altlinux/p5/branch/ noarch classic

А должны быть раскрыты обе строчки! Ведь noarch — это не альтернатива i586, а просто вторая необходимая половина репозитария. Я забыл, что означают все эти бесконечные src, src-rpm, branch, updates, classic, rsync, noarch (фиг их все вызубришь), и когда вынул DVD, подключил неверный репозиторий, от того и возникли все мои проблемы с пакетами.

3. Как сменить KDE4 на KDE3

KDE4 — действительно ужас XXI столетия. Чудовищная тормозящая мерзость, которую нормальные люди не используют, мигрируя в панике кто куда. Но он заменяется удивительно легко, достаточно просто поставить рядом старый KDE3, это делается одной строкой:
sudo apt-get install kde
И вот у вас уже обычный KDE3, осталось только на экране входа (где пароль-логин спрашивает) в меню выбрать тип экранной среды — оказывается там есть такой пункт, никогда не обращал внимания. В принципе всё. Также понадобились (не факт, что понадобятся вам) следующие действия:
— Зайти в «Центр управления системой» (System Management Service), переключиться в режим «Эксперт», ткнуться в «Система: Альтернативы» и пробежать по всем позициям, чтобы там, где предлагается на выбор что-то в духе /usr/lib/kde3/блабла против /usr/lib/kde4/блабла, выбрать везде kde3.
— Если будет konqueror при загрузке KDE выбрасывать ошибку — отключите в его настройках все плагины, которые он пытается импортировать.

4. Проблемы с mount.* никуда не делись, но под UTF8 их не видно.

С mount.* действительно у нынешних линуксов (у всех, насколько я понимаю) проблемы. mount.cifs традиционно глючит: иногда некоторым приложениям не дает перезаписывать файл на сетевом диске (это с ним бывало, впрочем, и раньше), а опция монтирования guest вообще приводит к неработоспособности. mount.smbfs лучше, но он нынешний перестал поддерживать иные локали, кроме UTF8. Поэтому пришлось использовать его, но окончательно перевести свою локаль на UTF8.

5. Как правильно настроить mc с UFT-8

Инструкция для тех, кто привык использовать mc и не желает пользоваться никакими иными графическими менеджерами. У mc, как известно, есть две ипостаси: «обычный» и «хакнутый под UTF». Хакнутый поддерживает редактирование в UTF8, но зато не поддерживает никаких иных кодировок. Не хакнутый — наоборот. Выход из ситуации мы совместно с Гошей придумали оригинальный, и я им сейчас поделюсь. Итак, если вы человек серьезный, если текстовые архивы на ваших дисках имеют 20-летнюю историю и содержат файлы в самых разных кодировках, если вы привыкли пользоваться mc, то вот решение:

а) Смело переводите вашу локаль на UTF8 и используйте «хакнутый» mc с поддержкой только UTF8.
б) Установите универсальный определитель кодировки enca:

sudo apt-get install enca

в) Создайте файл ~/bin/mcedit2 следующего содержания:
#!/bin/sh

CHARSET=`enca -i "$@"`
if [ "x$CHARSET" = "xASCII" ] ; then mcedit "$@" ; exit ; fi
if [ "x$CHARSET" = "xUTF-8" ] ; then mcedit "$@" ; exit ; fi

dcop $KONSOLE_DCOP_SESSION setEncoding ${CHARSET}
dcop $KONSOLE_DCOP_SESSION renameSession mcedit:${CHARSET}
export LC_ALL=ru_RU.${CHARSET}
export LANG=$LC_ALL
/usr/bin/mcedit "$@"
dcop $KONSOLE_DCOP_SESSION setEncoding UTF8
dcop $KONSOLE_DCOP_SESSION renameSession `whoami`@`hostname`

u) В файле ~/mc/bindings (также доступен из меню mc «Команда»-«Файл расширений») в самом конце прописываем дефолтным редактором этот наш новый mcedit2:

# Default target for anything not described above
default/*
Open=
View=
Edit=$HOME/bin/mcedit2 %f

После этого вы сможете по кнопке F4 привычно редактировать любой текст в его родной кодировке. По крайней мере koi8-r и windows-1251 (cp866 у меня почему-то не работает, и как поставить эту локаль не знаю, а файлов в формате 866 у меня еще со времен DOS и OS/2 осталось дикое количество).

6. Спасибо всем, кто прислал советы в прошлом посте про UTF8!

Я с огромным удовольствием прочел все, буду перечитывать в будущем. Особенно понравились советы про легкие оболочки типа lxde. Поставил поиграться, но пока не смог настроить горячие кнопки запуска на рабочем столе. Буду играть дальше — ведь, честно сказать, я не пользуюсь возможностями КДЕ в полной мере, мне просто нужно запускать несколько приложений и иметь таскбар внизу, в который я мог бы тыкать, сворачивая и разворачивая их на экране.


7. Опережая каменты

Отвечу на наиболее типичные вопросы, которые могут возникнуть:

Q: Ха-ха, Каганов, да ты просто полный болван в линуксе!
A: Никогда не отрицал, что я простой пользователь, и администрирование линуксов (выплавка чугуна, футбол, балет, кролиководство, проектирование мостов, переводы с китайского) не моя профессия. Если этот факт радует вас и заставляет испытывать чувство превосходства — рад за вашу радость.

Q: Почему бы тебе не поставить Windows вместо того, чтобы писать в блог про свои проблемы с настройкой Линукса?
A: Почему бы вам не ходить в другие блоги, авторы которых пишут про свои проблемы с настройкой Windows, истекшие лицензии, антивирусные обновления, блокирующие окна, требующие отправить СМС, и прочие радости бытия? Вот по той же самой причине.

Q: Зачем тебе mc, когда есть такие современные менеджеры, как...
A: Мне удобен mc дикой консольной скоростью и тем, что у меня всё долгие годы настраивалось под него. Остальное мне не удобно, и использовать я это не буду. Мне надо работать, и нет времени на переучивание, привыкание и эксперименты с новыми системами, которые через полгода сменятся еще более новыми.

Q: Почему бы тебе один раз не перекодировать все свои файлы в UTF?
A: Потому что я храню все свои архивы, и за 20 лет (еще со времен БК0010) текстовых файлов накопилось десятки тысяч, и далеко не все называются *.txt Разобраться, где файл, а где, скажем, данные бэкапа мобилки, ни один робот не в состоянии. И натыкаться всю оставшуюся жизнь на разрушительные последствия урагана, прошедшего по тысячам архивных папок, — нет, спасибо.

<< предыдущая заметка следующая заметка >>
пожаловаться на эту публикацию администрации портала
архив понравившихся мне ссылок

Комментарии к этой заметке сейчас отключены, надеюсь на понимание.