mirror of
https://github.com/wahyd4/gvm.git
synced 2026-08-17 16:56:16 +10:00
FreeBSD does not by default install the Bourne-Again Shell (bash); and when it is installed, it is most certainly not installed to ``/bin/bash`` due to the nuances of the conventions around local site packages. Rather, it is installed to ``/usr/local/bin/bash``. Golang explicitly supports FreeBSD, so it should only be reasonable for GVM to support this target, too. As a fix, the shell script shebang definitions now use the ``env`` tool that comes from the _coreutils_ standard package, which is installed on all conventions-adhering Linux distributions, Mac OS X, and FreeBSD. FreeBSD prerequisites are now listed in the documentation. I have tested this against FreeBSD 9.0 release branch on the amd64, and it works satisfactorily now.
40 lines
985 B
Bash
40 lines
985 B
Bash
#!/usr/bin/env bash
|
|
. $GVM_ROOT/scripts/functions || return 1
|
|
|
|
function gvm() {
|
|
if [[ "$GVM_ROOT" == "" ]]; then
|
|
display_error "GVM_ROOT not set. Please source GVM_ROOT/scripts/gvm"
|
|
return $?
|
|
fi
|
|
if [[ -d $GVM_ROOT/.git ]]; then
|
|
mv $GVM_ROOT/.git $GVM_ROOT/git.bak ||
|
|
display_error "Failed to move git info out of the way"
|
|
fi
|
|
if [[ ! -d $GVM_ROOT ]]; then
|
|
display_error "GVM_ROOT does not exist. Please reinstall GVM"
|
|
return $?
|
|
fi
|
|
|
|
mkdir -p $GVM_ROOT/logs > /dev/null 2>&1
|
|
mkdir -p $GVM_ROOT/gos > /dev/null 2>&1
|
|
mkdir -p $GVM_ROOT/archive > /dev/null 2>&1
|
|
mkdir -p $GVM_ROOT/archive/package > /dev/null 2>&1
|
|
mkdir -p $GVM_ROOT/environments > /dev/null 2>&1
|
|
|
|
if [[ "$1" == "use" ]]; then
|
|
. $GVM_ROOT/scripts/env/use
|
|
shift
|
|
gvm_use $@
|
|
elif [[ "$1" == "implode" ]]; then
|
|
rm -rf $GVM_ROOT
|
|
elif [[ "$1" == "pkgset" ]] && [[ "$2" == "use" ]]; then
|
|
. $GVM_ROOT/scripts/env/pkgset-use
|
|
shift
|
|
shift
|
|
gvm_pkgset_use $@
|
|
else
|
|
$GVM_ROOT/bin/gvm $@
|
|
fi
|
|
}
|
|
|