Только недавно столкнулся и попробовал использовать rubygems. Ранее все устанавливал через portage. Но частенько стали попадаться статьи, в которых пишут нечто вроде следующего:
gem install git-up gem install bundle
Это добро у меня вызывало, некоторое недоумение (что еще за левые пакетные
менеджеры???) и я бежал искать аналоги в portage. Частенько этого не
находилось даже в различных overlay'ях. И вот в один из таких моментов, решив
сэкономить время на поиск ebuild'ов, я все-таки выполнил указанную команду. И
получил необходимое приложение в ~/.gem/ruby/1.9.1/bin
.
Но тут пользователи gentoo столкнуться с некоторым затруднением. Этот
дистрибутив не очень дружелюбен для ruby. То, что установится, не будет
доступно в PATH
. В других используемых мной системах аналогичной проблемы
замечено не было. В OS X и Windows (Cygwin) PATH
сам без дополнительных
движений обновляется.
На bugs.gentoo.org нашел следующее универсальное решение. Создаем в
папке /etc/profile
файл следующего содержания:
if [[ -L "/usr/bin/ruby" ]]; then RUBY=$(readlink /usr/bin/ruby 2> /dev/null) case "${RUBY}" in *18) VERSION="1.8" ;; *19) VERSION="1.9.1" ;; *) VERSION="${RUBY##*/}" ;; esac export PATH="${HOME}/.gem/ruby/${VERSION}/bin:${PATH}" fi
После этого все будет доступно как надо.
Похоже использовать gem намного удобнее, чем стандартный пакетный менеджер. Тем более на своей локальной машине с фактически одним пользователем (root не считается). Конечно можно добавлять себе постоянно новые overlay и писать новые ebuild. Но как показала моя практика это занимает существенно больше времени. Да и кроме того написание однотипных ebuild не особо интересное занятие. Генератора нету случаем? Не знаю как дело обстоит в других дистрибутивах, но думаю как-то также.
Еще в последнее время натолкнулся на pip для python и npm для node.js. Идея общественных хранилищ для программ, написанных на определенном языке как никак популярна сейчас. И это реально удобно.
Комментариев нет:
Отправить комментарий