Что использовать для сборки пакетов Ubuntu / Debian?

В последнее время я изучал различные руководства и инструкции по сборке пакетов. И, кажется, существует много из путей , которые можно идти о о . Так что я немного озадачен тем, что именно использовать. То есть я пытаюсь увидеть всю картину. Какие инструменты существуют? Каковы отношения между ними? Какие обертки для чего? Какие лучше подходят для чего? Например, apt-get source , вероятно, в основном нацелен на пользователей, а не разработчиков. Лучшая альтернатива должна быть dget. Какие альтернативы для чего? Вот некоторые из них: pbuilder, pdebuild, pbuilder-dist, cowbuilder, sbuild, debuild, dpkg-buildpackage, fakeroot. И должно быть еще много чего я даже не знаю. Каковы наиболее распространенные рабочие процессы?

1
задан 13 April 2017 в 15:25

2 ответа

Что мне удалось узнать. Во-первых, существует это краткое описание, которое является тем, что я главным образом спрашиваю здесь.

В ядре системы сборки находится dpkg-buildpackages, который использует fakeroot, который в свою очередь работает debian/rules (который является make-файлом) создавать пакет. И это могло бы быть достаточно, если Вы собираетесь создать пакет для внутреннего пользования для выпуска, Вы выполняете его в.

Если, с другой стороны, Вы стремитесь к contibuting к debian/ubuntu, Вы собираетесь использовать, по крайней мере, debuild, который работает lintian и подписывает файлы.

Если Вы хотите быть нацеленными отличающийся debian/ubuntu выпуски, Вы собираетесь использовать pbuilder, который среди прочего создает пакеты в чистой среде, не ударенной с Вашими уже установленными пакетами для наблюдения фактических зависимостей. Можно было бы рассмотреть использование pbuilder-dist кроме того еще больше.

Существует pdebuild который, как говорят, является "pbuilder способом сделать debuild". Я не вижу, что он работает lintian, но это могло бы быть не в соответствии с pbuilder путь.

Затем существует также cowbuilder, если Вы хотите ускорить пакеты здания (обертка вокруг pbuilder?). Существуют также инструменты для создания от git репозитории, я не вырыл в.

UPD на мне сказываются #debian-mentors это"sbuild ведет себя то же как buildd, меньше неожиданностей", это"pbuilderподдержка экспериментального является просто неправильной", это "OTOH sbuild все еще промахи что-то для устранения сети из процесса сборки" и этого pbuilder не сохраняется. Устранение сети необходимо начиная с создания пакетов, не должен полагаться на него присутствование, они ничего не должны загружать.

schroot от экспериментального, предположительно, может изолировать (не совместно используют) сеть.

1
ответ дан 13 April 2017 в 15:25

Вы не говорите многое о своей исходной среде.

, Если это - открытый исходный код и всего один проект (один файл управления под debian/ каталог) затем https://, launchpad.net является действительно хорошим решением. Более или менее необходимо разобраться в файлах, и они заботятся об остальных.

Разбирание в файлах является определенным волшебством для меня, даже сейчас, но существует множество документации относительно того, как создать пакет. Вы могли запустить с очень простого примера, который работает, и затем не торопитесь для добавления других опций/функций, когда Вы продвигаетесь. Тем путем Вы не должны изучать все входы и выходы внезапно.

1
ответ дан 14 April 2017 в 01:25
  • 1
    Спасибо за всю информацию в потоке. Это были, очевидно, больше, чем просто установка, я изменил заголовок вопроса. Я don' t думают, что у меня был fcitx прежде, чем установить его. (Если я пытаюсь установить снова, я получаю сообщение, что это уже установлено. Этот список был пуст под китайским языком), Изменяющийся на fcitx, большее изменение, таким образом, я запустил путем выбора sunpinyin (iBus) , который, кажется, работает. Позже, когда я могу рискнуть некоторой временной потерей функции, я попробую fcitx. Это подходит как выбор под поддержкой языка, как описано в этом ответе. – ycc_swe 31 August 2016 в 19:24

Другие вопросы по тегам:

Похожие вопросы: