Sign in

Зарегистрируйтесь, чтобы стать полноправным участником сообщества Masterpro.ws.

Vinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.xVinaora Nivo Slider 3.x

rbenv. Install Ruby on openSUSE Tumbleweed

К написанию статьи подтолкнуло явно не лучшее в openSUSE Tumbleweed положение дел с rails.

Год назад поимел неслабые проблемы с установкой актуальной версии из оф. репов openSUSE Leap, по совету добрых дядей с форума поддержки openSUSE (кстати, отличный форум, говорю без малейшей иронии; во всяком случае, тот из них, который англоязычный) - проапгрейдил дистр from Leap to Tumbleweed, и в течение года это помогало... но вот пару недель назад после очередного обновления снова пошли косяки. Сперва нам казалось, что удалось кое-как порешать траблы ("нам" - это я и опять-таки добрые волшебники с форума openSUSE, которые, кажется, на сей раз уже не выказывали твердой уверенности в своих советах безнадежно тупому русскому: "IMO no need to do this if you have a working solution now"), но апдейты и апгрейды в итоге взяли свое, и я вновь лишился своей любимой игрушки ruby on rails.

 

 

Ситуацию спас Flux Capacitor Penguin под ником tsu2, предложивший закончить наконец садо-мазо эксперименты (интерпретация моя) и поставить rbenv, процедуру чего и попытаюсь кратко пересказать здесь... уповаю на то, что американцы никогда не увидят этого текста, а если увидят - не смогут адекватно перевести, и заканчиваю вступление старым анекдотом, имеющим, как мне это теперь представляется, непосредственное отношение к мейнтейнерам ряда пакетов: "Дети мои, я прожил трудную жизнь. Мои пальцы с трудом пишут слово "х*й", но оно будет часто встречаться в этом завещании". А теперь - к делу.

 

Install Ruby on openSUSE Tumbleweed

 

Собственно, все, что потребуется сделать - это добавить один репозиторий, доустановить необходимые для сборки rbenv пакеты (если не установлены), клонировать два репа с гитхаба в директорию ~/.rbenv и прописать PATH и шунты в конфиги вашей локальной (или в root, если оно вам надо) учетки. Ну и все, ничего такого страшного и вовсе не бином Ньютона.

Добавляем репо:

sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/ruby:/extensions/openSUSE_Tumbleweed/ devel:languages:ruby:extensions && zypper ref

Далее вот как-то так, старайтесь только установить актуальные версии пакетов, если их еще нет в вашей системе:

sudo zypper in ruby ruby2.5-rubygem-bundler nodejs8 git gcc libopenssl-devel sqlite3-devel
sudo zypper in automake gdbm-devel libyaml-devel ncurses-devel readline-devel zlib-devel

Далее, под обычным пользователем:

git clone git://github.com/sstephenson/rbenv.git .rbenv
cd ~/.rbenv && src/configure && make -C src
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.profile
~/.rbenv/bin/rbenv init

Restart your shell so that PATH changes take effect. (Opening a new terminal tab will usually do it, т.е. закрываем терминал и открываем заново.)

Проверяем сделанное:

curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-doctor | bash

все и везде должно быть OK или зелененькое, как-то так:

Checking for `rbenv' in PATH: /home/alex/.rbenv/bin/rbenv
Checking for rbenv shims in PATH: OK
Checking `rbenv install' support: /home/alex/.rbenv/plugins/ruby-build/bin/rbenv-install (ruby-build 20190130-4-g0e33b11)
Counting installed Ruby versions: 2 versions
Checking RubyGems settings: OK
Auditing installed plugins: OK

Ну вот, в принципе, и все. Смотрим перечень доступных версий ruby:

rbenv install -l

и устанавливаем необходимую, одну или несколько:

rbenv install 2.6.1 #for example

, после чего не забываем

rbenv rehash

Выбираем версию ruby глобально:

rbenv global 2.6.1

проверяем:

rbenv version
ruby -v

Назначаем, при необходимости, локальный ruby, перейдя в каталог проекта:

rbenv local 2.0.0

и т.д. и т.п.

Очень неплохо, кстати, все описано в этом блоге, или здесь / здесь.

# Now install rails and sqlite3:
gem install rails

и понеслось.

 

Продолжение на форуме.

Оставить комментарий

Добавьте ваш комментарий