diff --git a/Library/Homebrew/brew.sh b/Library/Homebrew/brew.sh
index 71e2eacd8013ffe69d6a65833d3e4167764f2ad7..bdc16416f53a20be4a29bc313ec760d6563f7685 100644
--- a/Library/Homebrew/brew.sh
+++ b/Library/Homebrew/brew.sh
@@ -395,12 +395,15 @@ update-preinstall-timer() {
 update-preinstall() {
   [[ -z "$HOMEBREW_HELP" ]] || return
   [[ -z "$HOMEBREW_NO_AUTO_UPDATE" ]] || return
+  [[ -z "$HOMEBREW_AUTO_UPDATING" ]] || return
   [[ -z "$HOMEBREW_AUTO_UPDATE_CHECKED" ]] || return
   [[ -z "$HOMEBREW_UPDATE_PREINSTALL" ]] || return
 
   if [[ "$HOMEBREW_COMMAND" = "install" || "$HOMEBREW_COMMAND" = "upgrade" || "$HOMEBREW_COMMAND" = "tap" ||
         "$HOMEBREW_CASK_COMMAND" = "install" || "$HOMEBREW_CASK_COMMAND" = "upgrade" ]]
   then
+    export HOMEBREW_AUTO_UPDATING="1"
+
     if [[ -z "$HOMEBREW_VERBOSE" ]]
     then
       update-preinstall-timer &
@@ -417,17 +420,14 @@ update-preinstall() {
       kill "$timer_pid" 2>/dev/null
       wait "$timer_pid" 2>/dev/null
     fi
-  fi
 
-  # If brew update --preinstall did a migration then export the new locations.
-  if [[ "$HOMEBREW_REPOSITORY" = "/usr/local" &&
-        ! -d "$HOMEBREW_REPOSITORY/.git" &&
-        -d "/usr/local/Homebrew/.git" ]]
-  then
-    HOMEBREW_REPOSITORY="/usr/local/Homebrew"
-    HOMEBREW_LIBRARY="$HOMEBREW_REPOSITORY/Library"
-    export HOMEBREW_REPOSITORY
-    export HOMEBREW_LIBRARY
+    unset HOMEBREW_AUTO_UPDATING
+
+    # If we've checked for updates, we don't need to check again.
+    export HOMEBREW_AUTO_UPDATE_CHECKED="1"
+
+    # exec a new process to set any new environment variables.
+    exec "$HOMEBREW_BREW_FILE" "$@"
   fi
 
   # If we've checked for updates, we don't need to check again.
@@ -444,7 +444,7 @@ then
   # Don't need shellcheck to follow this `source`.
   # shellcheck disable=SC1090
   source "$HOMEBREW_BASH_COMMAND"
-  { update-preinstall; "homebrew-$HOMEBREW_COMMAND" "$@"; exit $?; }
+  { update-preinstall "$@"; "homebrew-$HOMEBREW_COMMAND" "$@"; exit $?; }
 else
   # Don't need shellcheck to follow this `source`.
   # shellcheck disable=SC1090
@@ -453,5 +453,5 @@ else
 
   # Unshift command back into argument list (unless argument list was empty).
   [[ "$HOMEBREW_ARG_COUNT" -gt 0 ]] && set -- "$HOMEBREW_COMMAND" "$@"
-  { update-preinstall; exec "$HOMEBREW_RUBY_PATH" $HOMEBREW_RUBY_WARNINGS "$HOMEBREW_LIBRARY/Homebrew/brew.rb" "$@"; }
+  { update-preinstall "$@"; exec "$HOMEBREW_RUBY_PATH" $HOMEBREW_RUBY_WARNINGS "$HOMEBREW_LIBRARY/Homebrew/brew.rb" "$@"; }
 fi
diff --git a/Library/Homebrew/config.rb b/Library/Homebrew/config.rb
index 444db9ac35e8a513e6449e32f3eee422a4c165cd..3d1f3208cd7fb3e71118d81cc86af7c6d3cdd6d8 100644
--- a/Library/Homebrew/config.rb
+++ b/Library/Homebrew/config.rb
@@ -36,13 +36,11 @@ HOMEBREW_CACHE = Pathname.new(ENV["HOMEBREW_CACHE"])
 HOMEBREW_CACHE_FORMULA = HOMEBREW_CACHE/"Formula"
 
 # Where build, postinstall, and test logs of formulae are written to
-HOMEBREW_LOGS = Pathname.new(ENV["HOMEBREW_LOGS"] || "~/Library/Logs/Homebrew/").expand_path
+HOMEBREW_LOGS = Pathname.new(ENV["HOMEBREW_LOGS"]).expand_path
 
 # Must use `/tmp` instead of `TMPDIR` because long paths break Unix domain sockets
 HOMEBREW_TEMP = begin
-  # /tmp fallback is here for people auto-updating from a version where
-  # HOMEBREW_TEMP isn't set.
-  tmp = Pathname.new(ENV["HOMEBREW_TEMP"] || "/tmp")
+  tmp = Pathname.new(ENV["HOMEBREW_TEMP"])
   tmp.mkpath unless tmp.exist?
   tmp.realpath
 end
diff --git a/Library/Homebrew/global.rb b/Library/Homebrew/global.rb
index e47f01eec6cf6e4131e08533ceaf5368c5da5bbd..7657f74c36c5253f5b040eb572c4bf483363bfa9 100644
--- a/Library/Homebrew/global.rb
+++ b/Library/Homebrew/global.rb
@@ -50,18 +50,8 @@ HOMEBREW_USER_AGENT_FAKE_SAFARI =
   "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/602.4.8 " \
   "(KHTML, like Gecko) Version/10.0.3 Safari/602.4.8".freeze
 
-# Bintray fallback is here for people auto-updating from a version where
-# `HOMEBREW_BOTTLE_DEFAULT_DOMAIN` isn't set.
-HOMEBREW_BOTTLE_DEFAULT_DOMAIN = if ENV["HOMEBREW_BOTTLE_DEFAULT_DOMAIN"]
-  ENV["HOMEBREW_BOTTLE_DEFAULT_DOMAIN"]
-elsif OS.mac? || ENV["HOMEBREW_FORCE_HOMEBREW_ON_LINUX"]
-  "https://homebrew.bintray.com".freeze
-else
-  "https://linuxbrew.bintray.com".freeze
-end
-
-HOMEBREW_BOTTLE_DOMAIN = ENV["HOMEBREW_BOTTLE_DOMAIN"] ||
-                         HOMEBREW_BOTTLE_DEFAULT_DOMAIN
+HOMEBREW_BOTTLE_DEFAULT_DOMAIN = ENV["HOMEBREW_BOTTLE_DEFAULT_DOMAIN"]
+HOMEBREW_BOTTLE_DOMAIN = ENV["HOMEBREW_BOTTLE_DOMAIN"]
 
 require "fileutils"
 require "os"