суббота, 12 декабря 2009 г.

Новые пакеты, новые проблемы... или как снова включить автомонтирование NTFS с записью

После переустановки системы с новыми пакетами из testing и частично unstable, GNOME стал монтировать NTFS-диски как ntfs, а не ntfs-3g. Хотя, если честно, я не уверен, что это виноват GNOME. Скорее, это проблема в новом пакете devicekit-disks, который теперь используется в качестве абстракции вместо hal. Фикс был найден в обсуждении бага в багтрекере Debian. Фикс простой и, скорее всего, будет включен в следующие версии пакета ntfs-3g. Нужно создать символьную ссылку, чтобы при попытке монтирования файловой системы как ntfs, вызывался ntfs-3g:
# ln -s /usr/bin/ntfs-3g /sbin/mount.ntfs
Всё, даже ничего перезапускать не придется, просто заново подключите жесткие с разделами ntfs.

среда, 9 декабря 2009 г.

Свежие настройки для драйверов от Nvidia

Больше года прошло со времени моего последнего описания необходимых настроек для проприетарных драйверов Nvidia. Пришло время немного освежить эти знания, некоторые настройки больше не нужны, а кое-где добавим новых костылей. Сейчас я использую пакеты драйверов версии 190.42 из репозитория Debian.

Чтобы получить актуальную версию утилиты настройки nvidia-settings, придется добыть ее вручную, в Debian есть только старая 185-я версия. Нужно установить старый пакет, распаковать скачанный с сайта Nvidia (запустить прямо в папке, куда вы его скачали, с ключом -x, не забудьте добавить права на исполнение к файлу). В моем случае это выглядело так (выполнять из папки с файлом):
$ chmod u+x NVIDIA-Linux-x86-190.42-pkg1.run
$ ./NVIDIA-Linux-x86-190.42-pkg1.run -x
В итоге появилась папка с распакованным содержимым. Взяв из нее исполняемый файл nvidia-settings, просто заменяем бинарник из пакета, который лежит по адресу /usr/bin/nvidia-settings

Теперь настраиваем "иксы". Из папки, куда мы распаковали архив с сайта, запустим волшебную утилитку от Nvidia, которая сгенерирует нам xorg.conf (у меня установлен X-сервер с пустым конфигом):
# usr/bin/nvidia-xconfig
Она ругнется, что текущий конфиг пустой, но всё же создаст xorg.conf, который мы и будем править.

Опции в раздел "Screen" файла /etc/X11/xorg.conf можно добавить следующие:
Option "NoLogo"
Option "TripleBuffer" "1"
Option "RandRRotation" "true"
Option "NvAGP" "1"
Option "OnDemandVBlankInterrupts" "true"

Для активации разгона можно также добавить:
Option "Coolbits" "1"
сами знаете, что за спаленный чип несете ответственность только вы. Изменение частот будет доступно в утилите nvidia-settings.

Если сравнить с предыдущим моим файлом настроек, то он заметно укоротился. Многие опции по-умолчанию в нужном состоянии, некоторые  устарели, поэтому нет смысла их включать в файл настройки.

вторник, 8 декабря 2009 г.

Как изуродовали GNOME 2.28 ... и как всё исправить

Итак, в GNOME 2.28 по-умолчанию убрали иконки из меню и с кнопок. Как они до такого вообще додумались!!! Кретинизм прогрессирующий! Иконки в меню можно включить через GUI, несведущие пользователи еще как-то могут найти это (Система -- Параметры -- Внешний вид -- закладка Интерфейс), а на кнопках - вообще только через правку параметров в gconf! И это среда, которая всегда стремилась быть доброжелательной к пользователю!! По изображению нужный пункт меню или кнопку человек находит ГОРАЗДО быстрее, чем по надписям! Каким же идиотом надо быть, чтобы этого не знать!!!

А теперь фикс, всего две строчки в консоли:
$ gconftool-2 --type boolean --set /desktop/gnome/interface/buttons_have_icons true
$ gconftool-2 --type boolean --set /desktop/gnome/interface/menus_have_icons true

воскресенье, 18 октября 2009 г.

Репы

Попробую организовать список дополнительных, полезных на мой взгляд, репозиториев для Debian. Если кто не в курсе, волшебные строчки нужно добавлять в файл /etc/apt/sources.list и после делать:
# apt-get update
Сам я использую смесь Testing и Unstable веток, поэтому и соответствующие ветки репозиториев описываю.

Репозиторий нестабильных и самых свежих версий Wine:
deb http://www.lamaresh.net/apt/ squeeze main

Пакеты библиотеки wxWidgets:
deb http://apt.wxwidgets.org/ lenny-wx main

SVN-сборки среды разработки Code::Blocks:
deb http://apt.jenslody.de/ any main

Карта-справочник ДубльГИС:
deb http://packages.redsolution.ru/2gis lenny non-free
За этот неофициальный репозиторий отдельное спасибо компании RedSolution. У меня доступ к корню файловой системы для wine-приложений отключен, поэтому пришлось создать небольшой костыль для запуска 2gis:
$ mkdir ~/.wine/drive_c/Program\ Files/2gis
$ ln -s /usr/lib/2gis/ ~/.wine/drive_c/Program\ Files/2gis/ВАШ_ГОРОД
После этого ДубльГИС будет запускаться через меню.

Дополнительные мультимедиа-пакеты:
deb http://www.debian-multimedia.org/ testing main

Сборки Opera:
deb http://deb.opera.com/opera/ sid non-free

Стабильные версии Skype:
deb http://download.skype.com/linux/repos/debian/ stable non-free

Для большинства репозиториев придется установить ключ, чтобы установщик не ругался на эту тему. Как правило, в репозиторий включен пакет с ключом, или на сайте с репозиторием можно найти инструкцию.

понедельник, 28 сентября 2009 г.

Зачем хранить музыку на жестком?...

При наличии безлимитного интернета хранить музыку на жестком точно ни к чему. После непродолжительных поисков был найден сервис бесплатной музыки Jamendo. Именно с него берет треки плеер на libre.fm. Можно слушать музыку прямо через браузер на libre.fm или на самом Jamendo, но это еще то самоистязание. Лучше всё же полноценным десктопным приложением. Используемый мною Audacious не подошел для этих целей - в нем нет вообще никакой интеграции с Jamendo. Зато она есть в MPD (вернее, в плагине одного из клиентов к MPD). Итак, ставим нужные пакеты:
# apt-get install mpd gmpc gmpc-plugins
Теперь нужно добавить права на проигрывание звука пользователю mpd, с правами которого будет запускаться демон нашего плеера:
# usermod --append --groups audio mpd
После этого нужно что-то перезапустить... не выяснив что, просто перезагрузил систему и права на вывод звука плеер всё же получил.
А дальше просто запускаем клиента из меню, открываем раздел Jamendo Browser, плеер загрузит базу композиций и можно выбирать песни для проигрывания.

После непродолжительного использования выясняется, что плеер использует звуковую карту в эксклюзивном режиме и больше никакие программы не могут выводить звук, пока mpd что-то проигрывает. Как говорит инструкция на сайте mpd, исправляется настройкой на использование миксера звука. Открываем на редактирование конфиг плеера /etc/mpd.conf и заменяем секцию audio_output на следующую:
audio_output {
type "alsa"
name "Sound Card"
options "dev=dmixer"
device "plug:dmix"
}
В этом же файле можно настроить mpd на программное управление громкостью, чтобы он не изменял общую громкость в системе. Нужно задать опцию:
mixer_type "software"
Сохраняем файл, перезапускаем плеер:
# /etc/init.d/mpd restart
Проблема решена.

Также к плееру есть модуль для отправки статистики на last.fm, libre.fm и jamendo.com. Ставим:
# apt-get install mpdscribble
При установке нас спросят, хотим ли установить в качестве демона. Дальше настраиваем его через редактирование конфига /etc/mpdscribble.conf, просто указываем там данные аккаунтов для тех сайтов, на которые вы хотите отправлять статистику, и сохраняем конфиг. Дальше перезапускаем демона:
# /etc/init.d/mpdscribble restart
И пользуемся.

Обновление
В последней версии mpdscribble для запуска его в качестве демона нужно дополнительно отредактировать файл /etc/default/mpdscribble и указать, что mpd запущен в качестве системного демона:
MPD_SYSTEMWIDE=1
Сохраняем файл. Перезапускаем сервис:
# /etc/init.d/mpdscribble restart
Готово.

Обновление
Для назначения глобальных горячих клавиш подойдет mpc и любая программа, умеющая вешать консольные команды на сочетания клавиш (например, CompizConfig Settings Manager, который наверняка у вас уже установлен). Все команды mpc очень просты и описаны в его мануале.

Обновление
Нашел скрипт для публикования прослушиваемой в MPD песни через Jabber-клиент Psi. Надо будет попробовать на досуге.

среда, 23 сентября 2009 г.

Ванильное ядро 2.6.31 и BFS в Debian

Исходники ядра в репозиториях Debian заметно отстают, поэтому решил попробовать ванильное ядро. Качаем архив с kernel.org, распаковываем в /usr/src, делаем ссылку linux на папку с исходниками. Как сообщает страница документации, утилита make-kpkg хорошо работает и с ванильным ядром.

С дополнительными модулями возникла только одна проблема: драйвер broadcom-sta не захотел собираться с этим ядром. Но на сайте Broadcom уже выложили версию драйвера, которая работает с последним ядром, качаем его и сначала распаковываем драйвер из репозиториев, а затем заменяем папку /usr/src/modules/broadcom-sta/i386 или /usr/src/modules/broadcom-sta/amd64 (в зависимости от вашей архитектуры) содержимым архива с официального сайта. Последние драйверы Nvidia и Virtualbox собираются нормально.

Дальше качаем патч BFS к нашей версии ядра и применяем его к исходникам:
# cd /usr/src/linux
# patch -p1 < /путь/к/файлу/патча/имя-файла.patch
Теперь можно собирать ядро:
# make-kpkg --initrd linux_image modules_image
Через пару десятков минут получим в папке /usr/src пакеты для нашей системы, можно ставить и пользоваться.

Сравнивать производительность в моем случае бессмысленно, т.к. я еще и изменил частоту таймера с 250HZ до 1000HZ, но в целом ощущения исключительно положительные. Система реагирует на команды ощутимо шустрее.

Примечание.
Вместе с патчем BFS уживается и последний патч Tuxonice. По крайней мере, они не патчат одни и те же файлы, т.е. их можно накладывать оба. Но у меня Tuxonice так и не пробуждает систему из спящего режима. Виноват, видимо, проприетарный драйвер от Nvidia и включенный Compiz. Ждущий режим, тем не менее, работает хорошо.

вторник, 8 сентября 2009 г.

Превращаем кэш пакетов в локальный репозиторий

В Synaptic (наверняка и в apt-get, просто этим не заморачивался) можно настроить кэш пакетов так, что у вас в папке /var/cache/apt/archives будут лежать все пакеты, необходимые для переустановки или восстановления вашей системы. Удобно? Не очень. Вручную устанавливать пакеты по одному, вручную устанавливать все зависимости... можно сойти с ума. Хорошо, что в Дебиан всё уже продумано до нас. Выполняем в папке с пакетами команду:
# dpkg-scanpackages -m ./ | gzip -9c > Packages.gz
Получаем репозиторий. Дальше копируем всю папку на машину, где будет производиться установка и прописываем в /etc/apt/sources.list строчку:
file:///путь/к/папке/ ./
Можно временно выключить интернет-репозитории, чтобы всё ставилось из локальных пакетов. И дальше классика:
# apt-get update
# apt-get install название_программы

воскресенье, 28 июня 2009 г.

Dell Latitude D630

Поменял свой Acer на чудо техники от Dell. Железо в нем следующее:
  • Core 2 Duo T8100 2.1Ghz
  • Nvidia Quadro NVS 135M
  • Broadcom BCM4312 802.11b/g (Wireless 1395 WLAN Mini-Card)
Остальное для "диагноза" не важно. Видео завелось без проблем по изложенной ранее инструкции. Судя по смутным данным из Интернета, карточка примерно соответствует GeForce 8400. Разницы после 8600 не почувствовал.

А вот с Wi-Fi как быть, я не сразу понял. Между прочим, в Ubuntu 8.10 Wi-Fi завелся без проблем. В Debian придется чуток по-плясать с бубном. Если у вас ядро из репозитория, то наверное можно сделать так:
# m-a a-i broadcom-sta-source
# apt-get install broadcom-sta-common
Если же ядро из исходников, то ставим broadcom-sta-source и broadcom-sta-common, распаковываем исходники куда положено, собираем ядро и модули, ставим пакеты.
У меня данный модуль упорно не хотел подключаться при загрузке системы, пришлось насильно вписать его и модуль для шифрования в файл /etc/modules для их "автозагрузки":
wl
ieee80211_crypt_tkip
После этого интерфейс карточки нормально цепляется через Network Manager 0.7.

Пока что не разобрался с местным "фирменным" пакетом для поддержки таких фишек как DVD-ROM с горячим извлечением и специальных сочетаний клавиш, может допишу об этом позже....

Обновление
Начиная с версии ядра 2.6.32, карта Wi-Fi поддерживается свободным драйвером b43. Единственное, необходимо установить пакет, скачивающий и извлекающий прошивку для карточки:
# apt-get install b43-fwcutter (см. обновление 2)

и согласиться на скачивание и извлечение прошивок.
Также, если был установлен пакет broadcom-sta-common со вспомогательными файлами для проприетарных драйверов, то его необходимо удалить. Вместе с ним удалятся и сами проприетарные драйверы. Пакет мешает автоматической загрузке свободного драйвера при старте системы.

Обновление 2
Как оказалось, b43-fwcutter из репозитория Debian устарел и не подходит для моей карточки. Если вы успели установить b43-fwcutter, делаем следующее:
# apt-get purge b43-fwcutter
# rm -R /lib/firmware/b43 /lib/firmware/b43-legacy
Как гласит инструкция на сайте, посвященном Wi-Fi в Linux, нужно сделать следующее (из любой папки, где не жалко намусорить):
$ git clone http://git.bu3sch.de/git/b43-tools.git
$ cd b43-tools/fwcutter
$ make
$ cd ..
$ wget http://downloads.openwrt.org/sources/broadcom-wl-4.178.10.4.tar.bz2
$ tar xjf broadcom-wl-4.178.10.4.tar.bz2
$ cd broadcom-wl-4.178.10.4/linux
# export FIRMWARE_INSTALL_DIR="/lib/firmware"
# ../../fwcutter/b43-fwcutter -w "$FIRMWARE_INSTALL_DIR" wl_apsta.o
После этого можно пользоваться.

Еще одним закрытым драйвером в системе стало меньше и это замечательно! В следующем ядре обещают еще и nouveau в основную ветку включить. Если он и правда достаточно хорош для повседневного использования, то в моей системе не останется закрытых драйверов.

четверг, 7 мая 2009 г.

Blueman - управляющий синим зубом

С bluetooth в GNOME как-то изначально не заладилось... Не было хорошей программы, умеющей всё сразу. Как раз такой программой и является Blueman. Заявленные возможности:
  • Добавление устройств в "доверенные", обмен ключами.
  • Поиск доступных устройств для подключения.
  • Соединение с интернетом через GPRS/EDGE/3G, также умеет создавать rfcomm-устройства и они становятся доступны для подключения через Network Manager 0.7
  • Создание и подключение к сетям через синий зуб.
  • Работа с устройствами ввода и аудио.
  • Прием, передача файлов. Можно просматривать файлы на устройствах в Nautilus через службу OBEX.
До недавних пор не было возможности собрать или установить Blueman версии выше 0.6 в Debian. Новые версии основаны на стеке bluez 4, а в Debian была доступна только 3-я версия этого пакета. Но и этой преграды больше нет. В экспериментальной ветке появился наконец-то bluez 4, спасибо причастным к этому людям. Однако после установки пакетов от Ubuntu из репозитория программа отказалась работать. Пришлось скачать исходники пакета и собрать его заново. После этого всё запустилось и заработало. Уже собранные пакеты (Blueman и Obex Data Server) для Debian под архитектуру i386 есть на моей страничке.

Обновление
Blueman уже есть в репозиториях Debian! Спасибо виновным!

среда, 1 апреля 2009 г.

Foxmarks + nginx + WebDAV = синхронизация закладок

Если у вас вдруг имеется компьютер с Debian (или с другой nix-системой), постоянно подключенный к интернету, и нужно синхронизировать закладки браузера с нескольких машин через интернет, то неплохим решением будет поднять web-сервер на этом компьютере (будем называть его сервером), настроить протокол WebDAV, поставить в браузер плагин Foxmarks, настроить плагин на работу с собственным сервером и радоваться жизни. В качестве сервера я использовал VDS с 64Мб памяти и 1Гб места на жестком.

Т.к. на VDS установлен Debian Etch, пришлось подключить репозитории testing. Далее ставим очень легкий web-сервер nginx:
# apt-get install nginx
Далее создаем файл /etc/nginx/sites-available/bookmarks следующего содержания:

server {
listen 8080;
server_name your.domain.name;

client_body_temp_path /path/to/temp;
charset utf-8;

auth_basic get-out;
auth_basic_user_file /etc/nginx/pass;

location / {
root /path/to/your/bookmarks;
dav_methods PUT DELETE MKCOL COPY MOVE;
create_full_put_path on;
dav_access user:rw group:rw all:r;
}
}

В этом файле нужно настроить следующее:
  • 8080 - порт для соединений. Если вы собираетесь синхронизироваться из офиса, где перекрыта часть портов, здесь есть смысл поставить один из открытых портов.
  • your.domain.name - доменное имя вашего сервера.
  • /path/to/temp - путь к временной папке.
  • /etc/nginx/pass - путь к файлу с именами пользователей и паролями, его мы создадим позже.
  • /path/to/your/bookmarks - путь к папке, куда и будет производиться синхронизация.
  • user:rw group:rw all:r - права для вновь создаваемых сервером файлов.
Теперь включим эту настройку:
# ln -s /etc/nginx/sites-available/bookmarks /etc/nginx/sites-enabled/bookmarks

Для создания файлика с паролями нам понадобится утилита htpasswd из пакетов apache2-utils или mini-httpd. Можно сгенерировать файл на другой машине и затем перенести его (или просто скопировать содержимое). Для создания файла выполним следующее:
# htpasswd -c /etc/nginx/pass username
Первый параметр - это файл, путь к которому мы указали в настройках nginx. username - имя пользователя, с которым мы будем заходить на сервер. В процессе работы утилита спросит 2 раза новый пароль для пользователя и отрапортует об успехе.

Можно смело перезапускать nginx для применения настроек:
# /etc/init.d/nginx restart

Далее ставим Foxmarks в Iceweasel (Firefox). При первом запуске плагин попробует настроить нам учетную запись на своем сервере, нужно отказаться от этого. Первым делом идем в настройки браузера, в раздел "Приватность" -- "Исключения...", пишем в поле "Адрес сайта" адрес нашего сервера и жмем кнопку "Включить". Закрываем окно. Это нужно потому, что браузер по-умолчанию блокирует cookies от каких-попало сайтов.

Теперь идем в настройки Foxmarks (можно быстро попасть туда, нажав на иконке в статусной строке). Здесь необходимо настроить следующее:
  • Первым делом на вкладке "Дополнительно" нужно включить опцию "Использование собственного сервера" и вписать 2 адреса к файлам для синхронизации закладок и паролей. Например, такие адреса:
    http://your.domain.name/bookmarks.json
    http://your.domain.name/passwords.json
  • На вкладке "Учетная запись" нужно заполнить поля "Имя пользователя" и "Пароль" теми данными, которые вы указали утилите htpasswd.
И всё. Жмем на кнопку синхронизации и радуемся жизни. Идею такой настройки подсказали в jabber-конференции debian@conference.jabber.ru

Обновление
При первой синхронизации может возникнуть проблема, связанная наверное с отсутствием файлов на сервере. Нужно зайти в Foxmarks и на вкладке "Дополнительно" нажать кнопку "Отправить" напротив "Перезаписать закладки на сервере". Это нужно делать при первой для сервера синхронизации. При появлении нового клиента это делать уже не нужно, т.к. вы убьете свои закладки на сервере.

суббота, 21 марта 2009 г.

Compiz как основной менеджер окон в Gnome

Добавление "compiz --replace" в Сеансы - это, конечно, хорошо на первое время. Но нужно уже и меру знать. Хочется полностью заменить metacity на compiz. Хоть совсем немного, но замедляет время загрузки системы запуск сначала одного оконного менеджера, а затем другого. Нашел где-то на ubuntuforums.org решение проблемы. Выполняем следующее заклинание:
$ cp /usr/share/gnome/default.session ~/.gnome2/session
Затем правим скопированный файл, например, через gedit:
$ gedit ~/.gnome2/session
и заменяем в нем строку
0,RestartCommand=gnome-wm --sm-client-id default0
на
0,RestartCommand=gnome-wm --default-wm compiz --sm-client-id default0
Всё, при следующем старте сессии будет запущен только compiz, никакого metacity.

Еще есть неисследованный вариант с добавлением альтернативы x-window-manager, пока не знаю как это сделать и поймет ли это Gnome.

P.S. Вместо compiz можно и другой оконный менеджер использовать, просто мне нужен compiz.

Обновление.
Попробовал добавить альтернативу x-window-manager на compiz и включить его по-умолчанию. Gnome выбирает metacity и вообще не запускает compiz. Так что вариантов нет, только так настраивать оконный менеджер по-умолчанию для Gnome

Обновление
Всё оказалось намного проще. Решение найдено в списке рассылки Alt Linux. В папке /usr/share/gnome/wm-properties лежат desktop-файлы GNOME-совместимых оконных менеджеров. Убеждаемся, что там есть файлик от Compiz'а. Далее открываем gconf-editor, идем в /desktop/gnome/session/required_components/ и меняем значение windowmanager на compiz.

Установка Debian с USB-флешки

Простенькая задачка... поставить Debian 5.0 с USB-носителя. Для подготовки флешки понадобится рабочая Linux-машина, не обязательно под Debian. Из софта необходимо:
  • syslinux
  • mbr
Форматируем флешку в FAT32 и не забываем убедиться, что нужный нам (и, как правило, единственный) раздел имеет флаг boot. Записываем в нее MBR:
# install-mbr /dev/sdX
Затем ставим syslinux на нее:
# syslinux /dev/sdXY
Теперь забираем из раздела скачивания с сайта Debian образ ядра и initrd для установки с жесткого, флешек и т.п. Вот прямая ссылка на страницу с версией, включающей установщик на GTK. Кидаем оба файла на флешку.
Дальше нужно создать файл конфигурации для загрузчика syslinux. Вот самый простой вариант:
default vmlinuz
append initrd=initrd.gz
Файл должен называться syslinux.cfg и положить его надо в корень флешки.
Последний штрих - кидаем на флешку образ установочного диска Debian. Важно, чтобы расширение файла было iso.
Волшебная флешка готова, можно грузить машину с нее и ставить Debian.

суббота, 14 февраля 2009 г.

Рекорд скорости Nvidia+Compiz

В результате долгих мучений с известными проблемами перерисовки экрана в связке Compiz+проприетарные драйверы Nvidia пересел обратно на старую версию дров (173.14.09), где эта проблема не наблюдалась. На этих драйверах gtkperf "порадовал" результатом в 20 секунд на все тесты, а это очень много. Сегодня очередная попытка запустить на полную новые драйверы (180.22, из репозитория Debian). Благодаря комментарию бага был найден обход проблемы с перерисовкой. Одним из решений, найденных мною методом научного тыка, было выключить прямую отрисовку (Direct Rendering) для своего пользователя. Но в этом случае отказывались работать программы, которым такая функция необходима (например, моя любимая игрушка World of Goo из-под Wine). Спасибо автору комментария (автора зовут Carrick Detweiler) за подсказку как отключить прямую отрисовку только для Compiz. Нужно создать в папке ~/.config/compiz файл compiz-manager, содержащий INDIRECT=yes. Вот как это можно сделать одной командой:
mkdir -p ~/.config/compiz; echo INDIRECT=yes >> ~/.config/compiz/compiz-manager
После этого можно устанавливать новенькие драйверы и проблемы с отрисовкой больше нет. Пока не решаюсь убирать старые настройки, т.к. такой скорости я еще не видел! Благодаря всем этим танцам с бубном, gtkperf показал рекордные 6,16 секунд на моей GeForce 8600M GS!!!

P.S. Отключение прямой отрисовки снижает производительность многих эффектов в Compiz, но на легких эффектах разницы не чувствуется. Зато обычный интерфейс работает очень быстро!

Обновление
В багрепортах Ubuntu появилось очень интересное сообщение со ссылкой на патч к модулю Workarounds, исправляющий проблему с перерисовкой экрана. Используя этот патч я собрал свою версию пакета compiz-fusion-plugins-main. После установки включаем модуль Workarounds и в нем отмечаем "Force synchronization between X and GLX". После этого убираем INDIRECT=yes из файла ~/.config/compiz/compiz-manager. Перезапускаем compiz и получаем новый рекорд производительности и никаких проблем с отрисовкой! Теперь для моей конфигурации новый рекорд gtkperf составляет 5,39!

Обновление
Забыл указать важный факт, у меня установлена тема GTK "Nodoka-Rounded". На более быстрой теме "Mist" (согласно сравнению движков, это вообще самая быстрая GTK-тема) получил результат в 4,49 секунд.

понедельник, 9 февраля 2009 г.

Свежее ядро в Debian

В связи с приоритетностью выпуска уже наконец стабильного Debian 5.0 Lenny пакет ядра перестал обновляться в Unstable. Между тем уже вышло ванильное ядро 2.6.28, а в репозиториях всё еще 2.6.26. В результате поиска решения этой проблемы была найдена страничка в Debian Wiki, сообщающая о наличии репозитория с самыми свежими снимками ядра. В репозитории присутствуют все необходимые пакеты: исходники, бинарные сборки, заголовки. Стабильность, конечно же, не гарантируется.

Для установки добавляем в /etc/apt/sources.list строчку:
deb http://kernel-archive.buildserver.net/debian-kernel trunk main
И добавляем ключ:
# wget -q -O - http://kernel-archive.buildserver.net/key | apt-key add -
Обновляем список пакетов:
# apt-get update
И вот они, свежие пакеты доступны для установки/обновления.

вторник, 27 января 2009 г.

Проверка установленных пакетов

Бывает техника дает сбои, сыпятся жесткие, да и мало ли чего может случиться. Работоспособность системы восстановить не так уж сложно, а вот надоедливые ошибки устранить в программах, да еще и если не ясно файлы из каких пакетов повреждены... И тут на помощь нам приходит продуманная система управления пакетами в Debian. Почти все пакеты включают в себя контрольные суммы для содержащихся в них файлов. При установке эти суммы тоже распаковываются и хранятся в /var/lib/dpkg/info/*.md5sums. И вот после какого-либо катаклизма можно воспользоваться этим для выяснения того, какие пакеты нужно переустановить. Сначала ставим программу для этих целей:
# apt-get install debsums
Затем просто запускаем ее в тихом режиме:
$ debsums --silent
и читаем сообщения. Пакеты, в которых контрольные суммы не совпадают, есть смысл переустановить.

Установка локальных пакетов

Встала задача поставить несколько локальных пакетов (то есть вполне конкретных файлов .deb, уже скачанных и лежащих на жестком) с автоматическим подтягиванием зависимостей из репозиториев. Для этого первым шагом ставим все локальные .deb-файлы (команда делается из папки с пакетами и предполагается, что все пакеты из этой папки нам нужны):
# dpkg -i *.deb
Если же нужны конкретные пакеты, то указываем их через пробел:
# dpkg -i пакет1.deb пакет2.deb пакет3.deb
Установщик наверняка выдаст пару-тройку сообщений о том, что нехватает еще пакетов. Для устранения недостающих зависимостей пишем:
# apt-get -f install
и наслаждаемся автоматикой.
З.Ы. За подсказки спасибо Лису из debian@conference.jabber.ru