diff --git a/advanced/Scripts/setupLCD.sh b/advanced/Scripts/setupLCD.sh index 00e3a3f8..df2be704 100644 --- a/advanced/Scripts/setupLCD.sh +++ b/advanced/Scripts/setupLCD.sh @@ -10,12 +10,25 @@ # the Free Software Foundation, either version 2 of the License, or # (at your option) any later version. -# Set up the LCD screen based on Adafruits instuctions -curl -SLs https://apt.adafruit.com/add-pin | sudo bash -sudo apt-get -y install raspberrypi-bootloader -sudo apt-get -y install adafruit-pitft-helper +############ FUNCTIONS ########### +# Run this script as root or under sudo +echo ":::" +if [[ $EUID -eq 0 ]];then + echo "::: You are root." +else + echo "::: sudo will be used." + # Check if it is actually installed + # If it isn't, exit because the install cannot complete + if [[ $(dpkg-query -s sudo) ]];then + export SUDO="sudo" + else + echo "::: Please install sudo or run this script as root." + exit 1 + fi +fi -# Borrowed from somewhere. Will update when I find it. +# Borrowed from adafruit-pitft-helper < borrowed from raspi-config +# https://github.com/adafruit/Adafruit-PiTFT-Helper/blob/master/adafruit-pitft-helper#L324-L334 getInitSys() { if command -v systemctl > /dev/null && systemctl | grep -q '\-\.mount'; then SYSTEMD=1 @@ -27,7 +40,8 @@ getInitSys() { fi } -# Borrowed from somewhere. Will update when I find it. +# Borrowed from adafruit-pitft-helper: +# https://github.com/adafruit/Adafruit-PiTFT-Helper/blob/master/adafruit-pitft-helper#L274-L285 autoLoginPiToConsole() { if [ -e /etc/init.d/lightdm ]; then if [ $SYSTEMD -eq 1 ]; then @@ -40,14 +54,26 @@ autoLoginPiToConsole() { fi } - -getInitSys - +######### SCRIPT ########### # Set pi to log in automatically +getInitSys autoLoginPiToConsole # Set chronomter to run automatically when pi logs in -$SUDO echo /usr/local/bin/chronometer.sh >> /home/pi/.bashrc +echo /usr/local/bin/chronometer.sh >> /home/pi/.bashrc +# OR +#$SUDO echo /usr/local/bin/chronometer.sh >> /etc/profile + +# Set up the LCD screen based on Adafruits instuctions: +# https://learn.adafruit.com/adafruit-pitft-28-inch-resistive-touchscreen-display-raspberry-pi/easy-install +curl -SLs https://apt.adafruit.com/add-pin | $SUDO bash +$SUDO apt-get -y install raspberrypi-bootloader +$SUDO apt-get -y install adafruit-pitft-helper +$SUDO adafruit-pitft-helper -t 28r + +# Download the cmdline.txt file that prevents the screen from going blank after a period of time +$SUDO mv /boot/cmdline.txt /boot/cmdline.orig +$SUDO curl -o /boot/cmdline.txt https://raw.githubusercontent.com/pi-hole/pi-hole/master/advanced/cmdline.txt # Back up the original file and download the new one $SUDO mv /etc/default/console-setup /etc/default/console-setup.orig @@ -56,5 +82,8 @@ $SUDO curl -o /etc/default/console-setup https://raw.githubusercontent.com/pi-ho # Instantly apply the font change to the LCD screen $SUDO setupcon -# Start chronometer after the settings are applues -$SUDO /usr/local/bin/chronometer.sh +$SUDO reboot + +# Start showing the stats on the screen by running the command on another tty: +# http://unix.stackexchange.com/questions/170063/start-a-process-on-a-different-tty +#setsid sh -c 'exec /usr/local/bin/chronometer.sh <> /dev/tty1 >&0 2>&1'