From 0bb0228962cebcce05ab966618945621ba144fcb Mon Sep 17 00:00:00 2001 From: Doug Hazell Date: Sun, 12 Feb 2017 14:31:37 +0000 Subject: [PATCH] Presumably the "env -I" was a typo for "env -i" Just sourcing brew.sh causes the "Example usage" msg due to lacking command args but changing the last line of your suggestion to: /bin/bash "$HOMEBREW_LIBRARY/Homebrew/brew.sh" "$@" worked. If all of the 'HOMEBREW.*' vars, that other parts of the system require, are only added in brew.sh then your suggestion is cleaner. --- Library/Homebrew/utils/shell_env.sh | 15 ------ bin/brew | 79 ++++------------------------- 2 files changed, 9 insertions(+), 85 deletions(-) delete mode 100755 Library/Homebrew/utils/shell_env.sh diff --git a/Library/Homebrew/utils/shell_env.sh b/Library/Homebrew/utils/shell_env.sh deleted file mode 100755 index fc7e1c9726..0000000000 --- a/Library/Homebrew/utils/shell_env.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -set +o posix - -IFS="=" - -while read -r key value -do - export "$key=$value" -done < /tmp/homebrew-env - -# Need to reset IFS to default value for later shell functions like 'printf -v HOMEBREW_MACOS_VERSION_NUMERIC ...' to work -unset IFS - -# HOMEBREW_LIBRARY will have been readded above having been added originally in 'bin/brew' -source "$HOMEBREW_LIBRARY/Homebrew/brew.sh" diff --git a/bin/brew b/bin/brew index 5fe7f892c6..b5fb9af047 100755 --- a/bin/brew +++ b/bin/brew @@ -44,78 +44,17 @@ fi HOMEBREW_LIBRARY="$HOMEBREW_REPOSITORY/Library" -# Refactor of code from '/Library/Homebrew/brew.sh' -export HOMEBREW_BREW_FILE -export HOMEBREW_PREFIX -export HOMEBREW_REPOSITORY -export HOMEBREW_LIBRARY - -# Set to system default value to avoid any possible later mis-direction based on the user's shell env -export PATH=/usr/bin:/bin:/usr/sbin:/sbin - -# ------------------------------------------------------------------------------------------------------------------------- -# Setting 'HOMEBREW_OLD_ENV' would be removed with 'env -i' so would need to be passed as another arg to the 'env -i' cmd. - -# The resulting '/tmp/homebrew-env' for an update prior to install was -# (which may run into bash arg limits, so I suggest keeping the tmp file): - -#HOMEBREW_PROCESSOR=Intel -#HOMEBREW_DEV_CMD_RUN=1 -#HOMEBREW_USER_AGENT=Homebrew/1.X.Y (Macintosh; Intel macOS 10.6.8) -#HOMEBREW_UPDATE_BEFORE=f7bccee2145547d21b2629cab8b5fddff3299bda -#HOMEBREW_LIBRARY=/usr/local/Homebrew/Library -#HOMEBREW_COMMAND_DEPTH=2 -#TERM=xterm-color -#HOMEBREW_OS_VERSION=macOS 10.6.8 -#HOMEBREW_UPDATE_AFTER_HOMEBREW_HOMEBREW_BUNDLE=a32e4559ef653c648426a4d52abdb570db09fccf -#HOMEBREW_REPOSITORY=/usr/local/Homebrew -#HOMEBREW_ENABLE_AUTO_UPDATE_MIGRATION=1 -#HOMEBREW_UPDATE_AFTER_HOMEBREW_HOMEBREW_CORE=350aa1a6b9f5d31dabb9d2cfeeffb960a64509e6 -#HOMEBREW_GIT_CONFIG_FILE=/usr/local/Homebrew/.git/config -#HOMEBREW_RUBY_PATH=/usr/local/Homebrew/Library/Homebrew/vendor/portable-ruby/current/bin/ruby -#HOMEBREW_NO_AUTO_UPDATE=1 -#HOMEBREW_UPDATE_BEFORE_HOMEBREW_HOMEBREW_CORE=9bc16f465e1d7697426dd6dad685d161f1f4ee1d -#HOMEBREW_ANALYTICS_USER_UUID=B2E8D13A-443F-4686-B946-DE6C797064D7 -#HOMEBREW_CACHE=/Users/doug/Library/Caches/Homebrew -#HOMEBREW_USER_AGENT_CURL=Homebrew/1.X.Y (Macintosh; Intel macOS 10.6.8) curl/7.52.1 -#PATH=/usr/bin:/bin:/usr/sbin:/sbin -#HOMEBREW_UPDATE_BEFORE_HOMEBREW_HOMEBREW_VERSIONS=c94a1b18d5c2c198b4be302b604dd0c845a4344b -#HOMEBREW_UPDATE_BEFORE_CASKROOM_HOMEBREW_CASK=258fd55c9c3d4fc3699753f363927c51a6fe9c18 -#HOMEBREW_UPDATE_BEFORE_HOMEBREW_HOMEBREW_BUNDLE=a32e4559ef653c648426a4d52abdb570db09fccf -#HOMEBREW_BREW_FILE=/usr/local/bin/brew -#HOMEBREW_MACOS_VERSION=10.6.8 -#HOMEBREW_ANALYTICS_ID=UA-76679469-1 -#HOMEBREW_UPDATE_AFTER_HOMEBREW_HOMEBREW_VERSIONS=c94a1b18d5c2c198b4be302b604dd0c845a4344b -#HOMEBREW_UPDATE_AFTER_CASKROOM_HOMEBREW_CASK=258fd55c9c3d4fc3699753f363927c51a6fe9c18 -#HOMEBREW_PRODUCT=Homebrew -#HOMEBREW_UPDATE_AFTER_HOMEBREW_HOMEBREW_DUPES=25fa9b53f943de00fc83c5a85fa0d29180eb1030 -#HOME=/Users/doug -#HOMEBREW_UPDATE_BEFORE_HOMEBREW_HOMEBREW_DUPES=25fa9b53f943de00fc83c5a85fa0d29180eb1030 -#HOMEBREW_PREFIX=/usr/local -#HOMEBREW_VERSION=>1.1.0 (no git repository) -#HOMEBREW_CELLAR=/usr/local/Cellar -#HOMEBREW_CURL=/usr/local/opt/curl/bin/curl -#HOMEBREW_UPDATE_PREINSTALL=1 -#HOMEBREW_NO_UPDATE_CLEANUP=1 -#HOMEBREW_UPDATE_AFTER=f7bccee2145547d21b2629cab8b5fddff3299bda -#HOMEBREW_SYSTEM=Macintosh - -# from an original of: - -#HOMEBREW_LIBRARY=/usr/local/Homebrew/Library -#TERM=xterm-color -#HOMEBREW_REPOSITORY=/usr/local/Homebrew -#PATH=/usr/bin:/bin:/usr/sbin:/sbin -#HOMEBREW_BREW_FILE=/usr/local/bin/brew -#HOME=/Users/doug -#HOMEBREW_PREFIX=/usr/local -# ------------------------------------------------------------------------------------------------------------------------- - if [[ -n "$HOMEBREW_ENV_FILTERING" ]] then - # Needed TERM to prevent "tput: No value for $TERM and no -T specified" - env | grep -E '^(HOMEBREW.*|HOME|PATH|TERM)=.*$' > /tmp/homebrew-env - env -i "$HOMEBREW_LIBRARY/Homebrew/utils/shell_env.sh" "$@" + env -i \ + HOME="$HOME" \ + PATH=/usr/bin:/bin:/usr/sbin:/sbin \ + TERM="$TERM" \ + HOMEBREW_BREW_FILE="$HOMEBREW_BREW_FILE" \ + HOMEBREW_PREFIX="$HOMEBREW_PREFIX" \ + HOMEBREW_REPOSITORY="$HOMEBREW_REPOSITORY" \ + HOMEBREW_LIBRARY="$HOMEBREW_LIBRARY" \ + /bin/bash "$HOMEBREW_LIBRARY/Homebrew/brew.sh" "$@" else source "$HOMEBREW_LIBRARY/Homebrew/brew.sh" fi