ALT Server 11.1 # rpm -qa|grep ruby-std ruby-stdlibs-3.1.4-alt4.4.x86_64 По факту данный пакет не содержит стандартные библиотеки и при этом ещё и имеет файлы фиксирующие старые версии как дефолтные Например # gem list --local | grep psych psych (default: 4.0.4) Но при этом каталог gem пустой # ls -la /usr/lib/ruby/gemie/gems/psych-4.0.4/ итого 0 drwxr-xr-x 1 root root 0 мая 16 2024 . drwxr-xr-x 1 root root 1806 окт 8 15:08 .. и создан "дефолтный" файл фиксирующий версию 4.0.4 - /usr/lib/ruby/gemie/specifications/default/psych-4.0.4.gemspec Если поставить из репозитария пакет gem-psych-5.2.3-alt1, то "дефолтный" файл будет указывать на несуществующий 4.0.4 как дефолтный # gem list --local | grep psych psych (5.2.3, default: 4.0.4) что соответственно будет вызывать проблемы Например # /usr/lib/ruby/bin/oxidized /usr/lib/ruby/rubygems/specification.rb:2309:in `raise_if_conflicts': Unable to activate oxidized-0.34.3, because psych-4.0.4 conflicts with psych (~> 5.0) (Gem::ConflictError) from /usr/lib/ruby/rubygems/specification.rb:1419:in `activate' from /usr/lib/ruby/rubygems.rb:286:in `block in activate_bin_path' from /usr/lib/ruby/rubygems.rb:285:in `synchronize' from /usr/lib/ruby/rubygems.rb:285:in `activate_bin_path' from /usr/lib/ruby/bin/oxidized:26:in `<main>' Если же удалить "дефолтный" файл, то: # /usr/lib/ruby/bin/oxidized edit /root/.config/oxidized/config
Проверялось на Sisyphus, ошибка не воспроизвелась.
> because psych-4.0.4 conflicts with psych Съ конфликтомъ нѣкторыхъ psych-овъ извѣстный вопросъ въ upstream, обычно лѣчится либо другими версіями рубей, либо bundle-омъ. Что касается положенія psych самаго, то всѣ default-ные самоцвѣты находятся въ /usr/lib/ruby/ какъ обычные vendor-модули.
И проверяется напр. что-то вродѣ такого: $ pry require 'psych'