|
@@ -1238,30 +1238,38 @@ ssl_cert_issue_CF() {
|
|
|
run_speedtest() {
|
|
|
# Check if Speedtest is already installed
|
|
|
if ! command -v speedtest &>/dev/null; then
|
|
|
- # If not installed, install it
|
|
|
- local pkg_manager=""
|
|
|
- local speedtest_install_script=""
|
|
|
-
|
|
|
- if command -v dnf &>/dev/null; then
|
|
|
- pkg_manager="dnf"
|
|
|
- speedtest_install_script="https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.rpm.sh"
|
|
|
- elif command -v yum &>/dev/null; then
|
|
|
- pkg_manager="yum"
|
|
|
- speedtest_install_script="https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.rpm.sh"
|
|
|
- elif command -v apt-get &>/dev/null; then
|
|
|
- pkg_manager="apt-get"
|
|
|
- speedtest_install_script="https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh"
|
|
|
- elif command -v apt &>/dev/null; then
|
|
|
- pkg_manager="apt"
|
|
|
- speedtest_install_script="https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh"
|
|
|
- fi
|
|
|
-
|
|
|
- if [[ -z $pkg_manager ]]; then
|
|
|
- echo "Error: Package manager not found. You may need to install Speedtest manually."
|
|
|
- return 1
|
|
|
+ # If not installed, determine installation method
|
|
|
+ if command -v snap &>/dev/null; then
|
|
|
+ # Use snap to install Speedtest
|
|
|
+ echo "Installing Speedtest using snap..."
|
|
|
+ snap install speedtest
|
|
|
else
|
|
|
- curl -s $speedtest_install_script | bash
|
|
|
- $pkg_manager install -y speedtest
|
|
|
+ # Fallback to using package managers
|
|
|
+ local pkg_manager=""
|
|
|
+ local speedtest_install_script=""
|
|
|
+
|
|
|
+ if command -v dnf &>/dev/null; then
|
|
|
+ pkg_manager="dnf"
|
|
|
+ speedtest_install_script="https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.rpm.sh"
|
|
|
+ elif command -v yum &>/dev/null; then
|
|
|
+ pkg_manager="yum"
|
|
|
+ speedtest_install_script="https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.rpm.sh"
|
|
|
+ elif command -v apt-get &>/dev/null; then
|
|
|
+ pkg_manager="apt-get"
|
|
|
+ speedtest_install_script="https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh"
|
|
|
+ elif command -v apt &>/dev/null; then
|
|
|
+ pkg_manager="apt"
|
|
|
+ speedtest_install_script="https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh"
|
|
|
+ fi
|
|
|
+
|
|
|
+ if [[ -z $pkg_manager ]]; then
|
|
|
+ echo "Error: Package manager not found. You may need to install Speedtest manually."
|
|
|
+ return 1
|
|
|
+ else
|
|
|
+ echo "Installing Speedtest using $pkg_manager..."
|
|
|
+ curl -s $speedtest_install_script | bash
|
|
|
+ $pkg_manager install -y speedtest
|
|
|
+ fi
|
|
|
fi
|
|
|
fi
|
|
|
|