From 7478ff7804cb0d9a1e777360fdd67b7a32c353f1 Mon Sep 17 00:00:00 2001 From: Adam Vandenberg Date: Tue, 28 Jul 2009 01:54:45 -0700 Subject: [PATCH] Ensure that the Cellar exists when symlinking Only remove brew symlinks w/ selflink. --- Library/Contributions/selflink.sh | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/Library/Contributions/selflink.sh b/Library/Contributions/selflink.sh index 285af4f863..c99f3956f8 100755 --- a/Library/Contributions/selflink.sh +++ b/Library/Contributions/selflink.sh @@ -8,13 +8,26 @@ fi source_base=`pwd` if [[ $mode == install ]]; then + # Ensure that the Cellar exists + if [[ ! -e "$source_base/Cellar" ]] ; then + mkdir -p "$source_base/Cellar" + 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"; -elif [[ $mode == undo ]]; then - rm "/usr/local/bin/brew" - rm "/usr/local/Library" - rm "/usr/local/Cellar" +elif [[ $mode == undo ]]; then + if [[ -h "/usr/local/bin/brew" ]] ; then + rm "/usr/local/bin/brew" + fi + + if [[ -h "/usr/local/Library" ]] ; then + rm "/usr/local/Library" + fi + + if [[ -h "/usr/local/Cellar" ]] ; then + rm "/usr/local/Cellar" + fi else echo "Unknown command: $mode"; echo "\tselflink.sh [install] >> symlinks to /usr/local"