@@ -61,8 +61,7 @@ export DVM_VERSION="v0.8.1"
61
61
# Set global variables to default values
62
62
DVM_DENO_VERSION=" "
63
63
DVM_FILE_TYPE=" "
64
- DVM_INSTALL_FROM_BINARY_ONLY=false
65
- DVM_INSTALL_FROM_SOURCE_ONLY=false
64
+ DVM_INSTALL_MODE=" binary"
66
65
DVM_INSTALL_REGISTRY=" "
67
66
DVM_INSTALL_SKIP_VALIDATION=false
68
67
DVM_LATEST_VERSION=" "
@@ -783,7 +782,7 @@ export DVM_VERSION="v0.8.1"
783
782
fi
784
783
785
784
cargo clean
786
-
785
+
787
786
if ! cargo build --release
788
787
then
789
788
dvm_print_error " failed to build deno"
@@ -1118,40 +1117,26 @@ export DVM_VERSION="v0.8.1"
1118
1117
}
1119
1118
1120
1119
# Try to install Deno from the network with the binary file, or try to build
1121
- # Deno from the source code if failed to download the precompiled binary
1122
- # file. It'll skip downloading the binary file if the value of variable
1123
- # `DVM_INSTALL_FROM_SOURCE_ONLY` is true, and skip downloading and building
1124
- # from the source code if the value of variable
1125
- # `DVM_INSTALL_FROM_BINARY_ONLY` is true.
1120
+ # Deno from the source code.
1126
1121
# Parameters:
1127
1122
# - $1: The Deno version to install.
1128
1123
dvm_install_deno () {
1129
1124
local version
1130
1125
1131
1126
version=" $1 "
1132
1127
1133
- if [ " $DVM_INSTALL_FROM_SOURCE_ONLY " = false ]
1134
- then
1135
- if dvm_install_deno_by_binary " $version "
1136
- then
1137
- return
1138
- fi
1139
- fi
1140
-
1141
- if [ " $DVM_INSTALL_FROM_BINARY_ONLY " = false ]
1142
- then
1143
- if [ " $DVM_INSTALL_FROM_SOURCE_ONLY " = false ]
1144
- then
1145
- dvm_print_warning " Failed to downloading Deno binary file, fallback to build from source."
1146
- fi
1147
-
1148
- if dvm_install_deno_by_source " $version "
1149
- then
1150
- return
1151
- fi
1152
- fi
1153
-
1154
- dvm_failure
1128
+ case " $DVM_INSTALL_MODE " in
1129
+ " binary" )
1130
+ dvm_install_deno_by_binary " $version "
1131
+ ;;
1132
+ " source" )
1133
+ dvm_install_deno_by_source " $version "
1134
+ ;;
1135
+ * )
1136
+ dvm_print_error " Unknown install mode: $DVM_INSTALL_MODE "
1137
+ dvm_failure
1138
+ ;;
1139
+ esac
1155
1140
}
1156
1141
1157
1142
# Download and install the pre-compiled Deno binary file from the network.
@@ -1442,9 +1427,8 @@ export DVM_VERSION="v0.8.1"
1442
1427
1443
1428
# unset global variables
1444
1429
unset -v DVM_COLOR_MODE DVM_DENO_VERSION DVM_DIR DVM_FILE_TYPE \
1445
- DVM_INSTALL_FROM_BINARY_ONLY DVM_INSTALL_FROM_SOURCE_ONLY \
1446
- DVM_INSTALL_REGISTRY DVM_INSTALL_SKIP_VALIDATION DVM_LATEST_VERSION \
1447
- DVM_PROFILE_FILE DVM_QUIET_MODE DVM_REMOTE_VERSIONS \
1430
+ DVM_INSTALL_MODE DVM_INSTALL_REGISTRY DVM_INSTALL_SKIP_VALIDATION \
1431
+ DVM_LATEST_VERSION DVM_PROFILE_FILE DVM_QUIET_MODE DVM_REMOTE_VERSIONS \
1448
1432
DVM_REQUEST_RESPONSE DVM_SOURCE DVM_TARGET_ARCH DVM_TARGET_NAME \
1449
1433
DVM_TARGET_OS DVM_TARGET_TYPE DVM_TARGET_VERSION DVM_VERBOSE_MODE \
1450
1434
DVM_VERSION
@@ -1807,10 +1791,10 @@ dvm() {
1807
1791
DVM_INSTALL_SKIP_VALIDATION=true
1808
1792
;;
1809
1793
" --from-binary" )
1810
- DVM_INSTALL_FROM_BINARY_ONLY=true
1794
+ DVM_INSTALL_MODE= " binary "
1811
1795
;;
1812
1796
" --from-source" )
1813
- DVM_INSTALL_FROM_SOURCE_ONLY=true
1797
+ DVM_INSTALL_MODE= " source "
1814
1798
;;
1815
1799
" -" * )
1816
1800
;;
0 commit comments