mirror of
https://github.com/wahyd4/gvm.git
synced 2026-08-09 04:46:19 +10:00
Find the system ls command and use it to fix issue #6
This commit is contained in:
+6
-4
@@ -1,5 +1,7 @@
|
||||
_gvm()
|
||||
{
|
||||
LS_PATH=`which ls` || return 1
|
||||
|
||||
local cur prev opts base
|
||||
COMPREPLY=()
|
||||
cur="${COMP_WORDS[COMP_CWORD]}"
|
||||
@@ -13,7 +15,7 @@ _gvm()
|
||||
use|delete|empty)
|
||||
[[ "$gvm_go_name" == "" ]] && return 1
|
||||
[[ $COMP_CWORD > 3 ]] && return 1
|
||||
local version=$(for x in `ls $GVM_ROOT/pkgsets/$gvm_go_name`; do echo ${x} ; done )
|
||||
local version=$(for x in `$LS_PATH $GVM_ROOT/pkgsets/$gvm_go_name`; do echo ${x} ; done )
|
||||
COMPREPLY=( $(compgen -W "${version}" -- ${cur}) )
|
||||
return 0
|
||||
;;
|
||||
@@ -33,11 +35,11 @@ _gvm()
|
||||
[[ "$gvm_go_name" == "" ]] && return 1
|
||||
[[ "$gvm_pkgset_name" == "" ]] && return 1
|
||||
if [[ "$COMP_CWORD" == "3" ]]; then
|
||||
local version=$(for x in `ls $GVM_ROOT/pkgsets/$gvm_go_name/$gvm_pkgset_name/pkg.gvm`; do echo ${x} ; done )
|
||||
local version=$(for x in `$LS_PATH $GVM_ROOT/pkgsets/$gvm_go_name/$gvm_pkgset_name/pkg.gvm`; do echo ${x} ; done )
|
||||
COMPREPLY=( $(compgen -W "${version}" -- ${cur}) )
|
||||
return 0
|
||||
elif [[ "$COMP_CWORD" == "4" ]]; then
|
||||
local version=$(for x in `ls $GVM_ROOT/pkgsets/$gvm_go_name/$gvm_pkgset_name/pkg.gvm/${COMP_WORDS[3]}`; do echo ${x} ; done )
|
||||
local version=$(for x in `$LS_PATH $GVM_ROOT/pkgsets/$gvm_go_name/$gvm_pkgset_name/pkg.gvm/${COMP_WORDS[3]}`; do echo ${x} ; done )
|
||||
COMPREPLY=( $(compgen -W "${version}" -- ${cur}) )
|
||||
return 0
|
||||
fi
|
||||
@@ -63,7 +65,7 @@ _gvm()
|
||||
use|uninstall)
|
||||
[ ! -d $GVM_ROOT/gos ] && return 1
|
||||
[[ $COMP_CWORD > 2 ]] && return 1
|
||||
local installed_versions=$(for x in `ls $GVM_ROOT/gos`; do echo ${x} ; done )
|
||||
local installed_versions=$(for x in `$LS_PATH $GVM_ROOT/gos`; do echo ${x} ; done )
|
||||
COMPREPLY=( $(compgen -W "${installed_versions}" -- ${cur}) )
|
||||
return 0
|
||||
;;
|
||||
|
||||
+2
-1
@@ -1,10 +1,11 @@
|
||||
#!/bin/bash
|
||||
. $GVM_ROOT/scripts/functions
|
||||
LS_PATH=`which ls` || display_error "$LS_ERROR" || return 1
|
||||
|
||||
version=$1
|
||||
|
||||
if [ "$version" != "" ]; then
|
||||
fuzzy_match=`ls $GVM_ROOT/gos | sort | grep "$version" | head -n 1 | grep "$version"` ||
|
||||
fuzzy_match=`$LS_PATH $GVM_ROOT/gos | sort | grep "$version" | head -n 1 | grep "$version"` ||
|
||||
display_error "Invalid version $version"
|
||||
|
||||
foldername=$GVM_ROOT/gos/$fuzzy_match
|
||||
|
||||
Vendored
+6
-1
@@ -1,3 +1,6 @@
|
||||
#!/bin/bash
|
||||
. $GVM_ROOT/scripts/function/errors
|
||||
|
||||
function display_error() {
|
||||
tput sgr0
|
||||
tput setaf 1
|
||||
@@ -15,13 +18,15 @@ function display_message() {
|
||||
}
|
||||
|
||||
function gvm_pkgset_use() {
|
||||
LS_PATH=`which ls` || display_error "$LS_ERROR" || return 1
|
||||
|
||||
[[ "$1" != "" ]] ||
|
||||
display_error "Please specify a package set" || return 1
|
||||
|
||||
[[ "$gvm_go_name" != "" ]] ||
|
||||
display_error "No Go version selected" || return 1
|
||||
|
||||
fuzzy_match=`ls $GVM_ROOT/environments | sort | grep "$gvm_go_name@" | grep "$1" | head -n 1` ||
|
||||
fuzzy_match=`$LS_PATH $GVM_ROOT/environments | sort | grep "$gvm_go_name@" | grep "$1" | head -n 1` ||
|
||||
display_error "Invalid package set" || return 1
|
||||
|
||||
export PATH=$GVM_PATH_BACKUP
|
||||
|
||||
Vendored
+8
-3
@@ -1,3 +1,6 @@
|
||||
#!/bin/bash
|
||||
. $GVM_ROOT/scripts/function/errors
|
||||
|
||||
function display_error() {
|
||||
tput sgr0
|
||||
tput setaf 1
|
||||
@@ -15,15 +18,17 @@ function display_message() {
|
||||
}
|
||||
|
||||
function gvm_use() {
|
||||
LS_PATH=`which ls` || display_error "$LS_ERROR" || return 1
|
||||
|
||||
[[ "$1" != "" ]] ||
|
||||
display_error "Please specifiy the version" || return 1
|
||||
fuzzy_match=`ls $GVM_ROOT/gos | sort | grep "$1" | head -n 1 | grep "$1"` ||
|
||||
fuzzy_match=`$LS_PATH $GVM_ROOT/gos | sort | grep "$1" | head -n 1 | grep "$1"` ||
|
||||
display_error "Invalid version $1" || return 1
|
||||
|
||||
export PATH=$GVM_PATH_BACKUP
|
||||
. $GVM_ROOT/environments/$fuzzy_match
|
||||
. $GVM_ROOT/environments/$fuzzy_match &> /dev/null || display_error "Couldn't source environment" || return 1
|
||||
if [[ "$2" == "--default" ]]; then
|
||||
cp $GVM_ROOT/environments/$fuzzy_match $GVM_ROOT/environments/default
|
||||
cp $GVM_ROOT/environments/$fuzzy_match $GVM_ROOT/environments/default || display_error "Couldn't make $fuzzy_match default"
|
||||
fi
|
||||
|
||||
display_message "Now using version $fuzzy_match"
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
LS_ERROR="Couldn't find ls"
|
||||
+3
-2
@@ -1,14 +1,15 @@
|
||||
#!/bin/bash
|
||||
. $GVM_ROOT/scripts/functions
|
||||
LS_PATH=`which ls` || display_error "$LS_ERROR" || return 1
|
||||
|
||||
echo
|
||||
display_message "gvm gos (installed)"
|
||||
echo
|
||||
if [ -d $GVM_ROOT/gos ]; then
|
||||
if [[ "$gvm_go_name" != "" ]]; then
|
||||
ls -1 $GVM_ROOT/gos | sed 's/^/ /g' | sed 's/^ '$gvm_go_name'/=> '$gvm_go_name'/g'
|
||||
$LS_PATH -1 $GVM_ROOT/gos | sed 's/^/ /g' | sed 's/^ '$gvm_go_name'/=> '$gvm_go_name'/g'
|
||||
else
|
||||
ls -1 $GVM_ROOT/gos | sed 's/^/ /g'
|
||||
$LS_PATH -1 $GVM_ROOT/gos | sed 's/^/ /g'
|
||||
fi
|
||||
fi
|
||||
echo
|
||||
|
||||
+2
-1
@@ -1,10 +1,11 @@
|
||||
#!/bin/bash
|
||||
. $GVM_ROOT/scripts/functions
|
||||
LS_PATH=`which ls` || display_error "$LS_ERROR" || return 1
|
||||
|
||||
[[ "$1" == "" ]] &&
|
||||
display_error "Please specifiy the version"
|
||||
|
||||
fuzzy_match=`ls $GVM_ROOT/gos | sort | grep "$1" | head -n 1 | grep "$1"` ||
|
||||
fuzzy_match=`$LS_PATH $GVM_ROOT/gos | sort | grep "$1" | head -n 1 | grep "$1"` ||
|
||||
display_error "Invalid version $1"
|
||||
|
||||
if [ -d $GVM_ROOT/gos/$fuzzy_match ]; then
|
||||
|
||||
Reference in New Issue
Block a user