disable network & factory test when USB is mounted

make menu wrap up
add sapce berfore each entry
center restarting notif

Signed-off-by: Michel-FK <michel.stempin@funkey-project.com>
This commit is contained in:
Michel-FK 2020-11-01 16:34:21 +01:00
parent 079ca21426
commit ed8902c09a

View File

@ -2,6 +2,12 @@
source /usr/local/lib/utils source /usr/local/lib/utils
# Get a key
getkey() {
local key=$(dd if=/dev/input/event0 bs=32 count=1 status=none | xxd -p -c 32 | cut -b 21-26)
echo ${key}
}
# Display meny item # Display meny item
menu_display () { menu_display () {
local entry=${1} local entry=${1}
@ -13,54 +19,54 @@ menu_display () {
# USB mount/unmount # USB mount/unmount
mount | grep -q /dev/mmcblk0p3 mount | grep -q /dev/mmcblk0p3
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
message="USB mount" message=" USB mount"
else else
message="USB unmount" message=" USB unmount"
fi fi
;; ;;
1) 1)
# USB check # USB check
message="USB check" message=" USB check"
;; ;;
2) 2)
# USB format # USB format
message="USB format" message=" USB format"
;; ;;
3) 3)
# Network enable/disable # Network enable/disable
if [ -e /mnt/usbnet ]; then if [ -e /mnt/usbnet ]; then
message="Network disable" message=" Network disable"
else else
message="Network enable" message=" Network enable"
fi fi
;; ;;
4) 4)
# QR code # QR code
message="QR code" message=" QR code"
;; ;;
5) 5)
# Factory tests enable/disable # Factory tests enable/disable
if [ -e /mnt/.assembly_tests ]; then if [ -e /mnt/.assembly_tests ]; then
message="Factory tests disable" message=" Factory tests disable"
else else
message="Factory tests enable" message=" Factory tests enable"
fi fi
;; ;;
6) 6)
# Exit Recovery # Exit Recovery
message="Exit Recovery" message=" Exit Recovery"
;; ;;
esac esac
notif "${message}" notif "${message}"
@ -81,7 +87,7 @@ menu_run () {
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
notif "${message}...^Cannot mount USB!" notif "${message}...^Cannot mount USB!"
else else
message="USB unmount" message=" USB unmount"
notif "${message}" notif "${message}"
fi fi
else else
@ -97,7 +103,7 @@ menu_run () {
break break
fi fi
done done
message="USB mount" message=" USB mount"
notif "${message}" notif "${message}"
fi fi
fi fi
@ -133,15 +139,30 @@ menu_run () {
# USB format # USB format
mount | grep -q /dev/mmcblk0p3 mount | grep -q /dev/mmcblk0p3
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
notif "${message}..." notif "${message}...^Press A to confirm"
umount /mnt && while true; do
mkfs.vfat /dev/mmcblk0p3 && case $(getkey) in
mount /mnt 1e0001|1e0002)
if [ $? -ne 0 ]; then umount /mnt &&
notif "${message}...^Cannot format USB!" mkfs.vfat /dev/mmcblk0p3 &&
else mount /mnt
notif "${message} done" if [ $? -ne 0 ]; then
fi notif "${message}...^Cannot format USB!"
else
notif "${message} done"
fi
break
;;
1e0000)
;;
*)
notif "${message}...^Aborted!"
break
;;
esac
done
else else
notif "${message}...^Cannot format USB when mounted!" notif "${message}...^Cannot format USB when mounted!"
fi fi
@ -150,14 +171,19 @@ menu_run () {
3) 3)
# Network enable/disable # Network enable/disable
if [ -e /mnt/usbnet ]; then mount | grep -q /dev/mmcblk0p3
rm -f /mnt/usbnet if [ $? -eq 0 ]; then
message="Network enable" if [ -e /mnt/usbnet ]; then
rm -f /mnt/usbnet
message=" Network enable"
else
touch /mnt/usbnet
message=" Network disable"
fi
notif "${message}"
else else
touch /mnt/usbnet notif "${message}...^Cannot change net if mounted!"
message="Network disable"
fi fi
notif "${message}"
;; ;;
4) 4)
@ -170,18 +196,23 @@ menu_run () {
5) 5)
# Factory tests enable/disable # Factory tests enable/disable
if [ -e /mnt/.assembly_tests ]; then mount | grep -q /dev/mmcblk0p3
rm -f /mnt/.assembly_tests if [ $? -eq 0 ]; then
message="Factory tests enable" if [ -e /mnt/.assembly_tests ]; then
rm -f /mnt/.assembly_tests
message=" Factory tests enable"
else
touch /mnt/.assembly_tests
message=" Factory tests disable"
fi
notif "${message}"
else else
touch /mnt/.assembly_tests notif "${message}...^Cannot test if mounted!"
message="Factory tests disable"
fi fi
notif "${message}"
;; ;;
6) 6)
notif "^^^^^^^^ RESTARTING...^^^^^^^^" notif "^^^^^^^^ RESTARTING...^^^^^^^^"
normal_mode normal_mode
;; ;;
esac esac
@ -195,13 +226,15 @@ menu_display ${entry}
while true; do while true; do
# Get key events # Get key events
key=$(dd if=/dev/input/event0 bs=32 count=1 status=none | xxd -p -c 32 | cut -b 21-26) case $(getkey) in
case ${key} in
160001|160002) 160001|160002)
# Key UP pressed or repeat # Key UP pressed or repeat
let entry=${entry}-1 let entry=${entry}-1
let entry=${entry}%7 let entry=${entry}%7
if [ ${entry} -eq -1 ]; then
entry=6
fi
menu_display ${entry} menu_display ${entry}
;; ;;