#!/bin/bash sudo ./system_backup.sh if [ -f /etc/X11/xorg.conf.d/40-libinput.conf ]; then sudo rm -rf /etc/X11/xorg.conf.d/40-libinput.conf fi if [ ! -d /etc/X11/xorg.conf.d ]; then sudo mkdir -p /etc/X11/xorg.conf.d fi sudo cp ./usr/mhs35-overlay.dtb /boot/overlays/ sudo cp ./usr/mhs35-overlay.dtb /boot/overlays/mhs35.dtbo sudo cp -rf ./boot/config-nomal.txt ./boot/config.txt.bak sudo echo "hdmi_force_hotplug=1" >> ./boot/config.txt.bak sudo echo "dtparam=i2c_arm=on" >> ./boot/config.txt.bak sudo echo "dtparam=spi=on" >> ./boot/config.txt.bak sudo echo "enable_uart=1" >> ./boot/config.txt.bak sudo echo "dtoverlay=mhs35:rotate=90" >> ./boot/config.txt.bak sudo echo "hdmi_group=2" >> ./boot/config.txt.bak sudo echo "hdmi_mode=1" >> ./boot/config.txt.bak sudo echo "hdmi_mode=87" >> ./boot/config.txt.bak sudo echo "hdmi_cvt 480 320 60 6 0 0 0" >> ./boot/config.txt.bak sudo echo "hdmi_drive=2" >> ./boot/config.txt.bak sudo cp -rf ./boot/config.txt.bak /boot/config.txt sudo cp -rf ./usr/99-calibration.conf-mhs35-90 /etc/X11/xorg.conf.d/99-calibration.conf sudo cp -rf ./usr/99-fbturbo.conf /usr/share/X11/xorg.conf.d/99-fbturbo.conf if [ -b /dev/mmcblk0p7 ]; then sudo cp ./usr/cmdline.txt-noobs /boot/cmdline.txt else sudo cp ./usr/cmdline.txt /boot/ fi sudo cp ./usr/inittab /etc/ #sudo cp ./boot/config-mhs35.txt /boot/config.txt sudo touch ./.have_installed echo "gpio:resistance:mhs35:90:480:320" > ./.have_installed #FBCP install wget --spider -q -o /dev/null --tries=1 -T 3 https://github.com if [ $? -eq 0 ]; then sudo cp -rf ./usr/99-fbturbo-fbcp.conf /usr/share/X11/xorg.conf.d/99-fbturbo.conf sudo cp -rf ./etc/rc.local /etc/rc.local sudo apt-get install git cmake -y 2> error_output.txt result=`cat ./error_output.txt` echo -e "\033[31m$result\033[0m" grep -q "^E:" ./error_output.txt && exit sudo rm -rf rpi-fbcp sudo git clone https://github.com/tasanakorn/rpi-fbcp sudo mkdir ./rpi-fbcp/build cd ./rpi-fbcp/build/ sudo cmake .. sudo make sudo install fbcp /usr/local/bin/fbcp cd - > /dev/null fi #evdev install nodeplatform=`uname -n` kernel=`uname -r` version=`uname -v` if test "$nodeplatform" = "raspberrypi";then echo "this is raspberrypi kernel" version=${version%% *} version=${version#*#} echo $version if test $version -lt 970;then echo "reboot" else echo "need to update touch configuration" sudo dpkg -i -B ./xserver-xorg-input-evdev_2.10.5-1_armhf.deb 2> error_output.txt #sudo apt-get install xserver-xorg-input-evdev 2> error_output.txt result=`cat ./error_output.txt` echo -e "\033[31m$result\033[0m" grep -q "error:" ./error_output.txt && exit sudo cp -rf /usr/share/X11/xorg.conf.d/10-evdev.conf /usr/share/X11/xorg.conf.d/45-evdev.conf #echo "reboot" fi else echo "this is not raspberrypi kernel, no need to update touch configure, reboot" fi sudo sync sudo sync sleep 1 if [ $# -eq 1 ]; then sudo ./rotate.sh $1 elif [ $# -gt 1 ]; then echo "Too many parameters" fi echo "reboot now" sudo reboot