Установка RubyGems в домашний каталог (Ruby)
Материал из DiPHOST.Ru wiki system
RubyGems (англ. gem, gems — драгоценный камень) — менеджер пакетов для языка программирования Руби который предоставляет стандартный формат для программ и библиотек Руби (в самодостаточном формате «gems»), инструменты, предназначенные для простого управления установкой «gems», и сервер для их распространения (источник http://ru.wikipedia.org/wiki/RubyGems )
Пакеты могут быть установлены с любого gems-сервера. По умолчанию, gems ищет пакеты на сервере rubygems.org.
Содержание |
Настройка консоли для работы с локальными модулями
Для того, чтобы интерпретатор Ruby, вызванный из консоли, "видел" установленные локально gems, запустите команду:
Process '/usr/local/bin/highlight --fragment --style=jedit --syntax='sh' --style-outfile='/home/dipwiki/tmp/highlight.css'' failed to start?
You need to specify a language like this: <source lang="html">...</source>
Supported languages for syntax highlighting:
(error loading support language list)и посмотрите, какие пути он укажет после ключевого слова GEM PATHS Добавьте в файл .profile соответствующие строки, сообразуя их с увиденным. Например у нас это будет:
Process '/usr/local/bin/highlight --fragment --style=jedit --syntax='sh' --style-outfile='/home/dipwiki/tmp/highlight.css'' failed to start?
You need to specify a language like this: <source lang="html">...</source>
Supported languages for syntax highlighting:
(error loading support language list)Это следует сделать ДО установки модулей, во избежании накладок при установке. Не забудьте "перелогиниться" после добавления, чтобы настройки применились.
Установка с помощью gem
Установка с помощью gem очень простая. Достаточно набрать команду:
Process '/usr/local/bin/highlight --fragment --style=jedit --syntax='sh' --style-outfile='/home/dipwiki/tmp/highlight.css'' failed to start?
You need to specify a language like this: <source lang="html">...</source>
Supported languages for syntax highlighting:
(error loading support language list)Установка уникальных библиотек, не входящих в gems
Допустим, есть набор файлов на языке Ruby, которые хотелось бы использовать в качестве библиотеки. Как заставить интерпретатор Ruby увидеть местонахождение этой библиотеки? Очень просто, следует добавить в файл .profile следующие строки:
Process '/usr/local/bin/highlight --fragment --style=jedit --syntax='sh' --style-outfile='/home/dipwiki/tmp/highlight.css'' failed to start?
You need to specify a language like this: <source lang="html">...</source>
Supported languages for syntax highlighting:
(error loading support language list)Использование в crontab
Для того, чтобы скрипты, запускающиеся по cron могли иметь доступ к локально установленным gems и/или библиотекам, в начале crontab-файла следует прописать нужные строки:
GEM_HOME=/home/ваш_логин/.gem GEM_PATH=/home/ваш_логин/.gem/ruby/1.8:/usr/local/lib/ruby/gems/1.8/ PATH=/bin:/usr/bin:/usr/local/bin:/home/ваш_логин/.gem/ruby/1.8/bin RUBYLIB=путь_к_библиотеке
Обращаем внимание, что переменные типа $PATH или $HOME не разбираются в crontab и требуется полностью прописывать все пути.