LINUX.ORG.RU

Установка rpm и deb пакетов в неродные ОС?

 , , , ,


0

1

Можно ли установить rpm пакет для Fedora в OpenSUSE и в PCLinuxOS? Можно ли установить deb пакет для Ubuntu в Debian? Не рухнет ли система и будет ли работать установленное таким способом ПО? PS Если нужно конкретно, что собираюсь ставить, то несвободную прогу DraftSight. Зачем мне это надо — переход с Ubuntu/Fedora на более стабильную ОСь.


Можно даже rpm в debian установить. Для этого есть пакет alien, если он ещё не заброшен. Сам никогда не пробовал, не было необходимости.

Пакеты из ubuntu в debian часто без проблем, если собирали не в canonical и не дописали лишних неразрешимых зависимостей.

P.S.

$ dpkg -I package.deb | grep Depends
Потом идёшь на https://packages.debian.org/ и ищешь какие зависимости в каком дистрибутиве удовлетворены.

conformist ★★★ ()
Последнее исправление: conformist (всего исправлений: 1)

Нельзя. Потому что МНОГО возни с зависимостями, проще пересобрать. Из коробки работать не будет.

собираюсь ставить,

В контейнер запихни с нужной осью.

anonymous ()

Не рухнет. Особенно когда речь идёт о стороннем ПО, которое никак не пересекается с ОС.

А вот саму возможность установки и работоспособность никто не гарантирует. Поэтому контейнеры рулят.

Aceler ★★★★★ ()

Обратись в службу поддержки купленной тобой «несвободной проги DraftSight».

anonymous ()

установка пакета = запуск баш скрипта, которым является спек пакета, с правами пользователя root

Соответственно, все зависит от автора пакета и его криворукости. Авторы пакета nvidia-дров когда-то умудрились в спеке пакета вписать rm -rf, например.

Если же в спеке не выполняется ничего кроме выкладки файлов куда-нибудь в /opt - то проблем соответственно будет меньше.

Однако правильнее всего для проприетарного софта всё же распаковать пакет как простой архив, от пользователя, и разложить файлы куда положено самому. Это и системно независимо, и безопасно. Чуть дольше возни, но живее будешь.

alpha ★★★★★ ()
Последнее исправление: alpha (всего исправлений: 1)

deb пакет для Ubuntu в Debian

Обычно можно. Но могут понадобиться либы из убунтовских реп. Можно получить dependency hell.

LittleKawaiiNeko ★★ ()

Как уже говорили, обычно при установке дебиан-пакетов, собранных для других ОС, проблем нет или они незначительные, хотя лучше, конечно, по возможности использовать родные пакеты.

Однако если при установке такого пакета всё-таки появятся неудовлетворённые зависимости, то обычно это связано с разными названиями пакетов в Дебиан, Убунту и др деб-ориентированных дистрах. В этом случае надо посмотреть, как называются те же пакеты в родном дистре (может просто версии другие) и прописать их в файлах control и rules (подробнее см. https://www.debian.org/doc/manuals/maint-guide/ ). Хотя, конечно, иногда могут возникнуть и более серьёзные проблемы. А вот принудительно устанавливать пакет, игнорируя зависимости, лучше не надо — можно поломать систему.

С rpm-пакетами дела обстоят хуже. Там помимо обычных (внешних) зависимостей бывают ещё и внутренние. Внутренние зависимости — это разные фичи библиотеки rpmlib, кои разнятся от одного дистрибутива к другому и от одной версии одного и того же дистрибутива к другой. Поэтому бакпортировать или портировать из другого дистра rpm-пакет зачастую намного сложнее. Часто проще создать новый.

Что касается alien для преобразования rpm в deb. Сам я его не юзал, но читал, что штука эта довольно-таки бесполезная. Преобразовать он преобразует, а вот будет ли новый пакет рабочим, большой вопрос. Скорее всего его придётся серьёзно допиливать, что не удивительно: если даже разные rpm-менеджеры несовместимы между собой, то чего можно требовать от alien и dpkg? А сделали эту штуку просто для того, чтоб формально соответствовать стандарту, каковым официально объявлен формат rpm. Только на самом деле никакого стандарта нет, т. к. кроме расширения ничего общего между rpm'ами из разных дистров нет.

Ну и если возникнут проблемы при сборке/портировании пакета, всегда можно собрать из исходников. Но дело это не кошерное, т. к. потом могут возникнуть проблемы с удалением программы и некоторые другие.

собираюсь ставить, то несвободную прогу DraftSight

А вот с несвободными прогами всё выше сказанное обычно не работает. Их пакеты обычно просто тянут из сети бинарник, который или работает, или нет, — как повезёт. И если нет, то никто кроме производителя ничего поделать не может.

Зачем мне это надо — переход с Ubuntu/Fedora на более стабильную ОСь.

Из того, что я видел, самое стабильное — это Debian. Только использовать надо исключительно ветку stable (сейчас это Jessie), а не testing и не experimental. И не увлекаться бакпортами без особой нужды.

aureliano15 ★★ ()

Слушай, ну вот конкретно про DraftSight скажу, что там всё ставится в /opt. Там есть кривости в оригинальном пакете касательно mime-типов, значков и rpath у некоторых бинарей, а также дофига сломанных симлинков. Я пытаюсь это дело сколь-чего выправить у нас в репозитории, только вот пока руки не доходят опакетить новую версию 2017. Займусь в околоновогоднее время, а то сейчас приходится вкалывать по 12 — 16 часов в день.

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