Install Ruby on openSUSE Tumbleweed
Masterpro Nivo Slider 3.xMasterpro Nivo Slider 3.xMasterpro Nivo Slider 3.xMasterpro Nivo Slider 3.xMasterpro Nivo Slider 3.xMasterpro Nivo Slider 3.xMasterpro Nivo Slider 3.xMasterpro Nivo Slider 3.x
Воскресенье, 17 февраля 2019 18:25

rbenv. Install Ruby on openSUSE Tumbleweed

Оцените материал
(3 голосов)

К написанию статьи подтолкнуло явно не лучшее в 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

 

На момент 03.03.2023 и в контексте актуальной версии openSUSE Tumbleweed инструкция работает. Всего только несколько уточнений:

  • Клонируйте rbenv таким образом: git clone https://github.com/rbenv/rbenv.git .rbenv
  • Команду cd ~/.rbenv && src/configure && make -C src попросту пропустите. Этот шаг не нужен.
  • Проверку посредством curl также не используйте.
  • Мне пришлось перезапустить сеанс, только переоткрыть терминал - не помогает.

Остальное - в точности по написанному.

 

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

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

и понеслось.

 

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

Последнее изменение Пятница, 03 марта 2023 11:32

1 Комментарий

  • Комментировать Ruben Понедельник, 16 сентября 2019 21:48 написал Ruben

    Все правильно, только у меня было
    Counting installed Ruby versions:none
    а потом закрыть и открыть терминал заново не спасло, пришлось выйти из сеанса и начать снова. Тогда заработало. :) А так спасибо.

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

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

How to create a Joomla Contact Form