PuppyRus

Apr. 22nd, 2009 01:51 pm
tengu_crow: (Default)
[personal profile] tengu_crow
Перепробовав несколько дистрибутивов некоторое время назад серьезно подсел на Puppy Linux в его русифицированной инкарнации PuppyRus. Чем больше на нем сижу, тем больше он мне нравится. Не в обиду Ubuntu и Debian будь сказано.

Мое знакомство с PuppyRus произошло так. В середине февраля на меня свалили очередного археомонстра - машинку P1 с ажно 128М памяти и двумя винтами по 20Г. Задача - сделать из этого пишмашинку для секретарши (не для секретарши на самом деле, но целевая установка была именно такой). Слава человека, способного "воскрешать" совсем уж дряхлое оборудование следует за мной по пятам еще с места первой работы и, видимо, я уже никуда от нее не спрячусь.

Верный своему принципу "ставить то, что знаешь" я честно в течении нескольких дней ставил на нее свежую Ubuntu 8.10 В неальтернейтовской версии (ну не было у меня таковой под руками) - знающие оценят. Убунта (не смотря на минимальные требования к ОЗУ 256М) честно поставилась. Мне это стоило некоторого количества нервов времени и усилий, но в конце-концов она заработала. При этом запускавшийся GNOME жутко тормозил, и вообще это все выглядело зело некавайно.

Я задумался. Я знал достаточно много "малолитражных" дистрибутивов linux, достаточно шустрых и занимающих мало места - DSL, DeLi и иже с ними. Проблема заключалась в том, что ни один из них не был минимально русифицирован (то есть русификация до хотя бы возможности набирать русский текст требовала достаточно эзотерических действий) и - самое главное использовал достаточно диковинный софт в качестве рабочего, в то время, как мне был нужен OpenOffice, желательно "последней модели". Можно было поставить с нуля что-нибудь вроде Slackware, либо Gentoo, но оба дистра мне незнакомы, а меня поджимало время. Где-то в этот момент я вспомнил, что во времена эпохальной установки дистрибутивов у нас в универе Человек-С-Десятью-Дисками показывал мне некий Puppy Linux.

Тогда я его не оценил - времени было мало, дел много, а тестить в этой ситуации каждый новый дистр - недопустимая роскошь. Тем более, что Puppy выглядел достаточно "игрушечно", в особенности по сравнению с монстром вроде Ubuntu.

Сейчас же я вспомнил, что Puppy отличался скромными системными требованиями и - главное у него была русифицированная инкарнация PuppyRus Linux. Недолгие поиски в интернете привели меня последовательно на официальный сайт Puppy Linux, а затем и на сайт PuppyRus. Что порадовало с самого начала - максимально дружелюбный форум. Сообщество, с моей точки зрения значит очень многое, а в сообществе PuppyRus подобрались вежливые и доброжелательные специалисты, которые не страдали синдромом RTF и "У-Меня-Это-Работает".

Именно благодаря поиску по форуму, я почти моментально выяснил, что в принципе PuppyRus можно установить без особых хлопот. Даже не запуская инсталлер и не загружаясь с диска - тупо скопировать на жесткий диск четыре файла и прописать их загрузку в menu.list GRUB'а буде таковой имеется на диске. По сравнению с мегаустановкой Ubuntu (которая занимала от получаса в лучшем случае, до часа и по загадочной причине переодически глючила, не находя нужных ей пакетов) это выглядело верхом простоты.

Дальнейшие раскопки на форуме показали, что если поставить на Windows GRUB for DOS, прописать его запуск в boot.ini, то PuppyRus прекрасно ставится на любой из виндовых дисков "тем же манером" :) То есть прописывается в menu.list GRUB'a (и в целом получается так - запускается WinXP, в качестве вариантов предлагает загрузить основную систему (собственно WinXP) или GRUB и если выбрать GRUB - тот загрузится, и в свою очередь загрузит PuppyRus). Места ему нужно совсем немного (четыре базовых файла: initrd.gz, pup_301-120U-L-M.sfs, vmlinuz и zdrv_301.sfs - занимают сто восемнадцать метров), ну а размеры личного файла могут варьироваться в зависимости от установленного софта и прочего и прочего и прочего (размер личного файла выбирается фиксированным "с запасом", для примера мой pup_save-open.2fs сейчас занимает 1,2Г, что включает в себя OpenOffice и прочая и прочая). Найти на диске два гигабайта было не так уж и сложно - в общем я поставил себе PuppyRus в тот же вечер.

Интернет настроился парой кликов, seamonkey стоявшая по умолчанию оказалась очень похожей на firefox (собственно, это в каком-то смысле firefox и есть), так что остаток вечера я провел в линуксе.

Выяснилось, что PuppyRus чудесно перекрывает все мои требования - OpenOffice есть (правда не по умолчанию - нужно найти .pet-пакет на форуме или на сайте загрузки - но тоже не очень большая проблема, для владеющего поисковиком), русскую клавиатуру (и, что не менее важно, для госучереждения - украинскую) можно настроить парой кликов. Благодаря тому, что система использует ROX-filer - аффигительно мощный, хотя и скромный на вид файловый менеджер. Благодаря ему работа с монтированием-размонтированием сменных носителей проходит очень просто (подробнее можно посмотреть в статье Портнова: http://iportnov.blogspot.com/2006/06/blog-post.html ), что очень порадовало человека, который должен был работать за этой машиной. Это не говоря о том, что сама система очень шустрая и действительно летает даже на моем достаточно древнем (уже древнем, ага) FalconXP :)

В общем - не мог нарадоваться. На следующий день - водрузил PuppyRus на многострадального археомонстра, не снося при этом Ubuntu - мало ли. Инсталировал тем же метдом - скопировал 118М файлов на диск, прописал загрузку в GRUB, сделал ее пунктом по умолчанию и немного докрутил систему ручками (в смысле - поставил яву и OpenOffice). Система не только загрузилась - она распознала Ubunt'овский swap-раздел и подхватила его своим свопом. И вообще - после многодневной Битвы Титанов все прошло практически молниеносно, "на ура". На ту машину с тех пор вроде бы не жаловались и она до сих пор исправно несет службу.

Впечатленный эффектом, я (а) оставил PuppyRus дома (б) сделал его основной операционкой на работе, где до той поры крутилась Ubuntu 7.04 (опять-таки не снося основные операционные системы). С тех пор не пожалел ни разу.

Систему отличает множество приятных фич - от простоты установки и переустановки (что придает смелости при экспериментировании - я знаю, что в любой момент могу вернуть систему на "нулевую точку", при этом при желании сохранив свои настройки), до возможности все время работать под рутом (вопрос освещался официальными лицами - это не мои домыслы - в PuppyRus работа в руте - штатный режим). Она хорошо воспроизводима - можно носить ее с собой на "визитке", на флэшке - то есть я получаю свою рабочую среду на любой более или менее рабочей машине. И... эта система хуже семечек - во всяком случае, я с недавнего времени понял, что мне нравится в ней работать гораздо больше, чем под WinXP. Постепенно перетягиваю под PuppyRus, весь нужный мне набор инструментов - начиная от freemind и firefox, заканчивая Vim'ом и Maxima. Питон вообще установился без проблем и так же без проблем скушал мои скрипты автоматизации :)

Кстати, о Vim'е. Что характерно, в последнее время мне все интереснее работать на нем в консоли - особенно учитывая мой 15" монитор - получается очень здорово. Перекроил консоль под себя - русский сейчас включается не по стандартному правому Ctrl, а по CapsLock. Увеличил число консолей и вообще. Консольный Vim опять-таки летает - даже фолдинг моих "больших файлов" происходит практически мгновенно. А еще тут удобно работать потому, что нет ничего отвлекающего от работы :) Но это - отдельная песТня ("что отвлекает меня во время работы и как с этим бороться"). Вспоминаю старые добрые времена и серое окошко DN. Кажется, начинаю понимать, почему народ не хочет уходить от FAR'а.

Еще один побочный эффект освоения системы - я теперь на "ты" с GRUB'ом, который раньше казался мне жутко загадочным. Дошло до того, что когда выяснилось, что на работе завелся очередной любитель "полазить по машине" (уж не знаю что он искал в системе доступ в которую есть только у меня) я к вящей его радости запаролил ему и GRUB :)
 

Date: 2009-04-22 01:34 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Твоя биография - настоящая кладезь :)) Блин :))) Как я удивился, когда узнал, что свежезафрендженный подводный пловец - виммер - не передать :)))

Date: 2009-04-22 01:41 pm (UTC)
From: [identity profile] ollycat (from livejournal.com)
Да ладно тебе! :)))) Просто мне много чего интересно в жизни. ;) Порой только жаль, что всего что интересно не успею за жизнь узнать... :( Времени мало!!! :)))

Date: 2009-04-22 01:46 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
:)))

Кстати, о. Vim'ом ты пользуешься в виде gvim? Или и в консоли тоже?

Date: 2009-04-22 02:16 pm (UTC)
From: [identity profile] ollycat (from livejournal.com)
Не, у меня как-то gvim не прижился. :) Все в консоли vim-ом колбашу. :)

Date: 2009-04-23 09:54 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Угумс. Я вот ни как не могу разобраться, как в консоли мапить . С функциональными клавишами и пр и пр в консольном режиме разобрался (сначала делается set =...консольный код - в смысле Ctrl+V, F2, а потом уже мапится на нужное сочетание традиционным путем), а вот для меня остался загадкой. Либо я что-то пропустил, либо лечу китайца от желтухи :)

Date: 2009-04-24 03:58 am (UTC)
From: [identity profile] ollycat (from livejournal.com)
Бррррр! Что-то я запутался в твоей фразе. :) Что ты хочешь получить и что не получается? Замапить какие-то действия на функциональную клавишу? Что-то в этом духе:

map a=strftime("%Y-%m-%d %H:%M")
imap
map :execute FromBinary()
map :! cat % \| paps --font="DejaVu Serif 10" --header \| lpr

Тогда не въехал при чем тут set?... :( Короче конкретизируйте! ;)

Date: 2009-04-24 07:11 am (UTC)
From: [identity profile] tengu-crow.livejournal.com
Писал на ночь с не очень ясным умом :) Постараюсь исправиться :))

Мапить клавиши я умею. Но столкнулся с тем, что в консольном режиме не работает маппинг определенных клавиш. В основном это касается переключения языка. В gvim я использовал такую вот настройку:

"Переключение языков по Shift+Enter
"http://clubs.ya.ru/4611686018427388523/replies.xml?item_no=47

inoremap
[Error: Irreparable invalid markup ('<c-^>') in entry. Owner must fix manually. Raw contents below.]

Писал на ночь с не очень ясным умом :) Постараюсь исправиться :))

Мапить клавиши я умею. Но столкнулся с тем, что в консольном режиме не работает маппинг определенных клавиш. В основном это касается переключения языка. В gvim я использовал такую вот настройку:

"Переключение языков по Shift+Enter
"<a href="http://clubs.ya.ru/vim/replies.xml?parent_id=54&item_no=47&with_parent=1#reply-vim-54">http://clubs.ya.ru/4611686018427388523/replies.xml?item_no=47</a>

inoremap <S-RETURN> <C-^>
cnoremap <S-RETURN> <C-^>
noremap <S-RETURN> a<C-^><ESC>

Получается, что по Shift-Enter оно переключает мне язык (<C-^> очень неудобное сочетание - на мой вкус). Но ни в консоли, ни в терминале (который эмулятор консоли) само по себе сочетание не работает. Кроме того, в консоли у меня отрубились все функциональные клавиши (<F1>-<F12>), на которые у меня были замаплены рабочие функции (<F2> - сохранение, <F3> - просмотр в браузере и так далее).

Я закопался в документацию глубже. Нашел <a href="http://vimdoc.sourceforge.net/htmldoc/term.html#terminal-options">параграф про настройку Vim в терминальном режиме работы</a>. Поискал еще на сайте - нашел <a href="http://vim.wikia.com/index.php?title=Mapping_fast_keycodes_in_terminal_Vim&oldid=21694">статью про настройку горячих клавиш в терминальном режиме</a>.

Date: 2009-04-24 07:26 am (UTC)
From: [identity profile] tengu-crow.livejournal.com
заметил, что побились ссылки :( попробую еще раз

http://clubs.ya.ru/vim/replies.xml?parent_id=54&item_no=47&with_parent=1#reply-vim-54
про переключение в Vim раскладок

http://vimdoc.sourceforge.net/htmldoc/term.html#terminal-options
параграф хелпа по терминалу

http://vim.wikia.com/index.php?title=Mapping_fast_keycodes_in_terminal_Vim&oldid=21694
настройка горячих клавиш в терминальном режиме

продолжение

Date: 2009-04-24 07:17 am (UTC)
From: [identity profile] tengu-crow.livejournal.com
В статье, насколько я ее понял, говорилось, что каждый терминал посылает vim свои коды и если они не совпадают с тем, что ожидает получить vim - начинаются проблемы. Поэтому, если что-то работает не так - нужно указать этот код напрямую.

То есть у меня сейчас скажем F2 для варианта работы в консоли работает так:


set timeout ttimeoutlen=100 timeoutlen=5000
" связываю с определенным кодом консоли
set =^[[B
" собственно маппинг
map :w
imap :w

Код клавиши получить просто - набрать
[Error: Irreparable invalid markup ('<ctrl+v>') in entry. Owner must fix manually. Raw contents below.]

В статье, насколько я ее понял, говорилось, что каждый терминал посылает vim свои коды и если они не совпадают с тем, что ожидает получить vim - начинаются проблемы. Поэтому, если что-то работает не так - нужно указать этот код напрямую.

То есть у меня сейчас скажем F2 для варианта работы в консоли работает так:


set timeout ttimeoutlen=100 timeoutlen=5000
" связываю <F2> с определенным кодом консоли
set <F2>=^[[B
" собственно маппинг <F2>
map <F2> :w<cr>
imap <F2> <Esc>:w<CR>

Код клавиши получить просто - набрать <Ctrl+V> и после этого нажать нужное сочетание клавиш.

Но <S-ENTER> после <Ctrl+V> такого кода не выдает - оно просто делает возврат каретки :(

<S-Return>

Re: продолжение

Date: 2009-04-24 07:44 am (UTC)
From: [identity profile] ollycat (from livejournal.com)
Так, что-то начинает проясняться... Только я все равно не понял, зачем ты делаешь set F2 = код. Ведь map F2 будет работать и без этого. В общем я чего-то все равно не допонял... Или я туплю, или ты действительно хочешь удалить гланды через анус. ;) Так... Исходя из предыдущего поста ты хочешь сделать переключение раскладки языка не средствами ОС, а средствами vim и хочешь это все повесить на shift + enter? Так?

Re: продолжение

Date: 2009-04-24 07:52 am (UTC)
From: [identity profile] tengu-crow.livejournal.com
Ага. В нормальной коносли map работает и так? Значит нужно копать документацию. Моя консоль в ответ на выдает эскейп-код в который входит B латиницей в верхнем регистре. Из-за чего vim себя ведет зело странно. С использованием set все начинает работать нормально. Как я понял, set нужно Vim'у для того, чтобы понять, что вот эта вот эскейп-последовательность - она на самом деле - F2, а дальше F2 уже работает как и должна. Может у меня терминал особенный.

То что в gvim и под WinXp и под linux все работает безо всякого set - это да. Это стопроцентно. Но когда ухожу в консоль - все меняется.

Угумс. Переключение языка средствами Vim очень удобно. В общем-то я нашел выход - я повесил его на , который работает везде (и под консолью в том числе) безо всякого шаманства с set, но интересно - почему vim в консоли отказался понимать в виде хоткея.

Re: продолжение

Date: 2009-04-24 09:46 am (UTC)
From: [identity profile] ollycat (from livejournal.com)
Все. Дошло. :) Прошелся по твоим ссылкам, еще раз прочел и дошло. :) С термкапом у тебя действительно грабли похоже... Ну а как победить этот мап, который ты хочешь - пока не знаю. Была идея повесить его через xmodmap на какой-нибудь F19 и уже его мапить, но не проверял пока. В общем если будут идеи - напишу. :)

Re: продолжение

Date: 2009-04-24 11:44 am (UTC)
From: [identity profile] tengu-crow.livejournal.com
Во всяком случае буду знать, что в консоли все должно работать нормально. На всякий случай... чтобы не лечить китайцев... консоль - это то, куда попадаешь по Ctrl+Alt+F2 ...+F3 ...+F4 etc, в зависимости от настроек /etc/inittab?

Я еще все-таки не вполне разобрался с терминологией и имел в виду, что есть "консоль", а есть "эмулятор консоли", который обзываю "терминалом" - по-моему не вполне справедливо, так как терминал с моей тз - это нечто железное равное клавиатура+монитор :)

xmodmap должен сработать в эмуляторе консоли, но сама коносоль разве завязана на иксы? когда я в консоли переназначал переключение русского с правого контрола на капслок, то использовал loadkeys и свою переделанную ru-utf.map из каталога
/usr/share/kbd/keymaps/i386/qwerty

думаю копать нужно туда :) + проясню для себя вопрос что есть termcap и с чем его едят :) если что - тоже непременно напишу и поделюсь :)

я не очень заморочил голову? мне это было важно выписать чтобы сформулировать вопрос :) а так - пока что это вопрос из разряда "моя машина не заводится - почему?" :)

Re: продолжение

Date: 2009-04-24 01:09 pm (UTC)
From: [identity profile] ollycat (from livejournal.com)
Гы. :))) Да, путаница вышла. :) Во первых ладно, раз консоль, в твоем определении это ctr + alt + f1, тогда на твой вопрос о том где я работаю в vim отвечаю: в эмуляторе терминала, то бишь в xterm и его родственниках, реже именно в консоли. :) В ней тоже все работать должно. Консолью я называю xterm и Ko просто по инерции. ;) Соответственно xmodmap работает естественно под x-ами. И что бы разбираться дальше с твоими проблемами, надо определиться надо ли тебе именно консоль или все же x-терминал.

Сорри, если ненароком ввел тебя в заблуждение. :)

Re: продолжение

Date: 2009-04-24 01:43 pm (UTC)
From: [identity profile] tengu-crow.livejournal.com
Ага :) "Гармония вернулась в мир". Хорошо, что не постеснялся уточнить что и как :))) А то действительно лечили бы китайца :))) Кстати, я правильно все назвал или нет? :) Вечно путаюсь :))) Консоль мне нужна, именно консоль :) Сейчас сижу читаю про termcap :)

На счет введения в заблуждения - так это я первый начал :))) Привелегия морочить людям голову прописана у меня в юзеринфе прямым текстом ;)

Re: продолжение

Date: 2009-04-24 04:56 pm (UTC)
From: [identity profile] ollycat (from livejournal.com)
Ну главное разобрались, остальное фигня. :)

Re: продолжение

Date: 2009-04-24 07:54 am (UTC)
From: [identity profile] tengu-crow.livejournal.com
блин. только сейчас заметил, что угловые скобки бьются :( прошу прощения. не сообразил, что их принимают за теги

продолжение 2

Date: 2009-04-24 07:23 am (UTC)
From: [identity profile] tengu-crow.livejournal.com
У меня вообще есть ощущение, что дело вовсе не в vim, что я просто за деревьями не увидел леса. Надо будет подробно разобраться в том, что есть termcap и вообще с консолью и ее режимами работы.

June 2025

S M T W T F S
123456 7
891011121314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 4th, 2025 10:53 am
Powered by Dreamwidth Studios