Руководство - как собрать deb-пакет только из файлов (для разработчика)

  • CanSeeCanSee 05.06.2012
    Когда передо мной возникла необходимость собирать deb-пакеты для своих программ, я искал во многих местах. Например, на forum.ubuntu.ru, в разделе по сборке пакетов, на официальном сайте canonical, и т.д. Надеялся найти готовое руководство. А ещё лучше - программу для сборки пакетов, наподобие тех, которыми собираются установщики для Windows. Результаты не порадовали :( Может быть, конечно, я плохо искал. Руководства, конечно, есть, но почему-то в подавляющем большинстве из них освещается только ситуация, когда есть пакет с исходным кодом и скриптами установки в виде архива tar.gz, и надо преобразовать его в deb-пакет. Но совершенно нет никаких руководств по тому, каким образом собрать свой пакет, включив туда любой набор нужных файлов.
    Передо мной стояла как раз такая задача - есть несколько файлов, и надо на их основе собрать пакет. Никаких скриптов типа "make & make install" нету. Надо, чтобы пользователь установил пакет, и файлы оказались распиханными по нужным директориям у него на компьютере. При этом, никакого желания сначала делать архив tar.gz с make-скриптами у меня не было.
    После долгих разбирательств я выяснил, как сделать такой пакет. А заодно прояснил немало вопросов, нужных разработчикам, которые делают deb-пакет из своей программы. Например, каким образом в Linux назначаются иконки для программы, как сделать ярлыки для запуска программы, как записать программу в автозагрузку и т.п. Чтобы тем, кто, также как и я, будет этим заниматься, было легче, написал руководство.
    Ну а из deb-пакета можно легко сделать rpm с помощью alien :)
    Вообще-то, задумывалось, что это будет программа для автоматической сборки deb-пакетов. Поэтому руководство оформлено в виде справки к программе. Позже я планирую доделать эту программу. Но когда она будет - неизвестно (времени не хватает), так что пока выложил мануал отдельно.
    Руководство получилось большое, в несколько разделов. В один пост форума не влезает. Я выложил его у себя на сайте:
    http://life-warrior.org/programs/gui-deb/manual.html (http://life-warrior.org/programs/gui-deb/manual.html)
    Собственно про сборку пакетов начинается отсюда:
    http://life-warrior.org/programs/gui-deb/manual/debfiles.html (http://life-warrior.org/programs/gui-deb/manual/debfiles.html)
    Предполагаемый срок готовности первой версии самой программы - месяца три. Но, опять же, всё может затянуться на неопределённый срок.
    Кто найдёт какие ошибки - просьба сообщить :) У кого будут вопросы, пишите здесь или на сайте - если смогу, отвечу :)
    Пакеты с программами, собранными в соответствии с моим руководством, есть там же на сайте.
  • VadimAndyVadimAndy 23.09.2020
    спс. почитаю на досуге, то же интересовался этим вопросом
  • NadyBear 07.10.2020
    Если тема еще актуальна и кому-то интересна, попробуйте программу checkinstall - сборка пакетов DEB практически автоматом. Программа входит в Ubuntu-based дистрибутивы и есть в репозитариях. А автору темы большое спасибо - очень толково и доступно описан формат DEB.