2011/03/24

Бразильский танец с бубном

Очередная моя статья в свежей прессе!

На этот раз рассуждал о настройке, оптимизации работы и обеспечении безопасности Samba-клиента в Linux.

2011/03/22

Убираем анимацию табов в Firefox 4

Сегодня (почтенная публика уже, наверное, в курсе) состоялся релиз Firefox 4! Всё вроде хорошо: и быстрота, и простота, и так далее. Но, следуя трендам, разработчики прикрутили анимацию при открытии таба, которая лично меня ужасно раздражает.
А убрать её через штатное меню настройки нельзя, а можно вот так: надо набрать в строке адреса "about:config", в фильтре ввести "tab", найти параметр browser.tabs.animate и установить его значение в false.

2011/03/21

Выставляем правильное разрешение на внешнем дисплее

Как выяснилось, мой уютный ThinkPad с Арчем на борту не сильно дружит с телеком Samsung по VGA кабелю, а именно дает выставлять разрешение максимум 1024x768, хотя поддерживается там 720p (1360x768). Причину такого поведения доподлинно выяснить не удалось, но тут скорее всего два варианта: либо дрова неправильно обрабатывают EDID блок, либо этот блок неправильно формируется на телеке (либо я вообще неправильно настроил иксы).
Для исправления ситуации командуем, чтобы узнать параметры этого разрешения, так называемый VESA CVT mode line:
$ cvt 1360 768
Далее добавляем этот режим в список доступных:
$ xrandr --newmode "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync
И добавляем режим для конкретного выхода:
$ xrandr --addmode VGA1 1360x768_60.00
После этого нужное разрешение будет доступно для выбора в xrandr или фронтэнде к нему для вашего WM/DE. Я, вследствие природной лени, пользуюсь lxrandr. Чтобы каждый раз не вбивать команды, можно записать их в файлы ~/.xinitrc или ~/.xprofile - они выполнятся при старте иксов.

Либо можно добавить в xorg.conf блок типа такого:
Section "Monitor"
    Identifier "External VGA"
    Modeline "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync
    Option "PreferredMode" "1360x768_60.00"
EndSection

2011/03/11

Считаем количество ненулевых битов

"Предложите способ посчитать количество ненулевых битов в содержимом файла с именем blob.dat". Предлагаю:

#!/usr/bin/python2.7

def bstr(n):
    return ''.join([str(n >> x & 1) for x in (7,6,5,4,3,2,1,0)])

f = file('blob.dat', 'rb')
bytes = f.read()
sheet = ''.join([bstr(ord(c)) for c in bytes])

amount = 0
for bit in sheet:
    if bit == '1': amount += 1

print amount

2011/03/03

Скринкастинг в Linux

Вы всё ещё снимаете видео о том, как похекали сайт NASA, с помощью recordmydesktop? Не позорьтесь! Вот вам кошерная команда:

$ ffmpeg -f x11grab -s 1280x800 -r 25 -g 250 -i :0.0 -sameq -vcodec qtrle out.mov

1280x800 нужно заменить в соотвествии с разрешением экрана. На мой взгляд такой набор параметров обеспечивает оптимальное соотношение скорость/качество.