]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Read user input properly in linux_install.sh for Gentoo (#4395)
authorKonstantin Đorđević <vomindoraan@gmail.com>
Wed, 26 Dec 2018 16:01:26 +0000 (17:01 +0100)
committerDrashna Jaelre <drashna@live.com>
Wed, 26 Dec 2018 16:01:26 +0000 (08:01 -0800)
* Change spaces to tabs on two lines

The rest of the file uses tabs

* Read user input in a non-terrible, non-hacky way

* Remove unnecessary tee call

* read -p is not POSIX

* Add missing $ to echo GENTOO_WARNING

* Replace non-POSIX echo -n with printf

* Use cd ... || exit 1 in case git clone fails

* Add missing sudo

Thanks @snortwolf

* Undo replacing tee with >>

util/linux_install.sh

index 70b389c0da542e3d6e6c571032b1a92fd8c8aec8..d6e6b86cdc4f746cedb4b402bef0186b5f509ab8 100755 (executable)
@@ -32,7 +32,7 @@ if grep ID /etc/os-release | grep -qE "fedora"; then
 elif grep ID /etc/os-release | grep -qE 'debian|ubuntu'; then
        DEBIAN_FRONTEND=noninteractive
        DEBCONF_NONINTERACTIVE_SEEN=true
-        export DEBIAN_FRONTEND DEBCONF_NONINTERACTIVE_SEEN
+       export DEBIAN_FRONTEND DEBCONF_NONINTERACTIVE_SEEN
        sudo apt-get update
        sudo apt-get install \
                build-essential \
@@ -70,20 +70,18 @@ elif grep ID /etc/os-release | grep -q 'arch\|manjaro'; then
                wget \
                zip
        git clone https://aur.archlinux.org/dfu-programmer.git /tmp/dfu-programmer
-       cd /tmp/dfu-programmer
+       cd /tmp/dfu-programmer || exit 1
        makepkg -sic
        rm -rf /tmp/dfu-programmer/
 
 elif grep ID /etc/os-release | grep -q gentoo; then
-       echo GENTOO_WARNING | fmt
-       echo -n "Proceed (y/N)? "
-       old_stty_cfg=$(stty -g)
-       stty raw -echo
-       answer=$( while ! head -c 1 | grep -i '[ny]' ;do true ;done )
-       stty $old_stty_cfg
-       if echo "$answer" | grep -iq "^y" ;then
+       echo "$GENTOO_WARNING" | fmt
+       printf "\nProceed (y/N)? "
+       read -r answer
+       if echo "$answer" | grep -iq "^y"; then
                sudo touch /etc/portage/package.use/qmkfirmware
-               echo "sys-devel/gcc multilib" | sudo tee --append /etc/portage/package.use/qmkfirmware > /dev/null
+               # tee is used here since sudo doesn't apply to >>
+               echo "sys-devel/gcc multilib" | sudo tee --append /etc/portage/package.use/qmkfirmware >/dev/null
                sudo emerge -auN \
                        app-arch/unzip \
                        app-arch/zip \