Загрузка...
Linux
Новости, статьи, обсуждения, - все что связано с GNU Linux, FreeBSD, OpenBSD, Sun Solaris, Mac OS X и другими системами. Если вы интересуетесь данной темой - добро пожаловать в сообщество.
     

Делаем deb пакет своими руками. Часть первая.

14.05.09, 21:01
Автор ggg

Программы в deb-подобных дистрибутивах (Debian, Ubuntu и т.п.) распространяются в виде deb-пакетов, которые могут храниться как в репозиториях (как распространяется большая часть софта), так и сами по себе (как например skype). Существует множество причин, когда нужно сделать свой собственный deb-пакет, наиболее распространенные из которых:

  • вы написали свою программу
  • вы хотите сделать пакет программы, которой нет в репозитории (чтобы можно было легко и быстро установить, обновить или удалить программу)
  • вы заметили ошибку в существующем пакете (неправильные зависимости, сломанные символьные ссылки и т.п.) и хотите починить его

Рассмотрим самый простой случай: есть некоторая программа, пусть она называется hello_world и мы хотим распространять ее в виде deb-пакета. Итак, что же для этого нужно сделать.

шаг 1: создаем временный каталог /tmp/pkg

шаг 2: создаем каталог /tmp/pkg/usr/bin (в каталоге /tmp/pkg нам нужно создать дерево каталогов, считая что /tmp/pkg - это некоторый корень)

шаг 3: помещаем нашу программу hello_world в каталог /tmp/pkg/usr/bin (т.е. после установки нашего пакета программа будет доступна как /usr/bin/hello_world)

шаг 4: создаем каталог /tmp/pkg/DEBIAN (сюда помещается вся служебная информация по пакету, а именно, файл с описанием пакета, действия, выполняемые после установки пакета и т.п.)

шаг 5: создаем служебный файл /tmp/pkg/DEBIAN/control с таким содержимым

Package: hello_world
Architecture: i386
Depends:
Provides: hello_world
Priority: optional
Version: 0.1
Maintainer: user
Description: test hello-world program

соотвественно в этом файле мы указали служебную информацию о нашем пакете, каждый пункт говорит сам за себя и, я думаю, не нуждается в комментариях.

шаг 6: собственно создаем наш пакет командой: dpkg-deb -b /tmp/pkg hello-world-0.1-i386.deb

Наш первый пакет готов и может быть установлен командой sudo dpkg -i hello-world-0.1-i386.deb. В данной статье описаны лишь самые основы создания deb пакетов и многие вопросы остались нераскрытыми. Я постараюсь описать их в следующих статьях.

Комментарии

спасибо за полезную статью!

Войдите, чтобы оставить комментарий