kvs-linuxmint-dloadx/wine_serial_fix.sh

42 lines
940 B
Bash
Executable File

#!/bin/bash
USERNAME="$1" # Provided by service file
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root."
exit 1
fi
if [ -z "$1" ]; then
echo "No arguments were supplied."
exit 1
fi
function doTheThang
{
# Wait for USB device to initialize
sleep 1
# TTY is empty if no serial device is detected
TTY=$(setserial -g /dev/ttyUSB[0-9] | awk -F"," '{print $1}')
if [ ! -z "$TTY" ]; then
echo -e "\e[1;32mUsing serial device: $TTY\e[0m"
ln -sfn $TTY /home/$USERNAME/.wine/dosdevices/com1 &&
chown $USERNAME /home/$USERNAME/.wine/dosdevices/com1 &&
ls -l /home/$USERNAME/.wine/dosdevices/ | grep $TTY
else
echo -e "\e[1;31mNo serial device\e[0m"
fi
}
doTheThang
LSUSB=$(lsusb)
while :
do
if [ "$LSUSB" != "$(lsusb)" ]; then
LSUSB=$(lsusb)
echo "=======USB Change detected======="
doTheThang
fi
sleep 1
done