Bug 49774

Summary: Запуск RVM ломает пользовательские переменные оболочки
Product: Sisyphus Reporter: Savelev Pavel <savelevpa>
Component: rvmAssignee: majioa <majioa>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: cas, imz, led, majioa, mike, nbr, pav, rider, stalker
Version: unstable   
Hardware: x86_64   
OS: Linux   

Description Savelev Pavel 2024-03-24 15:29:35 MSK
Версия пакета с ошибкой: rvm-1.29.12-alt2.noarch

Стенды с ошибкой:
education-10.2-x86-64, обновлённый до P10
education-10.2-x86-64-kde, обновлённый до P10
workstation-10.1-x86-64, обновлённый до P10
kworkstation-10.2.1-x86-64, обновлённый до P10
server-10.1-x86-64, обновлённый до P10

Шаги для воспроизведения:
1. Установите пакет RVM:
# apt-get install rvm

2. Если в системе отсутсвует sudo, установите и настройте по инструкции: https://www.altlinux.org/Sudo

3. Добавьте пользователя, от которого будет работать RVM:

# usermod -a -G rvm test

4. Настройте эмулятор терминала для запуска команды как оболочки входа:

Для MATE-терминала: Правка -> Параметры профиля -> Заголовок и команда -> включить опцию Запускать команду как оболочку входа

Для Konsole: Кнопка Меню -> Создать новый профиль... -> Название: RVM -> Команда: /bin/bash --login -> Сменить профиль: RVM.

Для Xfce-терминала: Правка -> Настройки... -> Общие -> Запускать команду в login shell

В файл $HOME/.bashrc добавьте строку:

source /etc/bashrc.d/rvm.sh

Проверка корректности установки:

$ type rvm | head -n 1

Вывод: rvm — это функция.

5. Установите какую-либо версию Ruby

$ rvm install 2.7.2

6. Установите версию эту Ruby как используемую по умолчанию:

$ rvm use 2.7.2 --default

Ожидаемое поведение: корректная работа оболочки после работы с утилитой RVM.
Реальное поведение: ломается окружение пользователя, что приводит к невозможности дальнейшей работы с RVM:
Примеры:
$ rvm use 2.7.2
ERROR: Missing proper 'which' command. Make sure it is installed before using RVM!
Using /var/lib/rvm/gems/ruby-2.7.2
bash: which: команда не найдена

$ rvm install 3.0
ERROR: Missing proper 'which' command. Make sure it is installed before using RVM!
RVM requires 'curl'. Install 'curl' first and try again.
bash: tee: команда не найдена
Error running '__rvm_rm_rf /var/lib/rvm/src/ruby-3.0.0',
please read /var/lib/rvm/log/1711281931_ruby-3.0.0/remove.src.log
Searching for binary rubies, this might take some time.
RVM requires 'curl'. Install 'curl' first and try again.
No binary rubies available for: alt///ruby-3.0.0.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
Checking requirements for alt.
Requirements installation successful.
Installing Ruby from source to: /usr/lib/rvm/rubies/ruby-3.0.0, this may take a while depending on your cpu(s)...
ruby-3.0.0 - #downloading ruby-3.0.0, this may take a while depending on your connection...
bash: tee: команда не найдена
ruby-3.0.0 - #extracting ruby-3.0.0 to /var/lib/rvm/src/ruby-3.0.0.
Error running '__rvm_package_extract /var/lib/rvm/archives/ruby-3.0.0.tar.gz /var/lib/rvm/tmp/rvm_src_19789',
please read /var/lib/rvm/log/1711281931_ruby-3.0.0/extract.log
There has been an error while trying to extract the source. Halting the installation.
There has been an error fetching the ruby interpreter. Halting the installation.