четверг, 17 сентября 2009 г.

Убунту и версия питона по-умолчанию

Стандартная проблема - разрабатывается проект на питоне 2.5, а в убунтах (да, на рабочем компе убунту, а для федоры проблему решать не надо)) - питон 2.6. Вот решение нашел (http://web.mit.edu/6.01/mercurial/spring09/www/pybuntu.html), которое рабоало раньше, но теперь - не хочет. Немного допилов - и вот новое решение (смержил допилы и то решение):

Сделать 2.5 по-умолчанию (установите для начала python2.5, если еще не сделали этого):

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.6 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.5 10
sudo update-alternatives --config python
В файле /usr/share/python/debian_defaults изменить default-version на 2.5
sudo rm /usr/bin/python && sudo ln -s python2.5 /usr/bin/python


Вернуть как было:
sudo update-alternatives --remove-all python
sudo rm /usr/bin/python && sudo ln -s python2.6 /usr/bin/python


Загвоздка была в новом файлике /usr/share/python/debian_defaults :-) так-то

четверг, 25 июня 2009 г.

И последнее на сегодня - о крутом

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

Короче говоря копание в исходниках - ключ начального прохождения. Учитывая что лисп не очень популярен думаю в этом и будет вся соль.

Такое.

Статья на хабре про обработку картинок

Увидел вот статейку интересную с названием "Фильтрация изображений методом свертки". Дай, думаю, пока есть чуток времени - напишу на питоне из исходных условий (заранее скажу что то ли автор слукавил, то ли еще чего, но картинки у меня чуть иными получаются, чуть режче)).

Сразу столкнулся с некоторыми проблемами и "нехваткой условий", что ли, продублирую свой комментарий к этому посту на хабре:

Конечно да. Решил таки написать на питончике этот скрипт просто по описанному вами алгоритму — не получилось до конца, пришлось таки текст программы читать. Чего именно не хватало:

1. Что делать на границе? Первый же пиксель (0, 0) и я в ступоре. Оказалось что пиксели изображения недостающие надо пропускать (это еще очевидно), но неочевидным оказалось то, что сумму сетки тоже надо брать только ту, что на пиксели наложена (тоесть не учитывать некоторое на границе как и в случае с изображением).
2. Деление на ноль (а как по коду оказалось — если меньше нуля то тоже надо единицу ставить)
if (kSum <= 0) kSum = 1;

А в целом — спасибо огромное, куча позитива и все такое). Вот, собственно, программка: dpaste.com/hold/59566/ (привентил прогресс-бар на всякий случай, брать его здесь code.google.com/p/python-progressbar/)


Не знаю что там со скоростью работы (у меня довольно медленно, секунд 20), но писать на питоне - одно удовольствие. Каждый раз по новой убеждаюсь.

Емакс и буфер обмена

Так уж сложилось, что долго я мучался с копированием текста из емакса и вставкой того обратно, а решения тогда как-то не нашел. Приходилось пользоваться емаксом из терминала (gnome-terminal или tilda, к примеру), а затем копировать текст при помощи Ctrl+Shift+C. Не очень удобно на больших кусках текста, скажу я вам. Так вот, оказывается ооочень просто сделать так, чтоб емакс использовал буфер обмена операционной системы и при нажатии M-w на выделенном тексте он скопируется из емакса куда надо. Так я вернулся к графическому емаксу (который как-бы гуевый и умеет картинки показывать)). Вот что нужно написать в .emacs:
;;;; делаем чтоб можно было копировать из емакса во вне
(setq x-select-enable-clipboard t)

четверг, 30 апреля 2009 г.

PowerPC (ppc) или борьба с ibook g4 + linux

Вообще говоря, компьютеры с архитектурой процессора паверписи потихоньку вымирают, и вымирает их поддержка. А потому нормально завести свежий линукс всё сложнее и сложнее. Так, моя любимая федора (11 бета и пре так точно) не устанавливается, а в багзилле пишут о схожем отчете с такой же ошибкой, что это проблемы железа. Также (собственно, причина моего желания обновиться) в 10ке не загружался КДЕ вовсе. У дебиана скудные репозитории под кде, а у остальных что пробовал вообще туча проблем как при установке так и в репах.

Я понял, что надо ставить что-то самое популярное, чтоб народу было побольше, иного выхода нет. Про убунту я давно перестал думать, потому что они, вроде как, прекратили выпускать паверписи-версию. А зря! Обнаружилось, что есть замечательный сайт http://ports.ubuntu.com/, на котором есть свежая Убунту 9.04.

Устанавливается почти без грехов (типа надо параметр какой-то дописать в сааамом начале, но в интернет лезть не надо, оно само говорит, мол, "если ошибка - попробуйте вот это"), работает "на ура", прямо счастье какое-то.

Из допилов: надо установить пакет b43-fwcutter (просто "пакет", можно даже без консолей обойтись!) и всё.

В общем, осталось поставить gnash и можно смело отдавать на пользование маме, которая только начинает приобщаться к компьютерам. Ура!

воскресенье, 11 января 2009 г.

Fedora 11 - Leonidas

Выбрано имя для Fedora 11. Это Leonidas. Вот, как пишет нам fedora-announce-list, результаты голосования:
1. Leonidas 1108
*****
2. Indomitable 1054
3. Claypool 944
4. Brasília 890
5. Blarney 890
6. Duchess 838
7. Zampone 716
8. Euryalus 713


Как по мне, в федоре имена довольно занудные. А жаль)

вторник, 16 декабря 2008 г.

Установка red5 под fedora 10

Red5 - серверное приложение для флэша. Всякие там видео-чаты и прочее. Оказалось что установка не так проста (в федоре) и гуглится нелегко.

В общем, все как в мануале - устанавливаем java-jdk sun'овскую (в RussianFedora есть, можт и работает на openjdk). Потом устанавливаем ant. Затем качаем из svn этот red5. Всё, казалось бы, ничего. Но дальше в мане написано следующее:

export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun/
export ANT_HOME=/opt/ant/ # or other directory if you don't have root

В вашем случае JAVA_HOME будет подобной, а вот с ANT_HOME придется поплясать.

Спасибо за решение fedoraforum'у:

1. Удаляем /usr/share/ant/lib (оно пустое и ненужное)
2. Делаем из /usr/share/ant/lib символьную ссылку на /usr/share/java/ant/ (если находимся в директории /usr/share/ant/):
ln -s /usr/share/java/ant/ ./lib
3. Делаем еще одну символьную ссылку (находясь в директории /usr/share/java/ant/):
ln -s /usr/share/java/ant.jar ./ant.jar

Ну и
export ANT_HOME=/usr/share/ant

Всё. Далее как в мане - ant prepare, ant dist и запуск :-)