diff options
author | 2017-11-30 07:55:54 +0100 | |
---|---|---|
committer | 2017-12-12 21:34:53 +0100 | |
commit | 2f902a36a4952856f4b7737c3ec94159be772d2d (patch) | |
tree | 5b5a5909c18f44cf1a22cae93980db4468e42ccd /app-emulation/vagrant/files | |
parent | app-editors/atom: drop old versions. (diff) | |
download | gentoo-2f902a36a4952856f4b7737c3ec94159be772d2d.tar.gz gentoo-2f902a36a4952856f4b7737c3ec94159be772d2d.tar.bz2 gentoo-2f902a36a4952856f4b7737c3ec94159be772d2d.zip |
app-emulation/vagrant: improve ruby version discovery.
Package-Manager: Portage-2.3.16, Repoman-2.3.6
Closes: https://github.com/gentoo/gentoo/pull/6352
Diffstat (limited to 'app-emulation/vagrant/files')
-rw-r--r-- | app-emulation/vagrant/files/vagrant.in-r1 | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/app-emulation/vagrant/files/vagrant.in-r1 b/app-emulation/vagrant/files/vagrant.in-r1 index 7c0405e8a835..134cb31f299c 100644 --- a/app-emulation/vagrant/files/vagrant.in-r1 +++ b/app-emulation/vagrant/files/vagrant.in-r1 @@ -5,16 +5,27 @@ # so that everything loads and compiles to proper directories. for r in ruby24 ruby23 ruby22; do + # not all ruby versions are guaranteed to be installed + if ! command -v "${r}" >/dev/null 2>&1; then + continue + fi + VAGRANT_DIR="$( "${r}" -e 'print Gem::default_path[-1] + "/gems/vagrant-@VAGRANT_VERSION@"' )" + # Export the VAGRANT_EXECUTABLE so that pre-rubygems can optimize a bit export VAGRANT_EXECUTABLE="${VAGRANT_DIR}/bin/vagrant" - "${r}" "${VAGRANT_EXECUTABLE}" "version" &> /dev/null - if [ $? -eq 0 ]; then + + if [ -f ${VAGRANT_EXECUTABLE} ] ;then ruby="${r}" break fi done +if [ -z ${ruby} ]; then + echo "Error: failed to find any usable ruby" + exit 1 +fi + # Export GEM_HOME based on VAGRANT_HOME # # This needs to be set because Bundler includes gem paths |