Источник - http://rh8koi.narod.ru/
Переход с RedHat-7.x на RedHat-8.0.
Наверное многие из вас стали обладателями
новой версии RedHat-8.0, но после ее установки вы столкнулись с некоторыми
проблемами, а именно, нет больше традиционной локали koi8-r и многие консольные
приложения отказываются работать с русским языком, к тому же приложения
использующие ncurses выглядят, мягко говоря, просто убогими и кривыми. Причиной
этого стало то, что в компании RedHat решили перейти на уникод UTF-8, вообщем-то
они правы, это надо было сделать давно, однако большенство приложений и
библиотек не готовы работать с много байтными кодировками, RH попыталась вынести
эту проблему в своем новом дистрибутиве, и поэтому новая версия не совсем
годится для работы, зато это прекрасный базовый дистрибутив для разработчиков, в
него включены все самые новые наработки и приложения, к тому же он один из
первых, где используется новая glibc-2.3, с которой, собственно, весь
дистрибутив и собран... Можно много говорить про достоинства и недостатки этого
дистрибутива, однако многим хочется его использовать для работы, при этом
соблюдая традиционность, которая была в предыдущих версиях RH, это означает, что
многие не желают переходить на UTF-8, но хотят нового того, что есть в
RH-8.0...
Я давно рассматривал варианты безболезненного
"отката" на традиционную локаль koi8-r еще во времена
первых бет 8-ки, все оказалось проще простого, традиционный
пакет console-tools, который входил в состав дистрибутивов 7.х, был
заменен на новый с названием kbd, который был доработан для работы с UTF-8, я
заменил kbd на console-tools из RH-7.3 и получил то, что хотел, а именно
ru_RU.koi8r была везде, однако Midnight
Commander(мой любимый файловый менеджер, в стиле нортон коммандера, как в консоли так и в Х-ах) лучше от этого
работать не стал, пришлось ставить slang и mc от того же RH-7.3, только после
этого я получил желаемый результат. Но и в Х-ах я тоже встретил не мало проблем
из-за шрифтов применяемых в 8-ке, поэтому правильнее было взять их из той же 7.3
или из ASP Linux'а, немного подумав, я выбрал последнее... Совсем недавно мною
было принято решение, что необходимо сделать rpm пакеты, которые бы
устанавливались поверх существующих, не нарушая при этом названия и надобности в
ключе --force при апдейте на установленные пакеты. Для чего это было сделано?
Думаю объяснять не стоит...
Данное руководство, в
основном, посвящается тем, кто ставит систему с нуля и хочет переползти
безболезненно с 7-ки на 8-ку. В данном руководстве описаны поэтапные шаги по
обновлению системы, так же затронута часть по добавлению функционирования MP3 в
системе, ведь не секрет, что RH отказалась встраивать поддержку MP3 из-за новых
лицензионных ограничений на формат MP3, однако мы в России господа...:)))
Качаем rpm пакет kbd-1.06-100.i386.rpm
Устанавливаем командой rpm -U kbd-1.06-100.i386.rpm * Если вы любитель собирать из исходников, то вы можете скачать пакет kbd-1.06-100.src.rpm, только не забудьте, что команда для сборки в RH-8.0 с rpm заменена на rpmbuild, т.е. нужно собирать пакет как rpmbuild --rebuild kbd-1.06-100.src.rpm.
После установки этого пакета, необходимо сделать исправления
в конфигурационных файлах /etc/sysconfig/i18n и
/etc/sysconfig/keyboard
В i18n должно быть примерно
следущее:
LANG="ru_RU.KOI8-R"
SUPPORTED="ru_RU.KOI8-R:ru_RU.koi8r:ru_RU:ru"
SYSFONT="cyr-sun16"
SYSFONTACM="koi8-u"
А
в keyboard:
KEYBOARDTYPE="pc"
KEYTABLE="ru-ms"
* Думаю не
лишне будет напомнить, что локаль в RH делается как ru_RU.koi8r, однако более
правильно ее сделать как ru_RU.KOI8-R, для этого необходимо сделать линк в
каталоге /usr/lib/locale с ru_RU.koi8r на ru_RU.KOI8-R:
cd
/usr/lib/locale
ln -s ru_RU.koi8r ru_RU.KOI8-R
Далее скачиваем rpm пакет initscripts-6.95-100.i386.rpm или пакет с исходниками initscripts-6.95-100.src.rpm для самостоятельной сборки.
И устанавливаем его как rpm -U initscripts-6.95-100.i386.rpm
Теперь можно перегрузить систему, что бы обновления вступили в силу, после перезагрузки системы, мы получаем нормальную традиционную консоль с ru_RU.KOI8-R локалью, что бы убедиться в этом, достаточно дать команду locale...
Качаем compat-slang-1.4.5-2.i386.rpm или пакет с исходниками compat-slang-1.4.5-2.src.rpm для самостоятельной сборки.
И устанавливаем его как rpm -i compat-slang-1.4.5-2.i386.rpm
После того, как мы установили традиционную локаль, хочется, что бы заработал MC, штатный MC всеравно нормально работать не будет, поэтому предлагаю сделать обновление на новый с возможностью перекодировки текста по Ctrl+T, собственно пакет MC взят из ALTLinux'а с небольшими доработками в спек файле для RH-8.0. Качаем mc-4.5.55-100.i386.rpm и mcserv-4.5.55-100.i386.rpm или пакет с исходниками mcserv-4.5.55-100.src.rpm для самостоятельной сборки (только не ставьте gmc).
Теперь устанавливаем эти 2-а
пакета как:
rpm -U mc-4.5.55-100.i386.rpm
rpm -U
mcserv-4.5.55-100.i386.rpm
После установки этих пакетов даем в консоли команду mc и наслаждаемся нормальной работе прекрасного консольного файл менеджера.
Все что было описано выше, касалось только консоли, однако следует сделать обновления для X-ов, т.е. сделать апдейт некоторых фонтов и поставить микрософтовские ttf фонты.
Качаем фонты, взятые из ASPLinux'а, XFree86-75dpi-fonts-4.2.0-73.i386.rpm или пакет с исходниками XFree86-75dpi-fonts-4.2.0-73.src.rpm для самостоятельной сборки.
Устанавливаем его как rpm -U XFree86-75dpi-fonts-4.2.0-73.i386.rpm
Далее, скачиваем микрософтовские ttf фонты ttf_webms-1.0-1.i386.rpm или пакет с исходниками ttf_webms-1.0-1.src.rpm для самостоятельной сборки.
Устанавливаем его как rpm -i ttf_webms-1.0-1.i386.rpm
После установки и обновления этих фонтов, следует перегрузить фонтсервер xfs или перегрузить систему.
На этом можно считать, что система полностью готова для перехода с RH-7.x на RH-8.0, теперь можно рассмотреть некоторые дополнения, которые хотелось бы видеть в RH-8.0...
Довольно очень давно, мною был написан патч для mkisofs, который позволял делать перекодировку
русских имен файлов в транслит, это требовалось для DOS, так как он не понимал
русские символы в именах файлов, хотя те времена прошли, однако бывает в этом
необходимость, что бы CD диск нормально читался в DOS или OS/2. Я интегрировал
этот патч в современный mkisofs, а так же сделал koi8-r кодировку по умолчанию,
что бы потом для Joliet не использовать ключ -jcharset, ну и добавил новый ключ
-no-ver, что бы при необходимости можно было спрятать программу, с помощью
которой построен ISO имидж:). Вы можете скачать обновленный mkisofs-1.10-15.i386.rpm или целиком пакет с
исходниками cdrtools-1.10-15.src.rpm для самостоятельной
сборки.
P.S. Многим наверное будет интересно, как сделать загрузочный
NTевый CD диск с помощью mkisofs, так вот, это делает легче, чем думается:))),
смотрите команду запуска ниже:
mkisofs -v -J -l -d -L -N
-relaxed-filenames -allow-multidot -no-ver -A 'CDIMAGE 2.46 (10/12/2000 TM)' -o
WinXP-Pro-2600.iso -p 'MICROSOFT CORPORATION, ONE MICROSOFT WAY, REDMOND WA
98052, (425) 882-8080' -P 'MICROSOFT CORPORATION' -V WXPCORP_EN -volset
WXPCORP_EN -no-emul-boot -boot-load-size 4 -boot-load-seg 0x7c0 -b boot.bin
-sysid '' -hide boot.bin -hide boot.catalog WinXP/
В WinXP/ должен
естественно находится сам дистрибутив NT'ей и это не обязательно должна быть XP,
это пробовалось еще с 4-ой NT'ей в свое время...:))
Как уже говорилось выше, редхедовцы не включили в свой
последний дистрибутив все, что связано с MP3, однако все эти лицензионные
разборки, не должны влиять на нас с вами, поэтому я сделал несколько пакетов
дополнения с плагинами для XMMS и KDE, а также пакет с
переработанным мною консольным плеером - mpg123.
Скачать mpg123-xmms-1.2.7-13.p.i386.rpm или
пакет с исходниками mpg123-xmms-1.2.7-13.p.src.rpm для
самостоятельной сборки. Плагин MP3 для XMMS имеет
некоторую особенность, в него встроена функция recode для тегов, работающая
через iconv, хотя этот патч не мой, но зато я сделал закладку в меню настроек
для этого плагина, она заключается в том, что бы можно
было указывать из какой кодировки в какую перекодировать, причем, перезапись
тега осуществляется в кодировке из которой идет преобразование, это примерно
выглядит так:
Меню "Параметры" -> "Свойства" -> Меню "Настройки" ->
"Проигрыватель MPEG лэйер 1/2/3 1.2.7 [libmpg123.so]" -> "Настройка" ->
Ярлык "Название" -> Установите флажек напротив "Use recode tag", в поле
"From:" укажите, например, "CP1251", а в поле "To:" - "KOI8-R"
Скачать
mpg123_artsplugin-3.0.3-1.i386.rpm
или пакет с исходниками mpg123_artsplugin-3.0.3-1.src.rpm для
самостоятельной сборки. Этот плагин встраивается в MCOP
KDE и становится доступным для всех приложений KDE, в частности Noatun сможет
его использовать для воспроизведения MP3 файлов, однако стоит обратить внимание
на mime линки в настройках KDE, для этого нужно вызвать
"Центр управления" -> "Привязки файлов" -> audio -> x-mp3 -> Ярлык
"Привязки" -> выставить "Показать файл с помощью другой программы просмотра"
и в "Приоритет сервисов" установить "Встроенный медиа плеер".
Скачать для
intel MMX процессоров mpg123-0.59s.mc1-1.i386.rpm или для amd
3DNow процессоров mpg123-0.59s.mc1-1.athlon.rpm, либо взять
пакет с исходниками mpg123-0.59s.mc1-1.src.rpm для
самостоятельной сборки. Думаю, что этот пакет не нуждается в объяснениях, так
как является самым лучшим консольным MP3 плеером всех времен и народов, однако
проект давно не развивается, поэтому многие, как и я, продолжают самостоятельно
его развивать. Предлагаю свой вариант этого замечательного плеера, который имеет
возможность выводить звук через OSS, aRts и ESD, а также самостоятельную функцию
recode для тегов (патч by Sergei V. Znamenskii ([email protected])). В
него добавлены следущие ключи:
--artsout - Вывод через aRts сервер
--esdout - Вывод через
ESD сервер
--win - из CP1251 в KOI8-R
--dos - из CP866 в KOI8-R
--koi
- из KOI8-R в ???
Вывод через OSS по умолчанию...
Ну и на последок, по теме с MP3, предлагаю скачать lame-3.93-1.i386.rpm и lame-devel-3.93-1.i386.rpm пакеты знаменитого MP3 энкодера - LAME.... Исходники можете взять тут (lame-3.93-1.src.rpm).
Для разнообразия выложил еще парочку интересных пакетов, это NEC'овский socks5 сервер-клиент socks5-1.0r11-1.src.rpm, который стал в последнее время не доступным и деволоперскую версию IRC клиента Xchat, который написан на GTK-2.0 - xchat-1.9.3-0xc.src.rpm в котором есть нужные фиксы для сборки в RH-8.0
20.11.2002 Moscow McMCC ([email protected])