1. Если бы "НОС" написал Салтыков-Щедрин... (Sergey Udaltsov)
  2. Весна пришла! (Victor Wagner)
  3. Про героическое преодоление трудностей. (Victor Wagner)
  4. О кросскомпиляции (Victor Wagner)
  5. shell code refactoring (Кирилл Колышкин)
  6. Их знали только в лицо... (Victor Wagner)
  7. vzctl (Кирилл Колышкин)
  8. updated to Android 2.2 Froyo final (Кирилл Колышкин)
  9. Любителям плагинов (Victor Wagner)
  10. avahi (Victor Wagner)
  11. hostapd нв Eee PC 900 (Victor Wagner)
  12. И где они такую траву берут? (Victor Wagner)
  13. Не могу не поделидзэ :) (Midgard Administrator)
  14. берлин, линукстаг (Кирилл Колышкин)
  15. великие космонавты и художники (Кирилл Колышкин)
  16. android: importing certificates (Кирилл Колышкин)
  17. Froyo vs Exchange (Кирилл Колышкин)
  18. Android 2.2: adb; install to SD card (Кирилл Колышкин)
  19. лост ин транслейш (Sergey Udaltsov)
  20. Энтерпрайз такой энтерпрайз (Midgard Administrator)
  21. asus m2n-mx se wtf (Кирилл Колышкин)
  22. век живи, век учись (Кирилл Колышкин)
  23. linux*.ru (Midgard Administrator)
  24. Relaunched blog (Михаил Гусаров)
  25. Майские праздники такие майские (Midgard Administrator)

Если бы "НОС" написал Салтыков-Щедрин...

Sergey Udaltsov (svu) 25.07.2010 04:05:47

Это я про национальную ОС. Процесс крайне любопытный, интрига масштабнейшая, попкорна у всей страны уйдут горы. В сущности, это довольно нетривиальный сценарий борьбы добра с баблом. С одной стороны - государство, обладающее уникальным мидасовым даром превращать в дерьмо все, до чего дотронется. С другой - явление, умеющее адекватно развиваться и существовать только в условиях здоровой открытости и прозрачности процессов.

Простейший и наиболее вероятный сценарий - очевиден и неинтересен. Интересно, есть ли хоть малейший шанс на какой-нибудь альтернативный сценарий?

А еще возникает невольная ассоциация с Аксеновским "Островом Крым" (который мне симпатичен с детства, я, кажись по нему выпускное сочинение писал). Группа товарищей сознательно положили нечто, дорогое им (и многим другим), свободное, вольное, молодое, на алтарь того же самого государства. Исходя из идеи сопричастности. Осуждать их, сочувствовать, восхищаться ли - каждый решает сам.

ЗЫ Про Авраама и Исаака я в курсе.

Весна пришла!

Victor Wagner (vitus) 08.07.2010 15:20:53

Во Францию пришла наконец весна. 8 июля выпущен Mandriva Linux 2010 Spring.

Про героическое преодоление трудностей.

Victor Wagner (vitus) 02.07.2010 18:50:40

Среда разработки под Maemo это что-то. Сначала люди героически боролись за создание cpu-transparent среды. Чтобы можно было собирать на X86 машине как будто она arm-овская, и запускать получившиеся бинарники.
(потому что многие, пишущие современный opensource софт, не умеют писать configure.in так, чтобы можно было делать кросс-компиляцию. А еще системы пакетирования не рассчитаны на то, что пакет будет собираться не на той же архитектуре, где использвоаться. Хотя вот debian-овскую систему пакетирования, которая используется в maemo до этого допилили).

Получившаяся конструкция оказалась настолько хрупкой, что шаг вправо, шаг влево считается побег. То есть чуть изменились настройки ядра, тем более если вдруг ядро 64-битное, а userland 32-битный, так все уже и не работает. Я уж не говорю о том чтобы запустить это не под Linux-ом а под виндой или MacOS.

Поэтому пришлось товарищам выложить образ виртуальной машины, в которой оно заведомо работает. (вот блин взяли бы сразу QEMU system emulation и делали бы self-hosted среду разработки ..) Так они еще и это ухитрились через задницу сделать. Выложили образ, на котором в sources.list что надо прописано, а сам scratchbox не установлен. Почему-то положить такой образ, чтобы скачать и сразу работать нельзя было.

О кросскомпиляции

Victor Wagner (vitus) 02.07.2010 14:03:59

До чего ж неряшливо работает народ с emdebian.org!
Мало того, что сегодня у них libc6-*-cross в testing нифига не ставится, из-за того что в хост-системе оно уже обновилось, у них нет.
Так они еще и из binutils-mipsel-linux-gnu забыли повыкинуть info-файлы. Которые по очевидным причинам конфликтуют с info-файлами из хостового binituls и по этой причине без force-overwrite пакет нифига не ставится.

Приходится устравивать закат солнца вручную через dpkg-cross.

И так для четырех архитектур.

Еще куда-то протоптался порт etch на armel. Был же, как счас помню. Я еще tcl8.4 оттуда на maemo ставил. А сейчас что-то ни кросскомпилятора не видать, ни пакетов на archive.debian.org Придется scratchbox переставлять.

Nokia scratchbox луч поноса вдвое толще чем emdebian-овцам. У тех ломается репозиторий testing. Это бывает. А у nokia ломается установленный scratchbox.
Вот поставил я его год назад. С тех пор даже машину не перегружал.

А оно и говорит
Inconsistency detected by ld.so: rtld.c: 1192: dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!
Inconsistency detected by ld.so: rtld.c: 1192: dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!
Inconsistency detected by ld.so: rtld.c: 1192: dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!

shell code refactoring

Кирилл Колышкин (kir) 29.06.2010 16:14:51

Получаю удовольствие от переделки некрасивого кода на шелле в красивый. Доктор, меня вылечат?

Было (не моё, работает, но выглядит не очень):

function fix_ifup_route()
{
        local file=/etc/sysconfig/network/scripts/ifup-route
        if grep -q 'run_iproute $ACTION to $TYPE $DEST via $GWAY $IFACE $IPOPTS' ${file} >/dev/null; then
                /bin/cp -a ${file} ${file}.$$ || return
                /bin/sed -e 's|run_iproute $ACTION to $TYPE $DEST via $GWAY $IFACE $IPOPTS|run_iproute $ACTION to $TYPE $DEST ${GWAY:+via $GWAY} $IFACE $IPOPTS|' < ${file} > ${file}.$$
                if [ $? -ne 0 ]; then
                        rm -f ${file}.$$ 2>/dev/null
                fi
                mv -f ${file}.$$ ${file}
        fi
}

Стало (моё, работает, выглядит более-менее):

# Fix a bug in sles9 ifup-route script
function fix_ifup_route()
{
       local file=/etc/sysconfig/network/scripts/ifup-route
       local str='run_iproute $ACTION to $TYPE $DEST via $GWAY $IFACE $IPOPTS'
       if grep -q "$str" $file; then
               sed -i -e "/$str/s/via \$GWAY/\${GWAY:+via \$GWAY}/" $file
       fi
}

Их знали только в лицо...

Victor Wagner (vitus) 28.06.2010 21:58:41

http://code.google.com/p/pam-face-authentication/

Вот что, оказывается, бывает. Надо собрать и себе на eee-pc приспособить.
С документацией там, как обычно в новых опенсурсных проектах, все ужасно.

vzctl

Кирилл Колышкин (kir) 26.06.2010 02:13:35

Кстати о птичках. Перед тем, как уйти с работы [домой на выходные], выпустил новый vzctl-3.0.24. Предыдущий раз такое случалось в ноябре 2008 года, с тех пор в vzctl git репозитории накопилось ажно триста коммитов. Теперь сижу, затаив дыхание, и думаю -- вдруг каких глюков насажал туда. Хотя, по идее, всё больше починял да поправлял, выпрямлял да полировал. А вдруг доулучшался? Боязно.

Ещё у этого релиза очень большой (возможно, самый большой на данный момент) список людей, которые в него добровольно вложились (см. тут) -- 32 человека, из них не меньше 14 русских. Из этих русских, правда, двое работают в Parallels (Кирилл Горкунов и Андрей Вагин), но они именно что добровольцы -- никто их над vzctl работать не заставлял, строгой необходимости не было. Поэтому и попали в этот список, а меня, например, там нет -- мне за это платят деньги.

В ближайших планах -- поддержать наконец маски для IP адресов, это мы просто протупили, не сделав с самого начала. Ещё убрать крон-джобы, заменив их на демона, использующего vzevent (или скрипт для udev -- но тогда надо в ядре делать стандартную udev-based нотификацию о событиях). Возможно также, что случится форк -stable и выйдут версии 3.0.24.1 и т.п. Ну и в целом надеюсь выпускать эту штуку почаще, а то как-то, мягко говоря, подзатянул...

updated to Android 2.2 Froyo final

Кирилл Колышкин (kir) 25.06.2010 00:52:49

Обновляюсь (пока писал, уже обновился) до нового (финального?) билда Froyo -- FRF83. Предыдущий (FRF50), который появился во время Google I/0, был, видимо, бетой для журналистов и т.п. Все нормальные люди ждут, пока апдейты придут по воздуху, а мне неймётся.

Ну вот, взял файлик signed-passion-FRF83-from-FRF50.38d66b26.zip, положил его в корень SD карточки под именем update.zip, далее следовал инструкции. Всё прошло как по маслу, всё работает. Подозреваю, что новой функциональности никакой не будет, а только всякие багфиксы.

Заодно между делом узнал, что был ещё один промежуточный апдейт не для всех -- FRF72. "Все" [нормальные люди], как я понимаю, получат по воздуху апдейт с 2.1sp1 (ERE27) сразу до FRF83.

Понял, что буква E -- от Eclair (Android 2.1), а F -- от Froyo (Android 2.2). Ну и, понятное дело, следующая версия будет называться на букву G (Gingerbread).
(number of comments Comments |Comment on this)

Любителям плагинов

Victor Wagner (vitus) 23.06.2010 14:59:07

Помните анекдот "На четвертый день великий вождь Винету догадался, что у сарая нет задней стены".

Вот по-моему, разработчики Mozilla foundation побили рекорд настоящего индейца. Концепеция плагинов в Мозилле существует еще со времен ранних Netscape, то есть не менее 15 лет, и только в Firefox 3.6.4 додумались их запускать в отдельном процессе.

Нет бы сразу предложить авторам плагинов интерфейс через shared pixmap или reparenting x-ового окна.

avahi

Victor Wagner (vitus) 23.06.2010 13:15:45

Вот интересно, сколько пакетов нужно пересобрать, чтобы совсем избавиться от avahi в своей системе?

apt-cache rdepends libavahi-client3 в stable выдает 59 пакетов.

Из них большая часть - еще большее десктопное дерьмо вроде telepathy и totem, но попадаются и полезные вещи вроде libsane или libvirt-bin.
Так на глаз sane, libvirt, x11vnc и vlc. Может кому-то еще mpd понадобится, но мне нафиг не нужен.

UPD благодаря совету [info]besm6 удалось избавиться от зависимости evince от гномовских библиотек. Но вот inkscape пока остался.

hostapd нв Eee PC 900

Victor Wagner (vitus) 10.06.2010 23:33:15

Замучившись настраивать Ad-hoc режим у сетевого адаптера на ноутбуке жены (там дистрибутивное ядро из lenny и madwifi) решил поставить hostapd на свой ноутбук. И не иметь хлопот с организацией сети из всех имеющихся устройств с wifi.

Выяснилось, что hostapd из lenny не умеет работать с драйвером ath5k (у меня-то на ноутбуке ядро из бэкпортов, и где atheros-овские карточки поддерживаются стандартными драйверами).
Пришлось бэкпортить hostapd из squeeze.

Дальше все получилось очень просто. В /etc/network/interfaces завелся отдельный интерфейс
ifaсe wifimaster inet static
address 192.168.xxx.xxx
netmask 255.255.255.0
hostapd /etc/hostapd/hostapd.conf
up /usr/local/sbin/wifimaster enable
down /usr/local/sbin/wifimaster disable

/usr/local/sbin/wifimaster это скрипт который включает форвардинг, добавляет в iptables правило с -jMASQUERADE и перезапускает dnsmasq (который все равно есть. потому что не иметь на ноутбуке кэширующего DNS-сервера - подлое транжирство) с конфигом, в котором тот становится DHCP-сервером и DNS-сервером для всей сети за wifi интерфейсом.
#!/bin/sh

case "$1" in
yes|enable|start|on)
        /etc/init.d/dnsmasq stop
        DNSMASQ_OPTS="--conf-file=/etc/dnsmasq.conf.wifimaster" /etc/init.d/dnsmasq start
        echo 1 > /proc/sys/net/ipv4/ip_forward
        iptables -t nat -A POSTROUTING -s 192.168.217.0/24 -d 0.0.0.0/0 -j MASQUERADE 
;;
no|disable|stop|off)
        /etc/init.d/dnsmasq stop
        /etc/init.d/dnsmasq start
        echo 0 > /proc/sys/net/ipv4/ip_forward
        iptables -t nat --flush
;;
*) echo "Usage $0 enable|disable:"
;;
esac

В конфиге hostapd естественно весь из себя WPA2 и PSK. Можно было бы и с EAP-TLS повозиться, но мне лень. Конфиг hostapd приводить не буду ибо длинный. И 90% его занимают комментарии, из которых все понятно.

Далее для того чтобы переключить интерфейс ath0 из режима WiFi station в режим wifi access point достаточно выполнить две команды
ifdown ath0
ifup ath0=wifimaster

Ну и наоборот - еще проще. Даже без знака = и того, что за ним.

И где они такую траву берут?

Victor Wagner (vitus) 08.06.2010 13:06:36

Пришел на саппорт реквест, который саппротеры до меня проэскалировали. Хотя мы еще вроде как продукта на базе OpenSSL 1.0.0 не продаем, но вопросы уже задают:

> Нас интересует работа ГОСТ (89, 94, 2001) в openssl, и хотелось бы
> посмотреть на работу этих алгоритмов.
> Из описания на вашем сайте поддержки российских криптоалгоритмов в
> openssl, дана информация что в состав openssl версии 1.0.0 и выше уже
> включена поддержка росалгоритмов, разработанные вами.
> Я использовал src.rpm и rpm-пакеты openssl версии 1.0.0-3 из репозитария
> Fedora.
> При пересборке и установке openssl, и после выполнения любой команды с
> обращением к требуемым алгоритмам появляется ошибка, например:
> ---------------------------------
> openssl req -newkey gost2001:A -keyout mykey.p8 -out mykey.req
> Unknown algorithm gost2001
> ---------------------------------
> Пытался пересобирать пакет, отредактировав spec-файл (по разным
> источникам надо добавить парамерты в блок конфигурации enable-gost89
> enable-2001, по другим просто enable-gost) всё равно алгоритмы ГОСТ не
> были включены после установки

Блин, по каким-таким источникам? Скрипт Configure в OpenSSL не автоконфом каким сгенерен, человеком писан. Его читать можно. Там даже комментарии есть. И это есть единственный и неповторимый источником знаний о том, какие возможны опции. enable-gost бывает. Но она включена по умолчанию.

Засада в том, что в fedora собирают OpenSSL с no-ec. А если no-ec, то извините, никакого вам ГОСТа Потому что гост на эллиптических кривых. Еще почему-то также требуется dsa и dh. Если что-то из этих трех выключено, то $disable{"gost"} выставляется в "forced" и никакие отдельные enable не помогут, пока не сделаешь enable пререквизиту.

Вторая засада заклюючается в fips. Это - американская сертификация. И требования этой сертификации запрещают использовать не-фипс алгоритмы. Редхатовцы собирают openssl в FIPS mode, чем эффективно режут возможность работы с неамериканскими национальными алгоритмами.


Плюс еще у них некоторые приложения вроде sshd используют FIPS-cпецифичный API, поэтому сделать drop-in replacement не так-то просто, хотя и возможно.

И еще эти извращенцы из RedHat включили в свой rpm патчик, который искусственно занижает OPENSSL_VERSION_NUMBER до номера версии той беты, с котрой они впервые собирались. Хотя с тех пор уже вышло три беты и два релиза. Потому что у них тот же sshd проверяет OPENSSL_VERSION_NUMBER на ТОЧНОЕ равенство. Ну если бы он хотя бы младшую цифру проверял на больше либо равно...

Я понимаю, что человек столкнувшийся впервые с криптографией может всех этих тонкостей не знать. Но читать-то код на perl уметь надо!

Не могу не поделидзэ :)

Unknown author 07.06.2010 14:06:08

Если всё сложится, в следующем году Libre Graphics Meeting будет во Вьетнаме.

Louis и Hong Phuc

И организовывать его будет вот эта милая девочка. Её зовут Hong Phuc Dang, ей 26 лет и у неё своя собственная небольшая компания. А ещё у неё фуллтаймовая работа вот здесь. Ну и кроме того в прошлом году она помогала в организации GNOME Asia 2009, а ещё она президент FOSS.vn.

берлин, линукстаг

Кирилл Колышкин (kir) 05.06.2010 21:48:06

Всю следующую неделю я в Берлине на LinuxTag. Херлхихь вилькомен, если кто будет там в это время. Пока я точно знаю только про [info]andy_shev.
(number of comments Comments |Comment on this)

великие космонавты и художники

Кирилл Колышкин (kir) 01.06.2010 20:15:30

Восток-2: первый выход в открытый космос. Воспоминания Алексея Леонова -- он, собственно, и выходил. А командиром экипажа был Павел Беляев. 2.6.32 belyayev

В детстве мы с папой были в Ленинграде, ходили в Русский музей. Там мне очень понравилась меня просто поразила картина Куинджи "Лунная ночь над Днепром". Она прямо светится изнутри, на картинках из интернета этого не видно. 2.6.27-kuindzhi
(number of comments Comments |Comment on this)

android: importing certificates

Кирилл Колышкин (kir) 30.05.2010 04:51:25

Все спят, а я пробую поставить свой (самоподписанный) SSL сертификат в гуглофон. Фигушки с маслицем! То есть он как бы туда ставится, но это ничего не меняет.

Собственно, задача в том, чтобы получить доступ к своему почтовому серверу по IMAP over SSL (dovecot), SMTP + TLS (sendmail). Доступ-то я получил (IMAP, кстати, работает со штатным клиентом очень хорошо), только с опциями "SSL (trust any certificate)" и "TLS (trust any certificate)". Хочется то, что в скобках, убрать.

Собственно, поставить сертификат очень просто -- надо сделать так, чтобы веб-сервер отдавал его с Content-Type: application/x-x509-ca-cert. Для этого пишем:
cat << EOF >> /etc/httpd/conf.d/types.conf
AddType application/x-x509-ca-cert .pem
EOF
/etc/init.d/httpd restart


Дальше открываем URL с сертификатом, и он вроде как импортируется (при этом спрашивается пароль на внутрений keychain). Причём это получилось у меня сделать с сертификатом в формате pem.

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

openssl pkcs12 -export -out cert.p12 -in cert/cert.pem -inkey private/cert.pem -name "My cert"

В результате мы получаем файлик, в котором есть и сертификат, и приватный ключ (в чём можно убедиться, просмотрев вывод openssl pkcs12 -info -nodes -in cert.p12). Конечно, это совсем не то, что мы хотим выкладывать и раздавать! Правильная команда вот такая:

openssl pkcs12 -export -out cert.p12 -in cert.pem -nokeys -name "My cert"

Впрочем, это не помогает всё равно. При попытке открыть URL с сертификатом телефон спрашивает пароль от сертификата в бесконечном цикле (пока не нажмёшь Cancel) -- никакой пароль не подходит. Я пробовал делать файл сертификата с паролем и без -- без разницы, и так и так не работает.

Потом я подумал, что проблема в том, что это самоподписанный сертификат, и вспомнил про CAcert.org. Дай, думаю, их рутовый CA сертификат поставлю. Тут тоже всё просто, но ничего не работает. Во-первых, заходим на https://www.cacert.org/ и убеждаемся, что браузер ругается на подписанный непонятно кем сертификат. Во-вторых, открываем http://www.cacert.org/certs/root.crt -- сертификат импортируется. В-третьих, проверяем, что есть результат -- снова открываем https://www.cacert.org/ -- ой, всё равно ругается.

Не знаю, что я делаю не так. Вроде бы всё делаю так. Android 2.2.

Есть вариант, конечно, пересобрать кейчейн и подсунуть ему, но для этого надо разлочивать телефон, это как-то неспортивно.
(number of comments Comments |Comment on this)

Froyo vs Exchange

Кирилл Колышкин (kir) 26.05.2010 17:04:24

Засетапил синхронизацию гуглофона с MS Exchange. Всё работает -- почта, календарь, корпоративная адресная книга. Удивительное дело, не пойму, где подвох.

Произошло это в 16:30. Девайс тут же выдал мне информацию о том, что в 16:00 у нас митинг про VSwap. Упс! Нет бы мне на полчаса раньше это сделать. :(

PS а Sunbird на десктопе у меня почему-то безнадёжно сломан. Я его и так и эдак, никак не ремонтируется :(
(number of comments Comments |Comment on this)

Android 2.2: adb; install to SD card

Кирилл Колышкин (kir) 25.05.2010 19:48:16

Разобрался, почему приложения не хотят ставиться на SD-карточку. Оказалось, что просто пока таких приложений ещё пока нет, но ставить их на карточку всё равно уже можно, только с небольшим вывертом. Перенёс несколько штук из телефона на карту. Расскажу, как.

I. Получение доступа к шеллу от телефона.

Длинный способ -- поставить (на "большой компьютер") и настроить adb. Короткий -- поставить на телефон Terminal Emulator. Описываю оба.

ADB

(0) Поставьте Android SDK.

(1) Пропишите себя в группу plugdev:
sudo /usr/sbin/usermod -a -G plugdev $USER

(2) Пропишите настройки для udev (эти -- для Nexus One):
# cat << EOF > /etc/udev/rules.d/90-android.rules
SUBSYSTEM=="usb|usb_device", SYSFS{idVendor}=="18d1", MODE="0660", GROUP="plugdev"
SUBSYSTEM=="usb|usb_device", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e12", SYMLINK+="android_adb"
SUBSYSTEM=="usb|usb_device", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff", SYMLINK+="android_fastboot"
EOF


(3) Перелогиньтесь и проверьте, что вы в группе plugdev (id | grep plug)

(4) На телефоне поставьте галочку на Settings -> Applications -> Development -> USB debugging

(5) Подключите телефон к компу посредством USB шнурка, смотрите, появился ли нужный девайс (ls -l /dev/andr*)

(6) Запустите adb shell:
adb shell
Если вам выдали доллар -- это шелл от телефона (не рутовый, конечно).

Альтернативный вариант -- поставить на телефон Terminal Emulator, и нижеперечисленные команды делать уже в нём.

II. Инсталляция на SD card.

(1) В шелле телефона пишем:
pm getInstallLocation
в ответ получим
0 [auto]

Это значит, что приложения будут сами выбирать, куда им ставиться. Но таких приложений, у которых в манифесте указано, куда они хотят ставиться, ещё нет. Поэтому в этом режиме "авто" всё будет ставиться в память телефона. Но это можно изменить

(2) В шелле телефона пишем:
pm setInstallLocation 2
Это значит, что хотим непременно на SD card.

(3.1) Теперь можно пойти в Settings -> Applications -> Manage Applications, там ткнуть в любое приложение и нажать на (уже теперь не-серую) кнопочку "Move to SD card". Таким же образом перенести все "толстые" приложения. Не рекомендуется переносить на карточку часто используемые приложения, живые обои и т.п.

(3.2) Также можно пойти и в Маркет, где что-нибудь себе поставить. Ставиться оно будет сразу на SD card.

(4) "И увидел он, что это хорошо". Закончив работы по п. 3, надобно опять пойти в шелл телефона и восстановить там старое значение параметра InstallLocation:
pm setInstallLocation 0

Деньги, как всегда, шлите мне по почте конвертами и бандеролями.
(number of comments Comments |Comment on this)

лост ин транслейш

Sergey Udaltsov (svu) 22.05.2010 15:10:01

Гуглопереводчик жжот.

Someone is no doubt that the dwarf will soon be more Machos than herself makos, but without Machos?

Энтерпрайз такой энтерпрайз

Unknown author 21.05.2010 00:52:04

Когда-то давно, восемь или девять лет назад один университетский приятель уверял меня, что скоро везде будет сплошная Java, а изучать C++ и прочие вижуал паскакали вообще не стоит — только время тратить.

Так считал не только он. По случаю выпуска очередного скальпеля для начинающих вудуистов ещё раз прошёлся по соответствующему разделу каталога. И действительно: заметное количество свободных редакторов патчей и управлялок внешними синтами и сэмплерами было написано в 2000-2004 годах на джаве.

А сейчас? Практически все новые проекты написаны на Qt и C++: QXGEdit, ME-Edit, FB01 Sound Editor, Fx FloorBoard, qtpod, а теперь ещё и Yamaha DX7-II synth manager.

И ещё забавный момент: попытка переписать Protux на жабке позорно провалилась, а вот не согласившийся с новым направлением Ремон Сийриер продолжил работать над версией на Qt, и хоть впечатляющих успехов не добился, но как минимум сохранил проект живым, работающим и понемногу его развивает. Но это Ремон тихий, а я-то злой, я помню, как автор протукса бил себя пяткой в грудь и разглагольствовал о том, что он как опытный Java-программист и сотрудник IBM лучше знает, чё и как надо :)

Отсюда вопрос: зачем нужен энтерпрайз на десктопе?

asus m2n-mx se wtf

Кирилл Колышкин (kir) 19.05.2010 11:44:52

Ядра от RHEL 5 (и от CentOS 5, и стабильное от OpenVZ) не грузятся на машине с материнской платой asus m2n-mx se с вот такой ошибкой:

Kernel panic - not syncing: IO-APIC + timer doesn't work
(дальше рекомендует бутиться с noapic)

Если грузить ядро с флажком noapic, то грузится, но потом страшно ругается на IRQ #11, которое пришло, а никто ни ухом, ни рылом -- поэтому, мол, пришлось его задизаблит. Всё бы ничего, но на этом прерывании висит внешняя сетевая карточка.

Если грузить ядро с флажками noapic irqpoll, то даже уже и сеть начинает как-то работать. Но всё равно какая-то ругань присутствует.

Хочется перепрошить BIOS, но там уже стоит последний 0501.

Решение нашлось вот тут. Выключаем в БИОСе опцию Chipset-> SouthBridge-> MCP61 ACPI HPET TABLE, и всё взлетает и работает без всяких флажков.
(number of comments Comments |Comment on this)

век живи, век учись

Кирилл Колышкин (kir) 17.05.2010 20:20:27

Интересно, полагаю, только юниксоидам и шеллописателям, поэтому под кат.

У меня подобного тому, что написано ниже, в голове много, но, как показывает практика, много никогда не бывает. Вот сегодняшние находки (впрочем, третья старая, просто сегодня ещё раз столкнулся с).

(1) ls при выводе в пайп пишет по одному файлу на строчку (то есть как ls -1). Очевидным становится, если подумать, что ls интересуется размером терминала в ширину, чтобы понять, сколько файлов в одну строчку можно втиснуть. Если терминала нет, то и ширина нулевая, поэтому есть печатаем по одному.

Следствие: в конструкции вида ls -1 | что-то там опция -1 в принципе не нужна.

(2) grep с аргументом "что ищем" в виде многострочного выражения понимает его как "искать любую из этих строк". То есть выражения вида

grep 'one
two
three'

и

grep -E 'one|two|three'

идентичны (опция -E нужна, чтобы grep понимал |, то есть вертикальную палку, то есть "или").

Следствие: в скриптах можно не заморачиваться с сочинением строчки из параметров, разделённых палкой (и не забывать, что в конце палка не нужна, иначе поматчится всё), можно делать просто через новую строку (и неважно, есть там пустые строки или нет).

(3) опция -e для echo является непортабельной. Вот, например, как ведёт себя dash(дефолтный шелл в Debian и Ubuntu) и bash:
$ /bin/bash -c 'echo -e xxx\\nyyy'
xxx
yyy
$ /bin/dash -c 'echo -e xxx\\nyyy'
-e xxx
yyy


Теперь уберём -e и посмотрим ещё раз:
$ /bin/bash -c 'echo xxx\\nyyy'
xxx\nyyy
$ /bin/dash -c 'echo xxx\\nyyy'
xxx
yyy


Следствие: надо использовать printf или хотя бы писать #!/bin/bash в начале скрипта.
(number of comments Comments |Comment on this)

linux*.ru

Unknown author 12.05.2010 21:55:42

Судя по статьям, линуксграфикс.ру превращается в блендертьюториалс.ру :)

Две новых публикации:

Введение в текстурные ноды Blender
Причина №1, по которой ваш рендер выглядит фальшиво

Следущая разнообразия ради будет в отрыве от 3D.

Интервью с Давидом Ревоем пришлось похерить. Вопросы ему понравились, но после предыдущего интервью в каком-то французском издании его очень конкретно достали недоброжелатели, так что может быть попозже — когда "Sintel" выйдет.

Из прочего, россыпью:

Костя почти доделал дизайн gimp.ru. Выглядит прилично, но есть засада: под него надо доделывать ещё процентов десять ТЗ, которые планировалось отложить как минимум до середины лета. Ну и в ближайшее время будет запущен ещё один раздел, который программазма не требует, слава богу.

На linuxsound.ru несмотря на приближающееся лето пошла вторая волна активности в разделе «Написано в Linux».

Пару недель назад был снят замок с linuxvideo.ru. Пока только новости и расширяющийся каталог приложений. Прозрачную авторизацию на всех сайтах и прочие рабочие моменты будем обсуждать с Игорем в Брюсселе. Пока что у обоих других дел хватает.

Работаем, короче.

Relaunched blog

Михаил Гусаров (dottedmag) 05.05.2010 04:00:00

New blog, now without monstruosity of Byteflow. Thanks to Piranha for Cyrax and to j2a for his excellent review.

Майские праздники такие майские

Unknown author 03.05.2010 17:04:28

В свободное время (муахаха) на выходных устроил лёгкий геноцид собственному фотографоманству. 15 гигов равов уже отправилось в страну вечного shallow DOF, но кровушкизакрепителя всё ещё хочется.

Тем временем в бхагават-гите даркцапли царит «трэш, угар и содомия» (цэ) [info]watchful_shadow:

— влита ветка Хенрика с импортом через gPhoto и гибкой хитровыдуманной схемой именования файлов;
— сделан, но временно отключен удалённый щелчок затвором;
— добавлен пробный модуль переноса цвета с картинки на картинку, нну-забили-ти пока так себе;
— добавлено простое выравнивание горизонта рисованием прямой и кадрирование а-ля гимп;
— для старообрядцев и последователей Никона вернули модуль гаммы и линейности под именем «Починка профиля входа»;
— Паскакаль влил пачку волшебных цветовых матриц домашней заготовки, женщины трепещут и падают ниц;
— Андрей Каминский фигачит порт дополнительных подсказок по композиции, утащенных из диджикама;
— добавлены модули локального контраста, подавления шума, имитации зернистости плёнки и раздельного тонирования.

Кстати, о тонировании!

Богуславская :)

Простите меня, Анастасия! :-Р