diff --git a/pico-load.sh b/pico-load.sh index c9d1d4c..6a0cff5 100755 --- a/pico-load.sh +++ b/pico-load.sh @@ -1,17 +1,36 @@ #!/bin/bash -if [ "$(dpkg -l | awk '/ubuntu-desktop/ {print }'|wc -l)" -ge 1 ]; then - while [ ! -f /media/$USER/RPI-RP2/INFO_UF2.TXT ]; do - sleep 1 - done - set -e - cargo run --release +if [ -f /etc/os-release ]; then + . /etc/os-release + OS=$NAME else - sudo umount /mnt/usb - while [ ! -f /mnt/usb/INFO_UF2.TXT ]; do - sudo mount /dev/sda1 /mnt/usb -o umask=000 - sleep 1 - done - set -e - cargo run --release - sudo umount /mnt/usb + OS="none" +fi + +if [ "$OS" == "Ubuntu" ]; then + if [ "$(dpkg -l | awk '/ubuntu-desktop/ {print }' | wc -l)" -ge 1 ]; then + while [ ! -f /media/$USER/RPI-RP2/INFO_UF2.TXT ]; do + sleep 1 + done + set -e + cargo run --release + else + sudo umount /mnt/usb + while [ ! -f /mnt/usb/INFO_UF2.TXT ]; do + sudo mount /dev/sda1 /mnt/usb -o umask=000 + sleep 1 + done + set -e + cargo run --release + sudo umount /mnt/usb + fi +elif [ "$OS" == "Arch Linux" ]; then + sudo umount /mnt/usb + while [ ! -f /mnt/usb/INFO_UF2.TXT ]; do + sudo mkdir -p /mnt/usb + sudo mount /dev/sda1 /mnt/usb -o umask=000 + sleep 1 + done + set -e + cargo run --release + sudo umount /mnt/usb fi