Lighttpd и gamin

Ранее я пробовал пользоваться Mathopd, потому что привычный Lighttpd отказывался устанавливаться в отсутствии famd, а famd конфликтовал с gamin, который я установил, чтобы избежать внезапных зависаний программ: famd vs gamin. Нужно было пересобрать Lighttpd с gamin вместо famd, но мне тогда было лень этим заниматься, т.к. это было прекрасным поводом попробовать Mathopd :)

На днях Mathopd мне наконец надоел и я решил всё-таки собрать Lighttpd с gamin. Рецептом сборки этой связки я и хочу поделиться.

Для начала, скачаем исходники:

$ apt-get source lighttpd

И перейдём в каталог с распакованными исходниками и информацией для сборки:

$ cd lighttpd-1.4.19

Затем, заглянем в файл debian/control и просмотрим список зависимостей для сборки пакета (Build-Depends): debhelper (>= 5.0.0), cdbs, mime-support, libssl-dev, zlib1g-dev, libbz2-dev, libattr1-dev, libpcre3-dev, libmysqlclient15-dev, libfam-dev, libldap2-dev, libfcgi-dev, libgdbm-dev, libmemcache-dev, liblua5.1-0-dev, quilt, patchutils, pkg-config, uuid-dev, libsqlite3-dev, libxml2-dev, libkrb5-dev, perl

Установим всё это хозяйство, за исключением libfam-dev, который мы заменим на libgamin-dev:

# apt-get install debhelper cdbs mime-support libssl-dev zlib1g-dev libbz2-dev \
  libattr1-dev libpcre3-dev libmysqlclient15-dev libgamin-dev libldap2-dev libfcgi-dev \
  libgdbm-dev libmemcache-dev liblua5.1-0-dev quilt patchutils pkg-config uuid-dev \
  libsqlite3-dev libxml2-dev libkrb5-dev perl

Теперь отредактируем файл debian/control, заменив в нём libfam-dev на libgamin-dev.

Далее, опишем изменения, сделанные в пакете с помощью dch:

$ dch -i

Я внёс следующее описание сделанных изменений:

lighttpd (1.4.19-5+lenny1gamin) stable-security; urgency=low

* Changed dependency from libfam-dev to libgamin-dev.

-- Vladimir Stupin <vladimir@stupin.su>  Fri, 13 Aug 2010 10:17:22 +0600

Осталось лишь собрать изменённый пакет:

$ dpkg-buildpackage -b -us -uc -rfakeroot

Всё. Переходим в каталог выше, где и находятся собранные пакеты:

lighttpd_1.4.19-5+lenny1gamin_i386.deb
lighttpd-doc_1.4.19-5+lenny1gamin_all.deb
lighttpd-mod-cml_1.4.19-5+lenny1gamin_i386.deb
lighttpd-mod-magnet_1.4.19-5+lenny1gamin_i386.deb
lighttpd-mod-mysql-vhost_1.4.19-5+lenny1gamin_i386.deb
lighttpd-mod-trigger-b4-dl_1.4.19-5+lenny1gamin_i386.deb
lighttpd-mod-webdav_1.4.19-5+lenny1gamin_i386.deb

Устанавливаем нужные пакеты с помощью dpkg и пользуемся:

# dpkg -i lighttpd_1.4.19-5+lenny1gamin_i386.deb

Написать автору