Сайт об использовании Linux на десктопах в России. Здесь можно попросить записать или недорого заказать свободный софт почтой у пользователей сайта, там же найти помощников при установке и настройке Linux в образовательном учреждении своего города. После регистрации на сайте можно добавить себя в список распространителей свободного софта и предложить помощь учителям своего города, создать свой блог.

Firefox 3.6 под Linux летает

Firefox 3.6 под Linux

Всем кто недоволен скоростью работы Firefox (Iceweasel) под Linux рекомендую поставить официальную сборку вышедшего 21 января Firefox 3.6.

Во-первых, сборка с официального сайта каким-то чудом быстрее работает чем сборка например в составе Debian, это и на 3.5 было видно. Ранее такое было замечено и в Ubuntu.

Во-вторых, устанавливая сборку с официального сайта не нужно ждать пока ее бекпортят под ваш дистрибутив Linux и всегда есть возможность пользоваться новейшей версией. А мозилла от версии к версии только прибавляет в скорости, что большая редкость для столь больших проектов и очень радует. В Debian Etch мне пришлось прикрутить к FF новую библиотеку GTK, но в Debian Lenny, и других новых дистрибутивах, просто качаем архив .tar.gz с официального сайта, распаковываем в ~/firefox и запускаем ~/firefox/firefox

Эффект потрясающий!

Блог: RU Linux

С Новым Годом!

30 минут и настанет 2010. Чем запомнился Linux и свободный софт в году уходящем?

В университете для преподавания рекурсивно-логического программирования со студентами я теперь использую свободный SWI-Prolog вместо "классического" закрытого Turbo Prolog, некоторые парни сдают задачи в emacs :) Свой курс по веб-программированию в этом году расширил занятием по администрированию LAMP, устанавливал все это дело со студентами в Debian под Virtual Box.

Linux плотно пророс в мозгах и на десктопах сотрудников у меня на работе в Initlab. Были интересные проекты: факс-сервер на базе Debian и открытого софта, использование виртуализации XEN в продакшене, соединение офисов в сеть через OpenVPN.

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

Всех поздравляю! Ушел праздновать :)

Блог: RU Linux

Bye Bye GIMP!

Начиная с Ubuntu 10.04 мы можем больше не увидеть дефолтно установленного Gimp.На собрании Ubuntu Lucid Developer Summit обсуждался вопрос об исключении редактора из списка предустановленных программ. Разработчики считают, что Gimp превратился в слишком мощный инструмент, который не нужен большинству пользователей, а те, кто им пользуется, не переломятся его установить. Сейчас еще не принято окончательное решение и вопрос все еще обсуждается, но, кажется, большинство отписавшихся согласны с тем, что можно заменить Gimp на что-нибудь проще.

Блог: Urza's blog

Etch-backports: cоздание бекпортов новых версий программ в Debian и Ubuntu на примере Etch и rtorrent 0.8.5

Порой в стабильной версии пакетного дистрибутива Linux нет новой версии какой-нибудь нужной программы. Что такое бекпорты и где их искать, думаю, понятно. Но что делать когда их там нет? Не менять же дистрибутив из за одного пакета. Очевидно — сделать бекпорт самому. Чем и займёмся на примере rtorrent 0.8.5 и Debian 4 Etch.

Deb-пакет представляет собой целую кучу файлов специального вида, поэтому подготовить их с нуля и собрать пакет имея только оригинальные исходники rtorrent — задача нетривиальная. Этим пусть майнтейнеры пакетов занимаются. Убедившись что пакет для rtorrent 0.8.5 есть в Debian Testing, упрощаем задачу до сборки под Debian 4 Etch пакета rtorrent от Debian Testing.

Пакеты в Debian и Ubuntu собираются из специальных пакетов-исходников, которые хранятся в репозитариях исходников. Добавляем нужные нам репозитарии исходников в /etc/apt/sources.list:

deb http://security.debian.org/ etch/updates main contrib
deb-src http://security.debian.org/ etch/updates main
deb http://www.backports.org/debian/ etch-backports main contrib non-free
deb-src http://www.backports.org/debian/ etch-backports main
deb http://ftp.us.debian.org/debian etch main contrib non-free
deb-src http://ftp.us.debian.org/debian etch main
deb-src http://ftp.us.debian.org/debian testing main

Т.е. одновременно подключены репозитарии стабильных пакетов и исходников нестабильных пакетов, из которых будем бекпортировать. Скачиваем списки пакетов как обычно:

aptitude update

Далее скачиваем в текущий каталог свеженький исходный пакет rtorrent:

mkdir src
cd src
apt-get source rtorrent

Глядим в файл rtorrent-0.8.5/debian/control и видим такое:

Build-Depends: debhelper (>= 5), cdbs, libtorrent-dev (>= 0.12.5),
               libsigc++-2.0-dev, libcurl4-openssl-dev, libncursesw5-dev,
               bc, libxmlrpc-c3-dev

Это список пакетов, которые надо поставить, чтобы собрать пакет rtorrent. Дальше, в общем случае, алгоритм действий не детерминирован. Надо исходя из соображений совместимости библиотек, их наличия в репозитариях и бекпортах, минимальных требований rtorrent и, наконец, проб и ошибок, удовлетворить все зависимости. С каждым пакетом варианта всего три: поставить из стабильного репозитария, возможно понизив требуемую версию, поставить из бекпортов, либо сделать бекпорт самому :) Пробив версии пакетов через packages.debian.org, в данном случае верным решением кажется сделать бекпорт libtorrent-dev, поставить libcurl3-openssl-dev вместо libcurl4-openssl-dev, а остальное поставить из стабильных репозитариев. Забегая вперед скажу, что если так сделать, rtorrent не соберется потому что в Debian 4 Etch слишком старая библиотека libxmlrpc-c3 и ее тоже придётся бекпортить, а уже при работе с rtorrent выяснится наличие бага в официальной сборке curl в Debian 4, из за которого некоторые торренты просто не качаются, решается бекпортом новой версии curl (см. ниже) Итого, ставим что есть:

aptitude install debhelper cdbs libsigc++-2.0-dev libncursesw5-dev bc

Дальше бекпортим libtorrent. Скачиваем исходный пакет:

apt-get source libtorrent11

Дальше дополняем лог изменений пакета, для чего есть специальная команда:

cd libtorrent-0.12.5
dch -i

В лог добавится фрагмент по шаблону и откроется редактор nano. К номеру версии пакета из Testing приписываем суффикс бекпорта ~bpo+1., гордо пишем свое имя и почту, сохраняем лог, запускаем сборку пакета:

debuild -us -uc

Ждем пока все скомпилируется. Если все ок, то в каталоге уровнем выше должны появиться deb-пакеты, ставим их:

cd ..
dpkg -i libtorrent11_0.12.5-2~bpo+1_i386.deb libtorrent-dev_0.12.5-2~bpo+1_i386.deb

Аналогично, бекпортим libxmlrpc-c3 и ставим полученные пакеты:

dpkg -i libxmlrpc-c3_1.06.27-1~bpo+1_i386.deb libxmlrpc-c3-dev_1.06.27-1~bpo+1_i386.deb

Теперь можно бекпортить и ставить rtorrent:

cd rtorrent-0.8.5
dch -i
debuild -us -uc
cd ..
dpkg -i rtorrent_0.8.5-2*.deb

Готово.

Отмечу возникшие при создании бекпорта проблемы. При неудачной сборке rtorrent в первый раз ошибку пришлось искать в логах configure и гуглить, чтобы додуматься libxmlrpc-c3 бекпортить тоже. Ещё после первой неудачной сборки rtorrent уже нельзя пересобрать так как остаются какие-то мешающие повторной сборке файлы. Приходится каталог rtorrent-0.8.5 удалять и делать заново apt-get source rtorrent. Отсутствие таких ошибок имеют ввиду, когда говорят о повышении качества пакетов и поддержке двойной компиляции, заявленной в целях релиза Debian 6.

UPD: Узнал как правильно именовать backport-пакеты. К имени оригинального пакета добавляется суффикс вида ~bpo<версия_debian>+<версия_бекпорта>, например ~bpo40+1. Указываем это в ченджлоге, а _i386 конце добавляется автоматически при сборке.


UPD: Сделал Etch backport для libxmlrpc-c3 1.16 из Debian Experimental и пересобрал с новой версией rtorrent так как с libxmlrpc-c3 1.06 некорректно работает веб-морда rutorrent. Новые файлы во вложении.


UPD: Столкнулся с проблемой в работе rtorrent под Debian, решаемой сборкой новой версии curl с поддержкой асинхронного разрешения DNS через ares.

Пакет для c-ares и dev можно взять тут: http://apt.byteme.org.uk/pool/main/c/c-ares/

Чтобы собрать пакет curl необходимо обновить debhelper и quilt из бекпортов, сделать и поставить бекпорт libssh2-1 и libssh2-1-dev, дальше так:

cd ~/src
apt-get source libcurl3
nano curl-7.19.5/debian/rules
# деалем --disable-ipv6 --enable-ares
dch -i
# пишем ченджлог
aptitude install autoconf libtool automake1.9 libgnutls-dev stunnel libldap2-dev libgcrypt11-dev
debuild -us -uc

Далее ставим полученные пакеты libcurl, libcurl-dev и пересобираем пакеты xmlrpc/libtorrent/rtorrent.

Ниже ссылки на deb-пакеты, необходимые для установки rtorrent 0.8.5 под Debian 4 Etch.

UPD: Кто-то закинул ссылку на этот пост на ЛОР. В комментариях говорят checkinstall надо использовать, а не бекпортить, так как это проще. Про checkinstall я не знал, надо будет попробовать, но думаю его лучше использовать когда нет нужного пакета в Testing, Unstable или Experimental для бекпорта. Во-первых, все сложные моменты с необходимостью обновления заранее неизвестно каких пакетов остаются, в данном случае xmlrpc и curl все равно нужно обновлять, иначе rtorrent соберется, но просто не будет работать как надо. Во-вторых, половину собранных пакетов в процессе накладывали на исходники какие-то дебиановские патчи, думаю они не просто так. В-третьих, непонятно как у пакета checkinstall с зависимостями, не выйдет ли это боком при обновлении системы если надо пересобрать пакет типа curl, от которого зависят другие пакеты Debian. В-четвертых, не создадутся dev-пакеты и сопутствующие пакеты, например при сборке единственного source-пакета libcurl3 создаются deb-пакеты libcurl3-gnutl, libcurl4-gnutls-dev, libcurl4-openssl-dev, curl, libcurl3 и libcurl3-dbg, я эти подробности опустил, но от этих пакетов зависят другие пакеты, checkinstall все эти имена знать не может заранее, как тут быть?

Блог: RU Linux

GIMP 2.8: однооконный интерфейс!

Не так давно Martin Nordholts в своем блоге опубликовал превосходную новость: в новом гимпе будет реализована опциональная возможность использования однооконного интерфейса! За это стоит выпить!

Блог: Urza's blog

Tor: анонимность в Сети, установка в Debian и Ubuntu Linux

Tor: Анонимность в Сети, установка в Debian Lenny

Tor — это сеть виртуальных туннелей и специальный софт, который используют для улучшения безопасности и приватности в Сети домашние и корпоративные пользователи, журналисты, правозащитники и работники общественных организаций, военные. Cтавится в Debian Lenny очень легко:

apt-get install tor tor-geoipdb

В других версиях Debian и Ubuntu устанавливать Tor по инструкции.

Локальный прокси Privoxy установится по зависимостям, в первой строке его файла конфигурации /etc/privoxy/config вставляем настройку для соединения с Tor:

forward-socks4a / 127.0.0.1:9050 .

и комментируем логирование #logfile logfile

Запускаем Privoxy:

/etc/init.d/privoxy start

В Firefox (Iceweasel) устанавливаем плагин Torbutton, включаем работу браузера через Tor кнопкой внизу справа и заходим на страницу для проверки Tor. Если видим зеленую луковицу, как на картинке, то все ок. Если нет, то можно рестартнуть Privoxy и Firefox и попробовать снова. Если опять лук не зеленеет, то читаем инструкцию.

Torbutton изолирует Cookies и опасные скрипты, отключает историю, отключает плагины для эффективного использования Tor в браузере:
Torbutton

Блог: RU Linux

Ускорение работы Firefox (Iceweasel)

После недавней установки Java и обновления нужных по работе плагинов мой Iceweasel 3.0.6 впал в кому. Он и так то работал раньше медленно, а теперь и вообще стал страшно тормозить другие программы. После проведения следующих манипуляций удалось значительно его ускорить.

Обновления пакетов

Обновил следующие пакеты в Linux: libmozjs1d xulrunner-1.9 libpango1.0-0 libpango1.0-common libssl0.9.8 openssl

Еще бы обязательно обновил все что связано с GTK и аккуратно обновил бы libc6. В моем случае уже стояли последние для Debian Lenny версии.

Тюнинг Firefox

Прознал что полезно отключить ipv6 и попутно нашел еще массу твиков. Нужно создать файл ~/.mozilla/firefox/xxxxxxxx.default/user.js и в него вписать такое:

user_pref("network.http.pipelining", true); 
user_pref("network.http.proxy.pipelining", true); 
user_pref("network.http.pipelining.maxrequests", 8); 
user_pref("content.notify.backoffcount", 5); 
user_pref("plugin.expose_full_path", true); 
user_pref("ui.submenuDelay", 0); 
user_pref("content.interrupt.parsing", true); 
user_pref("content.max.tokenizing.time", 2250000); 
user_pref("content.notify.interval", 750000); 
user_pref("content.notify.ontimer", true); 
user_pref("content.switch.threshold", 750000); 
user_pref("nglayout.initialpaint.delay", 0); 
user_pref("network.http.max-connections", 48); 
user_pref("network.http.max-connections-per-server", 16); 
user_pref("network.http.max-persistent-connections-per-proxy", 16); 
user_pref("network.http.max-persistent-connections-per-server", 8); 
user_pref("browser.cache.memory.capacity", 65536); 
user_pref("network.dns.disableIPv6", true); 

Перезапустить Firefox и проверить зайдя в нем на about:config применились ли параметры.

Очень помогло. Теперь в Firefox можно нормально работать, хотя панелька запоминания пароля так и выезжает с тормозами и табы переключаются позорно.

Установка официальной сборки

UPD: Firefox 3.5 c официального сайта работает значительно быстрее (загрузка, скролл, переключение табов, рендер, словом все!), чем Iceweasel 3.х в Debian Lenny и тем более Iceweasel 2.х в Debian Etch. Для последнего пришлось компилировать GTK 2.10 так как иначе новый Firefox не запускается.

Блог: RU Linux
RSS-материал