Как создать deb пакет и зачем это вообще нужно? Как оказалось,
создавать их очень легко. Ну а если у вас система, основаная на deb
пакетах, то это очень удобный способ устанавливать программы.
Для начала, на deb пакетах основаны системы Ubuntu, Debian и их
производные. Бывает что в репозиториях нет нужного пакета, версия, или
параметры сборки не устраивают. В таких случаях обычно ставят программу
из исходников. Только вот одна проблема, ее уже не удалить потом, да и
с обновлениями/зависимостями проблемы. Deb пакеты позволяют удобно
управять вашими программами, удалять, если потребуется поставить снова,
или на другую машину, то все сведется к паре команд. Для эксперимента создадим deb пакет для программы nmap. Для начала установим все необходимые программы:
#скачиваем исходники 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, в
итоге он у меня получился такой:
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