Назад | Перейти на главную страницу

Обновление Ubuntu Hardy до Ruby 1.8.7

На моем сервере работает Ubuntu Hardy и Ruby 1.8.6, установленный с использованием aptitude. Я хотел бы перейти на Ruby 1.8.7, но, к сожалению, пакет Ruby включает Ruby 1.8.7, начиная с Ubuntu Intrepid.

Я прочитал пару руководств о том, как перейти на Ruby 1.8.7, и нашел как минимум 3 различных способа выполнить эту задачу:

Я немного запутался. Как вы порекомендуете перейти на Ruby 1.8.7, учитывая, что мне не нужно несколько версий Ruby на одном сервере? Я хотел бы полностью заменить существующий Ruby 1.8.6 на Ruby 1.8.7.

Поскольку Джефф заставил меня заметить, что Ruby 1.8.7 еще не был перенесен обратно, другое единственное решение, которое приходит мне на ум, - использовать PPA команды, упаковывающей Ruby.

Там вы можете найти как Ruby версии 1.8.7.22, так и версии 1.9.0.2, если хотите.

Если вы не знаете, как настроить ubuntu для использования PPA, инструкции также находятся на связанной странице (нажмите на Не используете Ubuntu 9.10 (кармический)? в разделе «Добавление этого PPA в вашу систему».

Надеюсь это поможет! :)

Если вы хотите использовать репозитории и, следовательно, иметь возможность хотя бы знать, когда доступно обновление, вы можете использовать репозиторий backport. Есть техника, которая называется закрепление это позволяет вам включить весь репозиторий, но устанавливать / обновлять только определенные пакеты. Поскольку вики Ubuntu лучше, чем я, объясняет, как это сделать, оставляю вас читать! :)

Если вы решите следовать предложению Джеффа Снайдера, возможно, вы захотите запустить:

sudo apt-get -f update

В -f означает --fix-broken и что он делает, это пытается исправить сломанные зависимости уже установленных пакетов.

HTH!

Это единственное место, где я думаю, что APT действительно отстой. Если честно, я бы посоветовал пойти по ленивому пути и просто установить debs вручную.

cd /tmp
wget http://archive.ubuntu.com/ubuntu/pool/main/r/ruby1.8/libruby1.8_1.8.7.174-2_i386.deb
wget http://archive.ubuntu.com/ubuntu/pool/main/r/ruby1.8/ruby1.8_1.8.7.174-2_i386.deb
sudo dpkg -i libruby1.8_1.8.7.174-2_i386.deb ruby1.8_1.8.7.174-2_i386.deb
sudo apt-get install ruby

Это не сработает для любого пакета, но Ruby кажется довольно чистым с точки зрения зависимостей. Никаких обещаний, что вы не столкнетесь с какой-то неясной проблемой с другими пакетами, которые вы можете установить из apt.

Другой вариант - использовать пакеты Brightbox для rubyee.

Ниже приводится цитата из Сообщение Бена Арбластера

Если вы используете Brightbox на основе Hardy, просто создайте или отредактируйте /etc/apt/sources.list.d/brightbox-rubyee.list, чтобы он содержал компонент тестирования rubyee следующим образом:

deb http://apt.brightbox.net/ hardy rubyee-testing

Наконец, обновите и обновите libruby1.8:

sudo apt-get update

sudo apt-get install libruby1.8 irb1.8 libopenssl-ruby1.8 libreadline-ruby1.8 rdoc1.8 ruby