http://takeworld.blogspot.com/2009/05/deb.html
Как создать deb пакет и зачем это вообще нужно? Как оказалось, создавать их очень легко. Ну а если у вас система, основаная на deb пакетах, то это очень удобный способ устанавливать программы.
Для начала, на deb пакетах основаны системы Ubuntu, Debian и их производные. Бывает что в репозиториях нет нужного пакета, версия, или параметры сборки не устраивают. В таких случаях обычно ставят программу из исходников. Только вот одна проблема, ее уже не удалить потом, да и с обновлениями/зависимостями проблемы. Deb пакеты позволяют удобно управять вашими программами, удалять, если потребуется поставить снова, или на другую машину, то все сведется к паре команд.
Для эксперимента создадим deb пакет для программы nmap.
Для начала установим все необходимые программы:
apt-get install build-essential dh-make debhelper devscripts
А дальше сам процесс с коментариями:
#скачиваем исходники
wget http://nmap.org/dist/nmap-4.85BETA9.tar.bz2
#распаковываем
tar xf nmap-4.85BETA9.tar.bz2
cd nmap-4.85BETA9
dh_make -s -e youremail@site.org -f ../nmap-4.85BETA9.tar.bz2
#enter
Теперь нужно заполнить информацию о пакете, а конкретно - зависимости (без них ничего работать не будет). Для этого правим файл debian/control, в итоге он у меня получился такой:
Source: nmap
Section: unknown
Priority: extra
Maintainer: nagos
Build-Depends: debhelper (>=5), libgtk2.0-dev, autoconf, flex, bison, libssl-dev, libpcap0.8-dev,
libpcre3-dev, binutils-dev, python (>=2.3.5-7), python-all-dev, python-central
Standards-Version: 3.8.0
Homepage:
Package: nmap
Architecture: any
Depends: ${python:Depends}, ${shlibs:Depends}, nmap, python (>= 2.5) | python-pysqlite2, python-gtk2, python-gobject
XB-Python-Version: ${python:Versions}
Description: nmap-rules
Юзайте nmap, полезно и позволяет выглядеть круто
А теперь собираем пакет:
#Устанавливаем необходимые зависимости
sudo apt-get install libgtk2.0-dev flex bison libpcap0.8-dev libpcre3-dev binutils-dev python-all-dev
#если что то не установлено, то при сборке это будет видно
dpkg-buildpackage
Все, пакет готов, можно устанавливать:
cd ..
dpkg -i nmap_4.85BETA9-1_i386.deb
#устанавливаем нарушенные зависимости, если были
sudo apt-get install -f
Вот и все, пакет готов.
Вот что почитать дальше. Например, если программа ставится не просто как ./configure&&make&&make install, нужно делать более тонкую настройку пакета.
Ссылки
Руководство начинающего разработчика Debian
Howto make debian standard debs from scratch
http://www.debian.org/doc/maint-guide/
Создано: 19-05-2009 09:33:05
изменено: 23-08-2009 13:22:25
Метки: deb