Ранее я пробовал пользоваться 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