mirror of
https://github.com/linuxboot/heads.git
synced 2024-12-19 04:57:55 +00:00
*gui.sh: move common ops to gui_functions
Move code duplicated across several GUI scripts into a common gui_functions file and include/use that. Signed-off-by: Matt DeVillier <matt.devillier@puri.sm>
This commit is contained in:
parent
268d9d64ac
commit
f7c4cae903
@ -2,55 +2,9 @@
|
|||||||
#
|
#
|
||||||
set -e -o pipefail
|
set -e -o pipefail
|
||||||
. /etc/functions
|
. /etc/functions
|
||||||
|
. /etc/gui_functions
|
||||||
. /tmp/config
|
. /tmp/config
|
||||||
|
|
||||||
file_selector() {
|
|
||||||
FILE=""
|
|
||||||
FILE_LIST=$1
|
|
||||||
MENU_MSG=${2:-"Choose the file"}
|
|
||||||
MENU_TITLE=${3:-"Select your File"}
|
|
||||||
# create file menu options
|
|
||||||
if [ `cat "$FILE_LIST" | wc -l` -gt 0 ]; then
|
|
||||||
option=""
|
|
||||||
while [ -z "$option" ]
|
|
||||||
do
|
|
||||||
MENU_OPTIONS=""
|
|
||||||
n=0
|
|
||||||
while read option
|
|
||||||
do
|
|
||||||
n=`expr $n + 1`
|
|
||||||
option=$(echo $option | tr " " "_")
|
|
||||||
MENU_OPTIONS="$MENU_OPTIONS $n ${option}"
|
|
||||||
done < $FILE_LIST
|
|
||||||
|
|
||||||
MENU_OPTIONS="$MENU_OPTIONS a Abort"
|
|
||||||
whiptail --clear --title "${MENU_TITLE}" \
|
|
||||||
--menu "${MENU_MSG} [1-$n, a to abort]:" 20 120 8 \
|
|
||||||
-- $MENU_OPTIONS \
|
|
||||||
2>/tmp/whiptail || die "Aborting"
|
|
||||||
|
|
||||||
option_index=$(cat /tmp/whiptail)
|
|
||||||
|
|
||||||
if [ "$option_index" = "a" ]; then
|
|
||||||
option="a"
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
option=`head -n $option_index $FILE_LIST | tail -1`
|
|
||||||
if [ "$option" == "a" ]; then
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if [ -n "$option" ]; then
|
|
||||||
FILE=$option
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
whiptail $CONFIG_ERROR_BG_COLOR --title 'ERROR: No Files Found' \
|
|
||||||
--msgbox "No Files found matching the pattern. Aborting." 16 60
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
param=$1
|
param=$1
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
|
@ -2,70 +2,9 @@
|
|||||||
#
|
#
|
||||||
set -e -o pipefail
|
set -e -o pipefail
|
||||||
. /etc/functions
|
. /etc/functions
|
||||||
|
. /etc/gui_functions
|
||||||
. /tmp/config
|
. /tmp/config
|
||||||
|
|
||||||
mount_usb(){
|
|
||||||
# Mount the USB boot device
|
|
||||||
if ! grep -q /media /proc/mounts ; then
|
|
||||||
mount-usb && USB_FAILED=0 || USB_FAILED=1
|
|
||||||
if [ $USB_FAILED -ne 0 ]; then
|
|
||||||
whiptail --title 'USB Drive Missing' \
|
|
||||||
--msgbox "Insert your USB drive and press Enter to continue." 16 60
|
|
||||||
mount-usb && USB_FAILED=0 || USB_FAILED=1
|
|
||||||
if [ $USB_FAILED -ne 0 ]; then
|
|
||||||
whiptail $CONFIG_ERROR_BG_COLOR --title 'ERROR: Mounting /media Failed' \
|
|
||||||
--msgbox "Unable to mount USB device" 16 60
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
file_selector() {
|
|
||||||
FILE=""
|
|
||||||
FILE_LIST=$1
|
|
||||||
MENU_MSG=${2:-"Choose the file"}
|
|
||||||
# create file menu options
|
|
||||||
if [ `cat "$FILE_LIST" | wc -l` -gt 0 ]; then
|
|
||||||
option=""
|
|
||||||
while [ -z "$option" ]
|
|
||||||
do
|
|
||||||
MENU_OPTIONS=""
|
|
||||||
n=0
|
|
||||||
while read option
|
|
||||||
do
|
|
||||||
n=`expr $n + 1`
|
|
||||||
option=$(echo $option | tr " " "_")
|
|
||||||
MENU_OPTIONS="$MENU_OPTIONS $n ${option}"
|
|
||||||
done < $FILE_LIST
|
|
||||||
|
|
||||||
MENU_OPTIONS="$MENU_OPTIONS a Abort"
|
|
||||||
whiptail --clear --title "Select your File" \
|
|
||||||
--menu "${MENU_MSG} [1-$n, a to abort]:" 20 120 8 \
|
|
||||||
-- $MENU_OPTIONS \
|
|
||||||
2>/tmp/whiptail || die "Aborting"
|
|
||||||
|
|
||||||
option_index=$(cat /tmp/whiptail)
|
|
||||||
|
|
||||||
if [ "$option_index" = "a" ]; then
|
|
||||||
option="a"
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
option=`head -n $option_index $FILE_LIST | tail -1`
|
|
||||||
if [ "$option" == "a" ]; then
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if [ -n "$option" ]; then
|
|
||||||
FILE=$option
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
whiptail $CONFIG_ERROR_BG_COLOR --title 'ERROR: No Files Found' \
|
|
||||||
--msgbox "No Files found matching the pattern. Aborting." 16 60
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
unset menu_choice
|
unset menu_choice
|
||||||
whiptail --clear --title "Firmware Management Menu" \
|
whiptail --clear --title "Firmware Management Menu" \
|
||||||
|
@ -2,69 +2,9 @@
|
|||||||
#
|
#
|
||||||
set -e -o pipefail
|
set -e -o pipefail
|
||||||
. /etc/functions
|
. /etc/functions
|
||||||
|
. /etc/gui_functions
|
||||||
. /tmp/config
|
. /tmp/config
|
||||||
|
|
||||||
mount_usb(){
|
|
||||||
# Mount the USB boot device
|
|
||||||
if ! grep -q /media /proc/mounts ; then
|
|
||||||
mount-usb && USB_FAILED=0 || USB_FAILED=1
|
|
||||||
if [ $USB_FAILED -ne 0 ]; then
|
|
||||||
whiptail --title 'USB Drive Missing' \
|
|
||||||
--msgbox "Insert your USB drive and press Enter to continue." 16 60
|
|
||||||
mount-usb && USB_FAILED=0 || USB_FAILED=1
|
|
||||||
if [ $USB_FAILED -ne 0 ]; then
|
|
||||||
whiptail $CONFIG_ERROR_BG_COLOR --title 'ERROR: Mounting /media Failed' \
|
|
||||||
--msgbox "Unable to mount USB device" 16 60
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
file_selector() {
|
|
||||||
FILE=""
|
|
||||||
FILE_LIST=$1
|
|
||||||
MENU_MSG=${2:-"Choose the file"}
|
|
||||||
# create file menu options
|
|
||||||
if [ `cat "$FILE_LIST" | wc -l` -gt 0 ]; then
|
|
||||||
option=""
|
|
||||||
while [ -z "$option" ]
|
|
||||||
do
|
|
||||||
MENU_OPTIONS=""
|
|
||||||
n=0
|
|
||||||
while read option
|
|
||||||
do
|
|
||||||
n=`expr $n + 1`
|
|
||||||
option=$(echo $option | tr " " "_")
|
|
||||||
MENU_OPTIONS="$MENU_OPTIONS $n ${option}"
|
|
||||||
done < $FILE_LIST
|
|
||||||
|
|
||||||
MENU_OPTIONS="$MENU_OPTIONS a Abort"
|
|
||||||
whiptail --clear --title "Select your File" \
|
|
||||||
--menu "${MENU_MSG} [1-$n, a to abort]:" 20 120 8 \
|
|
||||||
-- $MENU_OPTIONS \
|
|
||||||
2>/tmp/whiptail || die "Aborting"
|
|
||||||
|
|
||||||
option_index=$(cat /tmp/whiptail)
|
|
||||||
|
|
||||||
if [ "$option_index" = "a" ]; then
|
|
||||||
option="a"
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
option=`head -n $option_index $FILE_LIST | tail -1`
|
|
||||||
if [ "$option" == "a" ]; then
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
if [ -n "$option" ]; then
|
|
||||||
FILE=$option
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
whiptail $CONFIG_ERROR_BG_COLOR --title 'ERROR: No Files Found' \
|
|
||||||
--msgbox "No Files found matching the pattern. Aborting." 16 60
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
gpg_flash_rom() {
|
gpg_flash_rom() {
|
||||||
|
|
||||||
if [ "$1" = "replace" ]; then
|
if [ "$1" = "replace" ]; then
|
||||||
|
68
initrd/etc/gui_functions
Executable file
68
initrd/etc/gui_functions
Executable file
@ -0,0 +1,68 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Shell functions for common operations using fbwhiptail
|
||||||
|
|
||||||
|
mount_usb()
|
||||||
|
{
|
||||||
|
# Mount the USB boot device
|
||||||
|
if ! grep -q /media /proc/mounts ; then
|
||||||
|
mount-usb && USB_FAILED=0 || USB_FAILED=1
|
||||||
|
if [ $USB_FAILED -ne 0 ]; then
|
||||||
|
whiptail --title 'USB Drive Missing' \
|
||||||
|
--msgbox "Insert your USB drive and press Enter to continue." 16 60
|
||||||
|
mount-usb && USB_FAILED=0 || USB_FAILED=1
|
||||||
|
if [ $USB_FAILED -ne 0 ]; then
|
||||||
|
whiptail $CONFIG_ERROR_BG_COLOR --title 'ERROR: Mounting /media Failed' \
|
||||||
|
--msgbox "Unable to mount USB device" 16 60
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
file_selector()
|
||||||
|
{
|
||||||
|
FILE=""
|
||||||
|
FILE_LIST=$1
|
||||||
|
MENU_MSG=${2:-"Choose the file"}
|
||||||
|
MENU_TITLE=${3:-"Select your File"}
|
||||||
|
|
||||||
|
# create file menu options
|
||||||
|
if [ `cat "$FILE_LIST" | wc -l` -gt 0 ]; then
|
||||||
|
option=""
|
||||||
|
while [ -z "$option" ]
|
||||||
|
do
|
||||||
|
MENU_OPTIONS=""
|
||||||
|
n=0
|
||||||
|
while read option
|
||||||
|
do
|
||||||
|
n=`expr $n + 1`
|
||||||
|
option=$(echo $option | tr " " "_")
|
||||||
|
MENU_OPTIONS="$MENU_OPTIONS $n ${option}"
|
||||||
|
done < $FILE_LIST
|
||||||
|
|
||||||
|
MENU_OPTIONS="$MENU_OPTIONS a Abort"
|
||||||
|
whiptail --clear --title "${MENU_TITLE}" \
|
||||||
|
--menu "${MENU_MSG} [1-$n, a to abort]:" 20 120 8 \
|
||||||
|
-- $MENU_OPTIONS \
|
||||||
|
2>/tmp/whiptail || die "Aborting"
|
||||||
|
|
||||||
|
option_index=$(cat /tmp/whiptail)
|
||||||
|
|
||||||
|
if [ "$option_index" = "a" ]; then
|
||||||
|
option="a"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
option=`head -n $option_index $FILE_LIST | tail -1`
|
||||||
|
if [ "$option" == "a" ]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ -n "$option" ]; then
|
||||||
|
FILE=$option
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
whiptail $CONFIG_ERROR_BG_COLOR --title 'ERROR: No Files Found' \
|
||||||
|
--msgbox "No Files found matching the pattern. Aborting." 16 60
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user