Change behavior of DEVTOOLS_TOOL_FLUTTER_FROM_PATH (#10001)
diff --git a/tool/bin/dt b/tool/bin/dt
index 9893b7b..5d9c2ed 100755
--- a/tool/bin/dt
+++ b/tool/bin/dt
@@ -3,7 +3,7 @@
 SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
 
 USE_PATH=false
-if [ ! -z "$DEVTOOLS_TOOL_FLUTTER_FROM_PATH" ]; then
+if [ "$DEVTOOLS_TOOL_FLUTTER_FROM_PATH" = "true" ]; then
   USE_PATH=true
 fi
 for arg in "$@"; do
diff --git a/tool/bin/dt.bat b/tool/bin/dt.bat
index a321c4a..c1007ea 100755
--- a/tool/bin/dt.bat
+++ b/tool/bin/dt.bat
@@ -4,7 +4,7 @@
 @echo off
 
 set USE_PATH=
-IF DEFINED DEVTOOLS_TOOL_FLUTTER_FROM_PATH set USE_PATH=1
+IF /I "%DEVTOOLS_TOOL_FLUTTER_FROM_PATH%"=="true" set USE_PATH=1
 for %%a in (%*) do (
 	if "%%a"=="-p" set USE_PATH=1
 	if "%%a"=="--flutter-from-path" set USE_PATH=1
diff --git a/tool/ci/setup.sh b/tool/ci/setup.sh
index d02446c..fb0149e 100755
--- a/tool/ci/setup.sh
+++ b/tool/ci/setup.sh
@@ -22,15 +22,15 @@
 export -f flutter
 
 # Determine the Flutter SDK to use:
-# * If `DEVTOOLS_TOOL_FLUTTER_FROM_PATH` is set, then discover from `PATH`.
+# * If `DEVTOOLS_TOOL_FLUTTER_FROM_PATH` is "true", then discover from `PATH`.
 # * If `./tool/flutter-sdk` (a directory) exists, then use that.
-if [ -n "$DEVTOOLS_TOOL_FLUTTER_FROM_PATH" ]; then
+if [ "$DEVTOOLS_TOOL_FLUTTER_FROM_PATH" = "true" ]; then
     if command -v flutter &> /dev/null; then
         FLUTTER_EXE="$(command -v flutter)"
     elif command -v flutter.bat &> /dev/null; then
         FLUTTER_EXE="$(command -v flutter.bat)"
     else
-        echo "DEVTOOLS_TOOL_FLUTTER_FROM_PATH is set, but flutter was not found on PATH"
+        echo "DEVTOOLS_TOOL_FLUTTER_FROM_PATH is set to true, but flutter was not found on PATH"
         exit 1
     fi
     FLUTTER_BIN="$(cd "$(dirname "$FLUTTER_EXE")" && pwd -P)"
@@ -40,7 +40,7 @@
 elif [ -d "./tool/flutter-sdk" ]; then
     FLUTTER_DIR="$(pwd)/tool/flutter-sdk"
 else
-    echo "Expected ./tool/flutter-sdk to exist, or DEVTOOLS_TOOL_FLUTTER_FROM_PATH to be set"
+    echo "Expected ./tool/flutter-sdk to exist, or DEVTOOLS_TOOL_FLUTTER_FROM_PATH to be set to true"
     exit 1
 fi
 
diff --git a/tool/lib/devtools_command_runner.dart b/tool/lib/devtools_command_runner.dart
index 727da3a..307d79a 100644
--- a/tool/lib/devtools_command_runner.dart
+++ b/tool/lib/devtools_command_runner.dart
@@ -82,8 +82,10 @@
 
   @override
   Future<void> runCommand(ArgResults topLevelResults) {
+    final flutterFromPathEnvValue =
+        Platform.environment[_flutterFromPathEnvVar] ?? '';
     final flutterFromPathEnv =
-        Platform.environment[_flutterFromPathEnvVar]?.isNotEmpty == true;
+        bool.tryParse(flutterFromPathEnvValue, caseSensitive: false) == true;
     if (topLevelResults.flag(_flutterFromPathFlag) &&
         topLevelResults.wasParsed(_flutterSdkPathFlag)) {
       throw ArgParserException(