Started python conversion
This commit is contained in:
parent
1613d767bf
commit
a33a54c5e6
19 changed files with 178 additions and 119 deletions
|
|
@ -1,13 +1,13 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## HW diagnostics - Prime95
|
## Wizard Kit: Apple fan speed tool
|
||||||
|
|
||||||
SMCPATH="/sys/devices/platform/applesmc.768"
|
SMCPATH="/sys/devices/platform/applesmc.768"
|
||||||
SET_MAX="True"
|
SET_MAX="True"
|
||||||
|
|
||||||
function usage {
|
function usage {
|
||||||
echo "Usage: $0 auto|max"
|
echo "Usage: $(basename "$0") auto|max"
|
||||||
echo " e.g. $0 max"
|
echo " e.g. $(basename "$0") max"
|
||||||
}
|
}
|
||||||
|
|
||||||
# Set mode
|
# Set mode
|
||||||
31
.bin/Scripts/connect_to_network
Executable file
31
.bin/Scripts/connect_to_network
Executable file
|
|
@ -0,0 +1,31 @@
|
||||||
|
#!/bin/python3
|
||||||
|
#
|
||||||
|
## Wizard Kit: Network connection tool
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
|
||||||
|
# Init
|
||||||
|
os.chdir(os.path.dirname(os.path.realpath(__file__)))
|
||||||
|
sys.path.append(os.getcwd())
|
||||||
|
from functions.network import *
|
||||||
|
init_global_vars()
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
try:
|
||||||
|
# Prep
|
||||||
|
clear_screen()
|
||||||
|
|
||||||
|
# Connect
|
||||||
|
if not is_connected():
|
||||||
|
connect_to_network()
|
||||||
|
|
||||||
|
# Done
|
||||||
|
print_standard('\nDone.')
|
||||||
|
#pause("Press Enter to exit...")
|
||||||
|
exit_script()
|
||||||
|
except SystemExit:
|
||||||
|
pass
|
||||||
|
except:
|
||||||
|
major_exception()
|
||||||
|
|
||||||
|
|
@ -8,7 +8,11 @@ import subprocess
|
||||||
import sys
|
import sys
|
||||||
import time
|
import time
|
||||||
import traceback
|
import traceback
|
||||||
|
try:
|
||||||
import winreg
|
import winreg
|
||||||
|
except ModuleNotFoundError:
|
||||||
|
if psutil.WINDOWS:
|
||||||
|
raise
|
||||||
|
|
||||||
from subprocess import CalledProcessError
|
from subprocess import CalledProcessError
|
||||||
|
|
||||||
|
|
@ -26,9 +30,13 @@ COLORS = {
|
||||||
'YELLOW': '\033[33m',
|
'YELLOW': '\033[33m',
|
||||||
'BLUE': '\033[34m'
|
'BLUE': '\033[34m'
|
||||||
}
|
}
|
||||||
|
try:
|
||||||
HKU = winreg.HKEY_USERS
|
HKU = winreg.HKEY_USERS
|
||||||
HKCU = winreg.HKEY_CURRENT_USER
|
HKCU = winreg.HKEY_CURRENT_USER
|
||||||
HKLM = winreg.HKEY_LOCAL_MACHINE
|
HKLM = winreg.HKEY_LOCAL_MACHINE
|
||||||
|
except NameError:
|
||||||
|
if psutil.WINDOWS:
|
||||||
|
raise
|
||||||
|
|
||||||
# Error Classes
|
# Error Classes
|
||||||
class BIOSKeyNotFoundError(Exception):
|
class BIOSKeyNotFoundError(Exception):
|
||||||
|
|
@ -86,8 +94,11 @@ def ask(prompt='Kotaero!'):
|
||||||
return answer
|
return answer
|
||||||
|
|
||||||
def clear_screen():
|
def clear_screen():
|
||||||
"""Simple wrapper for cls."""
|
"""Simple wrapper for cls/clear."""
|
||||||
|
if psutil.WINDOWS:
|
||||||
os.system('cls')
|
os.system('cls')
|
||||||
|
else:
|
||||||
|
os.system('clear')
|
||||||
|
|
||||||
def convert_to_bytes(size):
|
def convert_to_bytes(size):
|
||||||
"""Convert human-readable size str to bytes and return an int."""
|
"""Convert human-readable size str to bytes and return an int."""
|
||||||
|
|
@ -160,8 +171,10 @@ def get_ticket_number():
|
||||||
_input = input('Enter ticket number: ')
|
_input = input('Enter ticket number: ')
|
||||||
if re.match(r'^([0-9]+([-_]?\w+|))$', _input):
|
if re.match(r'^([0-9]+([-_]?\w+|))$', _input):
|
||||||
ticket_number = _input
|
ticket_number = _input
|
||||||
with open(r'{}\TicketNumber'.format(global_vars['LogDir']), 'w',
|
out_file = r'{}\TicketNumber'.format(global_vars['LogDir'])
|
||||||
encoding='utf-8') as f:
|
if not psutil.WINDOWS:
|
||||||
|
out_file = out_file.replace('\\', '/')
|
||||||
|
with open(out_file, 'w', encoding='utf-8') as f:
|
||||||
f.write(ticket_number)
|
f.write(ticket_number)
|
||||||
return ticket_number
|
return ticket_number
|
||||||
|
|
||||||
|
|
@ -272,7 +285,7 @@ def menu_select(title='~ Untitled Menu ~',
|
||||||
answer = ''
|
answer = ''
|
||||||
|
|
||||||
while (answer.upper() not in valid_answers):
|
while (answer.upper() not in valid_answers):
|
||||||
os.system('cls')
|
clear_screen()
|
||||||
print(menu_splash)
|
print(menu_splash)
|
||||||
answer = input('{}: '.format(prompt))
|
answer = input('{}: '.format(prompt))
|
||||||
|
|
||||||
|
|
@ -294,7 +307,11 @@ def pause(prompt='Press Enter to continue... '):
|
||||||
|
|
||||||
def ping(addr='google.com'):
|
def ping(addr='google.com'):
|
||||||
"""Attempt to ping addr."""
|
"""Attempt to ping addr."""
|
||||||
cmd = ['ping', '-n', '2', addr]
|
cmd = [
|
||||||
|
'ping',
|
||||||
|
'-n' if psutil.WINDOWS else '-c',
|
||||||
|
'2',
|
||||||
|
addr]
|
||||||
run_program(cmd)
|
run_program(cmd)
|
||||||
|
|
||||||
def popen_program(cmd, pipe=False, minimized=False, shell=False, **kwargs):
|
def popen_program(cmd, pipe=False, minimized=False, shell=False, **kwargs):
|
||||||
|
|
@ -535,6 +552,12 @@ def init_global_vars():
|
||||||
"""Sets global variables based on system info."""
|
"""Sets global variables based on system info."""
|
||||||
print_info('Initializing')
|
print_info('Initializing')
|
||||||
os.system('title Wizard Kit')
|
os.system('title Wizard Kit')
|
||||||
|
if psutil.LINUX:
|
||||||
|
init_functions = [
|
||||||
|
['Checking environment...', set_linux_vars],
|
||||||
|
['Clearing collisions...', clean_env_vars],
|
||||||
|
]
|
||||||
|
else:
|
||||||
init_functions = [
|
init_functions = [
|
||||||
['Checking .bin...', find_bin],
|
['Checking .bin...', find_bin],
|
||||||
['Checking environment...', set_common_vars],
|
['Checking environment...', set_common_vars],
|
||||||
|
|
@ -713,5 +736,14 @@ def set_common_vars():
|
||||||
global_vars['TmpDir'] = r'{BinDir}\tmp'.format(
|
global_vars['TmpDir'] = r'{BinDir}\tmp'.format(
|
||||||
**global_vars)
|
**global_vars)
|
||||||
|
|
||||||
|
def set_linux_vars():
|
||||||
|
result = run_program(['mktemp', '-d'])
|
||||||
|
global_vars['TmpDir'] = result.stdout.decode().strip()
|
||||||
|
global_vars['Date'] = time.strftime("%Y-%m-%d")
|
||||||
|
global_vars['Date-Time'] = time.strftime("%Y-%m-%d_%H%M_%z")
|
||||||
|
global_vars['Env'] = os.environ.copy()
|
||||||
|
global_vars['BinDir'] = '/usr/local/bin'
|
||||||
|
global_vars['LogDir'] = global_vars['TmpDir']
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
print("This file is not meant to be called directly.")
|
print("This file is not meant to be called directly.")
|
||||||
|
|
|
||||||
65
.bin/Scripts/functions/network.py
Normal file
65
.bin/Scripts/functions/network.py
Normal file
|
|
@ -0,0 +1,65 @@
|
||||||
|
#!/bin/python3
|
||||||
|
#
|
||||||
|
## Wizard Kit: Functions - Network
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
|
||||||
|
# Init
|
||||||
|
os.chdir(os.path.dirname(os.path.realpath(__file__)))
|
||||||
|
sys.path.append(os.getcwd())
|
||||||
|
from functions.common import *
|
||||||
|
|
||||||
|
# REGEX
|
||||||
|
REGEX_VALID_IP = re.compile(
|
||||||
|
r'(10.\d+.\d+.\d+'
|
||||||
|
r'|172.(1[6-9]|2\d|3[0-1])'
|
||||||
|
r'|192.168.\d+.\d+)',
|
||||||
|
re.IGNORECASE)
|
||||||
|
|
||||||
|
def connect_to_network():
|
||||||
|
"""Connect to network if not already connected."""
|
||||||
|
net_ifs = psutil.net_if_addrs()
|
||||||
|
net_ifs = [i[:2] for i in net_ifs.keys()]
|
||||||
|
|
||||||
|
# Bail if currently connected
|
||||||
|
if is_connected():
|
||||||
|
return
|
||||||
|
|
||||||
|
# LAN
|
||||||
|
if 'en' in net_ifs:
|
||||||
|
# Reload the tg3/broadcom driver (known fix for some Dell systems)
|
||||||
|
try_and_print(message='Reloading drivers...', function=reload_tg3)
|
||||||
|
|
||||||
|
# WiFi
|
||||||
|
if not is_connected() and 'wl' in net_ifs:
|
||||||
|
cmd = [
|
||||||
|
'nmcli', 'dev', 'wifi',
|
||||||
|
'connect', WIFI_SSID,
|
||||||
|
'password', WIFI_PASSWORD]
|
||||||
|
try_and_print(
|
||||||
|
message = 'Connecting to {}...'.format(WIFI_SSID),
|
||||||
|
function = run_program,
|
||||||
|
cmd = cmd)
|
||||||
|
|
||||||
|
def is_connected():
|
||||||
|
"""Check for a valid private IP."""
|
||||||
|
devs = psutil.net_if_addrs()
|
||||||
|
for dev in devs.values():
|
||||||
|
for family in dev:
|
||||||
|
if REGEX_VALID_IP.search(family.address):
|
||||||
|
# Valid IP found
|
||||||
|
return True
|
||||||
|
# Else
|
||||||
|
return False
|
||||||
|
|
||||||
|
def reload_tg3():
|
||||||
|
"""Reload tg3 module as a workaround for some Dell systems."""
|
||||||
|
run_program(['sudo', 'modprobe', '-r', 'tg3'])
|
||||||
|
run_program(['sudo', 'modprobe', 'broadcom'])
|
||||||
|
run_program(['sudo', 'modprobe', 'tg3'])
|
||||||
|
sleep(5)
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
print("This file is not meant to be called directly.")
|
||||||
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## WK HW diagnostics - Launcher
|
## Wizard Kit: HW Diagnostics - Menu
|
||||||
|
|
||||||
MODE="$1"
|
MODE="$1"
|
||||||
SHOW_MENU="True"
|
SHOW_MENU="True"
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## WK HW diagnostics - Audio (Stereo)
|
## Wizard Kit: HW Diagnostics - Audio
|
||||||
|
|
||||||
# Unmute and set volume
|
# Unmute and set volume
|
||||||
amixer -q set "Master" 80% unmute
|
amixer -q set "Master" 80% unmute
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## WK HW diagnostics - badblocks
|
## Wizard Kit: HW Diagnostics - badblocks
|
||||||
|
|
||||||
function usage {
|
function usage {
|
||||||
echo "Usage: $0 log-dir device"
|
echo "Usage: $0 log-dir device"
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## WK HW Diagnostics - Main script
|
## Wizard Kit: HW Diagnostics - Main script
|
||||||
|
|
||||||
die () {
|
die () {
|
||||||
echo "$0:" "$@" >&2
|
echo "$0:" "$@" >&2
|
||||||
|
|
@ -8,16 +8,16 @@ die () {
|
||||||
}
|
}
|
||||||
|
|
||||||
# Load settings
|
# Load settings
|
||||||
if [[ -f "/run/archiso/bootmnt/arch/arch.conf" ]]; then
|
if [[ -f "/run/archiso/bootmnt/arch/main.conf" ]]; then
|
||||||
source "/run/archiso/bootmnt/arch/arch.conf" || \
|
source "/run/archiso/bootmnt/arch/main.conf" || \
|
||||||
die "ERROR: failed to load arch.conf (from /run/archiso/bootmnt/arch/)"
|
die "ERROR: failed to load main.conf (from /run/archiso/bootmnt/arch/)"
|
||||||
else
|
else
|
||||||
source "/usr/local/bin/arch.conf" || \
|
source "/usr/local/bin/main.conf" || \
|
||||||
die "ERROR: failed to load arch.conf (from /usr/local/bin/)"
|
die "ERROR: failed to load main.conf (from /usr/local/bin/)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Get TICKET
|
# Get TICKET
|
||||||
## Inital SKIP_UPLOAD value loaded from arch.conf
|
## Inital SKIP_UPLOAD value loaded from main.conf
|
||||||
SKIP_UPLOAD="${SKIP_UPLOAD}"
|
SKIP_UPLOAD="${SKIP_UPLOAD}"
|
||||||
TICKET=""
|
TICKET=""
|
||||||
while [[ "$TICKET" == "" ]]; do
|
while [[ "$TICKET" == "" ]]; do
|
||||||
|
|
@ -37,7 +37,7 @@ while [[ "$TICKET" == "" ]]; do
|
||||||
done
|
done
|
||||||
|
|
||||||
# Init
|
# Init
|
||||||
## Tautologies left to show which settings are coming from arch.conf
|
## Tautologies left to show which settings are coming from main.conf
|
||||||
DIAG_DATE="$(date "+%F_%H%M")"
|
DIAG_DATE="$(date "+%F_%H%M")"
|
||||||
DIAG_SERVER_AVAIL="False"
|
DIAG_SERVER_AVAIL="False"
|
||||||
DIAG_SERVER="${DIAG_SERVER}"
|
DIAG_SERVER="${DIAG_SERVER}"
|
||||||
|
|
@ -234,7 +234,7 @@ esac
|
||||||
if [[ "$TEST_CPU" == "False" ]] && \
|
if [[ "$TEST_CPU" == "False" ]] && \
|
||||||
[[ "$TEST_SMART" == "False" ]] && \
|
[[ "$TEST_SMART" == "False" ]] && \
|
||||||
[[ "$TEST_BADBLOCKS" == "False" ]]; then
|
[[ "$TEST_BADBLOCKS" == "False" ]]; then
|
||||||
echo -e "${YELLOW}Aborting HW diagnostics${CLEAR}"
|
echo -e "${YELLOW}Aborting HW Diagnostics${CLEAR}"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## WK HW diagnostics - Network
|
## Wizard Kit: HW Diagnostics - Network
|
||||||
|
|
||||||
function test_connection() {
|
function test_connection() {
|
||||||
cmd="a"
|
cmd="a"
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## HW diagnostics - Prime95
|
## Wizard Kit: HW Diagnostics - Prime95
|
||||||
|
|
||||||
function usage {
|
function usage {
|
||||||
echo "Usage: $0 log-dir"
|
echo "Usage: $0 log-dir"
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## WK HW diagnostics - Progress
|
## Wizard Kit: HW Diagnostics - Progress
|
||||||
|
|
||||||
# Loop forever
|
# Loop forever
|
||||||
while :; do
|
while :; do
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## WK HW diagnostics - Sensors
|
## Wizard Kit: HW Diagnostics - Sensors
|
||||||
|
|
||||||
LOG_DIR="$1"
|
LOG_DIR="$1"
|
||||||
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## Mount all volumes read-only
|
## Wizard Kit: Volume mount tool
|
||||||
|
|
||||||
# Mount all volumes
|
# Mount all volumes (read only)
|
||||||
echo "Mounting all volumes"
|
echo "Mounting all volumes"
|
||||||
regex="/dev/((h|s)d[a-z]|md)[0-9]+"
|
regex="/dev/((h|s)d[a-z]|md)[0-9]+"
|
||||||
for volume in $(inxi -Dopxx | grep -E "$regex" | sed -r "s#.*($regex).*#\1#" | sort); do
|
for volume in $(inxi -Dopxx | grep -E "$regex" | sed -r "s#.*($regex).*#\1#" | sort); do
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## Mount NAS backup shares
|
## Wizard Kit: Backup share mount tool
|
||||||
|
|
||||||
die () {
|
die () {
|
||||||
echo "$0:" "$@" >&2
|
echo "$0:" "$@" >&2
|
||||||
|
|
@ -8,12 +8,12 @@ die () {
|
||||||
}
|
}
|
||||||
|
|
||||||
# Load settings
|
# Load settings
|
||||||
if [[ -f "/run/archiso/bootmnt/arch/arch.conf" ]]; then
|
if [[ -f "/run/archiso/bootmnt/arch/main.conf" ]]; then
|
||||||
source "/run/archiso/bootmnt/arch/arch.conf" || \
|
source "/run/archiso/bootmnt/arch/main.conf" || \
|
||||||
die "ERROR: failed to load arch.conf (from /run/archiso/bootmnt/arch/)"
|
die "ERROR: failed to load main.conf (from /run/archiso/bootmnt/arch/)"
|
||||||
else
|
else
|
||||||
source "/usr/local/bin/arch.conf" || \
|
source "/usr/local/bin/main.conf" || \
|
||||||
die "ERROR: failed to load arch.conf (from /usr/local/bin/)"
|
die "ERROR: failed to load main.conf (from /usr/local/bin/)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Connect to a network
|
# Connect to a network
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
## Wizard Kit: MS Word content search tool
|
||||||
TMP_FILE="$(mktemp)"
|
TMP_FILE="$(mktemp)"
|
||||||
|
|
||||||
IFS=$'\n'
|
IFS=$'\n'
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
## Remount volume read-write
|
## Wizard Kit: Volume remount tool
|
||||||
|
|
||||||
if ! mount | grep -q "$1"; then
|
if ! mount | grep -q "$1"; then
|
||||||
echo "ERROR: Can't remount $1"
|
echo "ERROR: Can't remount $1"
|
||||||
|
|
@ -10,6 +10,7 @@ fi
|
||||||
|
|
||||||
DEVICE=$(mount | grep "$1" | cut -d' ' -f1)
|
DEVICE=$(mount | grep "$1" | cut -d' ' -f1)
|
||||||
|
|
||||||
|
# Remount read-write
|
||||||
echo "Remounting: $DEVICE"
|
echo "Remounting: $DEVICE"
|
||||||
udevil umount $DEVICE
|
udevil umount $DEVICE
|
||||||
if udevil mount $DEVICE; then
|
if udevil mount $DEVICE; then
|
||||||
|
|
@ -1,69 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
#
|
|
||||||
## Get connected to a network
|
|
||||||
|
|
||||||
# 1. Checks if already online; skips if so
|
|
||||||
# 2. If no wired devices are present then reload kernel modules
|
|
||||||
# 3. If wireless devices are present, and we're still offline, then connect to WiFi
|
|
||||||
|
|
||||||
die () {
|
|
||||||
echo "$0:" "$@" >&2
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
|
|
||||||
function test_connection() {
|
|
||||||
# Check for a valid private IP
|
|
||||||
if ip a | grep -Eq '10.[0-9]+.[0-9]+.[0-9]+'; then
|
|
||||||
return 0 # Class A
|
|
||||||
elif ip a | grep -Eq '172.(1[6-9]|2[0-9]|3[0-1]).[0-9]+.[0-9]+'; then
|
|
||||||
return 0 # Class B
|
|
||||||
elif ip a | grep -Eq '192.168.[0-9]+.[0-9]+'; then
|
|
||||||
return 0 # Class C
|
|
||||||
else
|
|
||||||
return 1 # Invalid private IP
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Load settings
|
|
||||||
if [[ -f "/run/archiso/bootmnt/arch/wifi.conf" ]]; then
|
|
||||||
source "/run/archiso/bootmnt/arch/wifi.conf" || \
|
|
||||||
die "ERROR: failed to load wifi.conf (from /run/archiso/bootmnt/arch/)"
|
|
||||||
else
|
|
||||||
source "/usr/local/bin/wifi.conf" || \
|
|
||||||
die "ERROR: failed to load wifi.conf (from /usr/local/bin/)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Init
|
|
||||||
WIFI_SSID="${WIFI_SSID}"
|
|
||||||
WIFI_PASSWORD="${WIFI_PASSWORD}"
|
|
||||||
|
|
||||||
# Connect to network
|
|
||||||
if ! test_connection; then
|
|
||||||
# LAN
|
|
||||||
if ! ip l | grep -Eq '[0-9]+: +en'; then
|
|
||||||
## Reload the tg3/broadcom driver (known fix for some Dell systems)
|
|
||||||
echo "No wired network adapters found; reloading drivers..."
|
|
||||||
sudo modprobe -r tg3
|
|
||||||
sudo modprobe broadcom
|
|
||||||
sudo modprobe tg3
|
|
||||||
sleep 5s
|
|
||||||
fi
|
|
||||||
|
|
||||||
# WiFi
|
|
||||||
if ip l | grep -Eq '[0-9]+: +wl'; then
|
|
||||||
## Skip if we're already connected (i.e. the code above worked)
|
|
||||||
if ! test_connection; then
|
|
||||||
echo "Attempting to connect to ${WIFI_SSID}..."
|
|
||||||
nmcli dev wifi connect "${WIFI_SSID}" password "${WIFI_PASSWORD}"
|
|
||||||
sleep 5s
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Done
|
|
||||||
if test_connection; then
|
|
||||||
exit 0
|
|
||||||
else
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
@ -1,2 +0,0 @@
|
||||||
# Wizard Kit: Settings - WiFi
|
|
||||||
|
|
||||||
Loading…
Reference in a new issue