selflink.sh install directory is now configurable
Signed-off-by: Max Howell <max@methylblue.com> I preserved the behaviour where the whole Library directory is symlinked as no explanation for this change was given…
This commit is contained in:
parent
9802bb0e19
commit
3e04b3f0d6
@ -1,41 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
# This script links your clone into /usr/local, so you can keep the .git
|
||||
# directory out of the way.
|
||||
# This script links your clone into $install_base, so you can keep the .git
|
||||
# directory out of the way. Default for no parameters is /usr/local
|
||||
|
||||
mode=$1
|
||||
if [[ -z $mode ]]; then
|
||||
mode="install"
|
||||
fi
|
||||
|
||||
install_base=$2
|
||||
if [[ -z $install_base ]]; then
|
||||
install_base="/usr/local"
|
||||
fi
|
||||
|
||||
source_base=`pwd`
|
||||
|
||||
if [[ $mode == install ]]; then
|
||||
# Ensure that the Cellar exists
|
||||
# Ensure that the Cellar exists -- otherwise Homebrew breaks
|
||||
if [[ ! -e "$source_base/Cellar" ]] ; then
|
||||
mkdir -p "$source_base/Cellar"
|
||||
fi
|
||||
|
||||
if [[ ! -e "/usr/local/bin" ]] ; then
|
||||
mkdir -p /usr/local/bin
|
||||
if [[ ! -e "$install_base/bin" ]] ; then
|
||||
mkdir -p $install_base/bin
|
||||
fi
|
||||
|
||||
ln -s "$source_base/bin/brew" "/usr/local/bin/brew";
|
||||
ln -s "$source_base/Library" "/usr/local/Library";
|
||||
ln -s "$source_base/Cellar" "/usr/local/Cellar";
|
||||
ln -s "$source_base/bin/brew" "$install_base/bin/brew";
|
||||
ln -s "$source_base/Library" "$install_base/Library";
|
||||
ln -s "$source_base/Cellar" "$install_base/Cellar";
|
||||
elif [[ $mode == undo ]]; then
|
||||
if [[ -h "/usr/local/bin/brew" ]] ; then
|
||||
rm "/usr/local/bin/brew"
|
||||
if [[ -h "$install_base/bin/brew" ]] ; then
|
||||
rm "$install_base/bin/brew"
|
||||
fi
|
||||
|
||||
if [[ -h "/usr/local/Library" ]] ; then
|
||||
rm "/usr/local/Library"
|
||||
if [[ -h "$install_base/Library" ]] ; then
|
||||
rm "$install_base/Library"
|
||||
fi
|
||||
|
||||
if [[ -h "/usr/local/Cellar" ]] ; then
|
||||
rm "/usr/local/Cellar"
|
||||
if [[ -h "$install_base/Cellar" ]] ; then
|
||||
rm "$install_base/Cellar"
|
||||
fi
|
||||
else
|
||||
echo "Unknown command: $mode";
|
||||
echo "\tselflink.sh [install] >> symlinks to /usr/local"
|
||||
echo "\tselflink.sh undo >> removes symlinks from /usr/local"
|
||||
echo "\tselflink.sh [install] >> symlinks to $install_base"
|
||||
echo "\tselflink.sh undo >> removes symlinks from $install_base"
|
||||
fi
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user