LINUX.ORG.RU

[rails] Bundler


0

1

Решил запилить себе rail3 для нового проекта.

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

Проблема в том, что Bundler пытается установить всё в систему и нагло требует пароль от sudo, что явно неправильно, так как ставит в обход менеджера пакетов. Если же указать ему, что ставить надо в --path=vendor/gems, то в этот самый path оно установит и копии всех гемов, которые уже установлены в системе пакетным менеджером, включая копию самих рельсов и всех рельсовых библиотек.

Есть ли способ пофиксить такое нехорошее поведение и заставить его ставить локально только те гемы, которых в системе нет?

★★★★★

Нашёл в конфиге опцию

BUNDLE_DISABLE_SHARED_GEMS: "1"
и вот это.

При установке в конфиг 0 вместо 1 оно принудительно меняет его обратно на 1.

In Bundler 1.0 final, bundle install path will default to --disable-shared-gems.

При этом о способе отмены данного поведения нигде не написано.

INFOMAN ★★★★★ ()

rvm? Вроде всё ставит локально и не просил sudo

Droid790 ()

> оно установит и копии всех гемов, которые уже установлены в системе пакетным менеджером, включая копию самих рельсов и всех рельсовых библиотек.


и что в этом плохого? он один раз их вытянет.

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

причем тут это? зато все зависимости в одном месте.
плюс разные приложения могут зависить от разных гемов, очевидно же.

захотел, например, сдаунгрейдить/протестить новые те же рельсы - поменял версию в конфиге и все.

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