Инструмент для создания linux пакетов из исходников?
Допустим имеются исходники в виде пресловутого tar.gz. Хотелось бы скормить их с конфигурационным файлом какому-то инструменту и получить deb и rpm пакеты для основных дистрибутивов (ubuntu 12.04, 12.10, debian, centos ...) в 32 и 64 рязрядном исполнении. Существуют ли такие инструменты?
The openSUSE Build Service is the the public instance of the Open Build Service (OBS) used for development of the openSUSE distribution and to offer packages from same source for Fedora, Debian, Ubuntu, SUSE Linux Enterprise and other distributions.
Заводите свой проект, скармливаете исходники и конфиги и просто ждёте, когда соберётся. Потом можно будет просто добавить свой репозиторий в менеджер пакетов и устанавливать/обновлять пакеты штатными средствами.
А как вы без документации-то хотели? :) Чтобы сделать пакет, нужно написать к нему спек, иначе никак. Либо вручную, либо в полуавтоматическом режиме через тот же checkinstall.
Насчёт quick start не знаю, но гляньте их вики, может и найдёте чего.
Он создает для того окружения, в котором сам установлен. То есть, чтобы мне создать пакеты, к примеру, для 32 и 64 разрядных систем, мне нужны обе установленные системы с установленными checkinstall.
В каждом конкретном случае — есть свой инструмент
У редхатоидов пакеты собираются утилитой rpmbuild используя spec файл как сценарий сборки
У ArchLinux — makepkg, используя в качестве сценария PKGBUILD файл
У Gentoo — emerge, использует в качестве сценария ebuild
Есть и якобы «универсальные» инструменты — что то типа checkinstall или сизифа из Alt Linux = но их универсальность спотыкается на создании более-менее сложных пакетов(особенно начиненных инсталляционными скриптами) — поэтому лучше использовать стандартные для дистрибутива средства сборки.
Это я все понимаю. Но я надеялся, что существуют какие-нибудь фермы сборки или инструменты, с помощью которых их можно построить… В основном для бинарных дистрибутивов (с исходниками зависимости сложнее).
Я такой корректно работающей системы увы не знаю (кроме того что уже перечислил но они ущербны). Была интересная сборка арчёвого makepkg — которая позволяла собирать из PKGBUILD deb пакеты — но проект сейчас не развивается, а предыдущие версии не позволяли собрать сложные deb пакеты(так же как и checkinstall). Очень конечно жаль — пакбилд самая простая и удобная, с моей точке зрения, система скриптов для сборки бинарных пакетов(просто баш скрипт и минимум переменных — никаких лишних макросов).
А на CPack не смотрели? Это средство, конечно, не позволит на gentoo x64 собрать пакет для Debian'а 32, но он един для всех платформ. Теоретически, если собрать ферму нужных серверов (можно в виртуалках, к примеру) и обвязать их скриптами для генерации пакетов по CPack'овской конфигурации — должно сработать…
Я давно не связывался со всякими «универсальными» сборщиками пакетов — просто изучил инструменты для используемых дистрибутивов и разобрался с созданием дистроспецифичных сборочных сценариев.
А вот для быстрой сборки проектов на python(с которым в основном и работаю) под любую платформу(в том числе и вин) — стал пользоваться универсальным средством cx_freeze… тут конечно да: создается необходимый setup.py и просто его запускаешь в окружении необходимого дистрибутива или платформы.