由 Hiroshi SHIBATA 發表於 2018-11-08
翻譯: Delton Ding
我們發佈了 Ruby 語言的官方 snap 套件。
Snap 是由 Canonical 開發的套件系統。它允許在多個 Linux 作業系統上將軟體與其依賴一同分發。這解決了用戶無法從作業系統自帶的倉庫例如 rpm 或 apt 中獲取到最新版本 Ruby 的問題。
在 Ubuntu 16.04 及其後續版本中,你可以通過下述命令使用 Ruby snap:
sudo snap install ruby --classic
(如果您正在使用其它 Linux 發行版,請參考 https://docs.snapcraft.io/installing-snapd/6735)
我們的 snap 套件使用「頻道(channel)」功能使得多個 Ruby 版本可以平行發行。例如,在不指定頻道時,會安裝 Ruby 2.5.3 版本。但如果你想使用 Ruby 2.4,你可以通過下述命令指定爲 2.4 頻道:
sudo snap install ruby --classic --channel=2.4/stable
你還可以同時使用多個頻道。下述指令會將你的 Ruby 切換至 2.3 版本。
sudo snap switch ruby --channel=2.3/stable
sudo snap refresh
我們的 Snap 套件預設將 $HOME/.gem
作爲 GEM_HOME
和 GEM_PATH
的環境變數。所以當你執行由 RubyGems 安裝的指令(例如 Rails 或 RSpec),而沒有使用 bundle exec
命令時,你需要將下述程式添加至你的 shell rc 檔案中(例如 .bashrc):
eval `ruby.env`
由於 $HOME/.gem
被多個不同版本共享,如果你切換 Ruby 版本,你需要通過 gem pristine --extensions
重新編譯 C 擴充程式才能繼續使用 gem。
Ruby 首個官方套件版本是在 2018 年 11 月 6 日至 8 日於 Canonical 倫敦辦公室舉辦的 Snapcraft 峰會上發佈的。我們歡迎任何通過 https://github.com/ruby/snap.ruby 提交的回報。
請盡情享受。