LINUX.ORG.RU

Deb/RPM с бинарями

 ,


0

2

В Windows в установочный пакет msi можно внедрить свою библиотеку и, по сути, использовать сишный код в инсталляторе. Можно ли аналогичным образом интегрировать свои бинари в deb/rpm пакеты?

Мне нужно, например, провести в скрипте preinst некие работы, которые нельзя реализовать на sh и в случае неудачи отменить установку. Проблема в том, что в этот момент пакет ещё не распакован и никакие модули из него недоступны. После распаковки (в postinst) делать это уже бессмысленно, т.к. пакет по факту установлен (распакован). Можно попробовать удалить устанавливаемый пакет, но такая схема не будет работать при обновлении - файлы старой версии будут уже удалены и восстановить их не получится.

В общем, ищу совета бывалых...

rpm

Мне нужно, например, провести в скрипте preinst некие работы, которые нельзя реализовать на sh и в случае неудачи отменить установку. Проблема в том, что в этот момент пакет ещё не распакован и никакие модули из него недоступны.

Как вариант — положить инструменты для этих работ в отдельный пакет, а в спеке основного пакета сказать Requires(pre): отдельный_пакет.

Как быть с deb'ами — не знаю.

dexpl ★★★★★
()

Вообще там могут быть любые исполняемые файлы.

gruy ★★★★★
()

Озвучь саму задачу. Пока что проглядывает какой-то изврат и вырезание аппендицита автогеном через жопу.

anonymous
()

Пакуй бинарь в base64 внутри sh скрипта и распаковывай при запуске.

Многие серьёзные компании так делают =)

realloc ★★★★
()

Мне нужно, например, провести в скрипте preinst некие работы, которые нельзя реализовать на sh и в случае неудачи отменить установку.

Встретишь ведь однажды злого юзверя твоей поделки. Одумайся.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.