[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Я хочу попробовать себя мейтенером.



On Пт, 2022-01-28 at 14:11 +0500, Leonid wrote:
> Я хочу попробовать быть сопроводителем пакетов debian.

Отличное начинание! 🙌

> Подскажите пожалуйста, какие пакеты стоит попробовать пособирать для 
> начала.

Посмотрите PDF-презентацию о пакетировании из пакета packaging-tutorial.
Ознакомьтесь с Debian Policy Manual (есть только английский вариант).
Много полезных ссылок вы найдёте на <https://wiki.debian.org/Packaging>.

Если уже примерно разбираетесь как создавать пакеты, то в поисках идей
взгляните на список WNPP <https://www.debian.org/devel/wnpp/>. Есть сайт
с удобным поиском <https://wnpp.debian.net/>.

После того, как ваш новый пакет с исходным кодом будет готов (файл .dsc
и связанные), загрузите его на <https://mentors.debian.net/> и откройте
RFS запрос в псевдопакете sponsorship-requests. Можно воспользоваться
шаблоном, предлагаемым на mentors.d.n сайте.

> Какие требования к сборке (каким компилятором, с какими опциями)?

Особых требований нет. Вполне можно положиться на upstream, какие опции
они используют. Компилятор, конечно же, зависит от языка
программирования, на котором написана программа. Среди build-essential
пакетов есть компиляторы C и C++ из пакета src:gcc-defaults. Все другие
компиляторы надо указывать явно в поле Build-Depends.

За флаги сборки отвечает утилита dpkg-buildflags(1). От сборочной
системы, применяемой в пакете, требуется лишь учитывать переменные
окружения CFLAGS, CXXFLAGS, DFLAGS и подобные.

> Обязательно ли делать кросс-компиляцию для всех архитектур или можно 
> собирать только под удобные?

В большинстве случаев достаточно убедиться, что программа вообще
компилируется хотя бы на вашем компьютере. Все пакеты в Debian "нативно"
собираются специальной сетью сборочных машин, buildd
<https://www.debian.org/devel/buildd/>. Возможность кросскомпиляции не
обязательна, но желательна. К счастью для простых программ APT и Dpkg
способны самостоятельно разобраться с кросскомпиляцией прозрачно для
сопровождающего.

Из-за кросскомпиляции в файле d/control появляются некоторые нюансы,
связанные с кодогенерацией или запуском Python/Perl/Ruby/PHP (и
подобных) сценариев. Если потребуется, могу рассказать про них отдельно.

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: