LINUX.ORG.RU

Установка в разные слоты

 ,


0

1

Здравствуйте, небольшой вопрос. Допустим, имеем некий пакет, которые после установки кидает в /usr/bin/ файл prg. Авторы пакета о слотах ничего не слышали. Могу ли я установить это в два разных слота и иметь простой механизм для переключения между экземплярами (подобный gcc-config)? Или сопровождающий пакет человек должен предусмотреть установку в разные слоты, сделать аналог gcc-config, которая делает ссылки при смене профиля, а вся задача пакетного менеджера - установка слотированной софтины в свой загончик, а переключайте вы там как-нибудь сами?

Не то чтобы вот прям надо, просто интересно. И если менеджер берёт на себя создание «слотировання_софтина-config», то какой man почитать?

★★

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

Одновременно установленные версии в разных слотах в системе сосуществуют, а не переключаются между друг другом. gcc-config выбирает ДЕФОЛТНЫЙ gcc, а не вообще.

Поэтому да, это задача мейнтейнера ебилда. Если софтина написана хорошо, то в целом поддержка разных слотов задача тривиальная. Слот в ебилд добавляется путём указания ненулевой переменной SLOT.

Для переключения наверное лучше всего написать модуль к eselect: https://wiki.gentoo.org/wiki/Project:Eselect/Developer_guide

Gary ★★★★★
()
Ответ на: комментарий от Gary

Понятно, спасибо. Да я имел в виду дефолтный. Жаль что пак. менеджер не берёт эту задачу на себя. Не вижу больших препядствий.

pavlick ★★
() автор топика
Ответ на: комментарий от pavlick

Не вижу больших препядствий.

Допустим, программа foo ожидает, что конфиг лежит по пути /etc/foo.conf

Есть две версии foo:1 и foo:2, формат конфига между foo:1 и foo:2 не совместим. Вот и всё, вот у тебя и сломанная инсталляция.

Можно придумать миллион препятствий.

Gary ★★★★★
()
Ответ на: комментарий от Gary

Я на правоте своей не настаиваю, но вижу это как так:

для каждой foo создаём свой загончик со структурой загончик/{bin, lib, etc, ...} и при переключении создаём ссылки на все файлы из загончик/etc в /etc. У каждого экземпляра были бы свои конфиги.

pavlick ★★
() автор топика
Ответ на: комментарий от pavlick

Ты не понял.

Вот есть у тебя несколько версий gcc. Они ВСЕ работают, не важно, какая включена.

Если сделать как ты говоришь, будет работать только та, которая включена.

Gary ★★★★★
()
Ответ на: комментарий от pavlick

Ну и вообще загончик со своими lib и пр. это уже appimage какой-то получается

Gary ★★★★★
()

В слотах обычно стоят библиотеки разных версий. Даже старый добрый wine рассовать по слотам не считается возможным.

Waldo-de-Kard ★★
()

ты опиши лучше что тебе нужно, может это не слотами решается

deity ★★★★
()

Для Линукс есть ещё такая вещь как modules, позволяющая переключать «окружения».

http://modules.sourceforge.net

grem ★★★★★
()
Ответ на: комментарий от Waldo-de-Kard

Даже старый добрый wine рассовать по слотам не считается возможным.

Ты про app-emulation/wine-staging и app-emulation/wine-vanilla?

Gary ★★★★★
()
Ответ на: комментарий от Waldo-de-Kard

Это как раз и есть слоттированный вайн, можно несколько версий иметь одновременно

staging/vanilla это просто варианты с патчами и без

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