Package: vagrant
Version: 1.6.5+dfsg1-2
Severity: minor
Tags: patch

Dear Maintainer,

When VAGRANT_HOME is set to a different path than $HOME/.vagrant.d, bash
completions regarding box names fails with an error like:

"$ vagrant init find: `/home/mert/.vagrant.d/boxes': No such file or directory"

Attached is a patch for /etc/bash_completion.d/vagrant that respects
VAGRANT_HOME if it's set.



-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (500, 'testing'), (2, 'unstable')
Architecture: i386 (x86_64)
Foreign Architectures: amd64

Kernel: Linux 3.14.23-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages vagrant depends on:
ii  bsdtar             3.1.2-9
ii  bundler            1.7.4-1
ii  curl               7.38.0-2
ii  openssh-client     1:6.7p1-2
ii  ruby               1:2.1.0.4
ii  ruby-childprocess  0.5.5-1
ii  ruby-erubis        2.7.0-3
ii  ruby-i18n          0.6.9-2
ii  ruby-listen        2.4.0-4
ii  ruby-log4r         1.1.10-4
ii  ruby-net-scp       1.2.1-1
ii  ruby-net-ssh       1:2.9.1-1
ii  ruby-nokogiri      1.6.3.1+ds-1
ii  ruby-rb-inotify    0.9.5-1

vagrant recommends no packages.

Versions of packages vagrant suggests:
ii  virtualbox-4.3 [virtualbox]  4.3.18-96516~Debian~wheezy

-- Configuration Files:
/etc/bash_completion.d/vagrant changed [not included]

-- no debconf information
--- vagrant.org	2014-11-06 13:45:51.987580146 +0200
+++ vagrant	2014-11-06 13:50:53.483360939 +0200
@@ -65,7 +65,7 @@
     then
         case "$prev" in
             "init")
-              local box_list=$(find $HOME/.vagrant.d/boxes -mindepth 1 -maxdepth 1 -type d -exec basename {} \;)
+              local box_list=$(find ${VAGRANT_HOME:-"$HOME"/.vagrant.d}/boxes -mindepth 1 -maxdepth 1 -type d -exec basename {} \;)
               COMPREPLY=($(compgen -W "${box_list}" -- ${cur}))
               return 0
             ;;
@@ -111,7 +111,7 @@
       then
         case "$prev" in
             "remove"|"repackage")
-              local box_list=$(find $HOME/.vagrant.d/boxes -mindepth 1 -maxdepth 1 -type d -exec basename {} \;)
+              local box_list=$(find ${VAGRANT_HOME:-"$HOME"/.vagrant.d}/boxes -mindepth 1 -maxdepth 1 -type d -exec basename {} \;)
               COMPREPLY=($(compgen -W "${box_list}" -- ${cur}))
               return 0
               ;;

Reply via email to