#!/bin/sh # jessie to stretch ## modify sources echo "deb http://mirrordirector.raspbian.org/raspbian/ stretch main contrib non-free rpi # Uncomment line below then 'apt-get update' to enable 'apt-get source' #deb-src http://archive.raspbian.org/raspbian/ stretch main contrib non-free rpi" | sudo tee /etc/apt/sources.list echo "deb http://archive.raspberrypi.org/debian/ stretch main ui # Uncomment line below then 'apt-get update' to enable 'apt-get source' #deb-src http://archive.raspberrypi.org/debian/ stretch main ui" | sudo tee /etc/apt/sources.list.d/raspi.list #sudo sed -i 's/jessie/stretch/g' /etc/apt/sources.list #sudo sed -i 's/jessie/stretch/g' /etc/apt/sources.list.d/raspi.list sudo sed -i 's/jessie/stretch/g' /etc/apt/sources.list.d/nodesource.list sudo rm /etc/apt/sources.list.d/subogero.list ## apt config echo "Acquire::Retries \"1000\"; Acquire::http::Timeout \"30\"; Acquire::ftp::Timeout \"30\";" | sudo tee /etc/apt/apt.conf.d/99timeout # echo " # # disable ipv6 # net.ipv6.conf.all.disable_ipv6 = 1 # net.ipv6.conf.default.disable_ipv6 = 1 # net.ipv6.conf.lo.disable_ipv6 = 1 # " | sudo tee -a /etc/sysctl.conf # # sudo sysctl -p ## fix upgrade issue sudo dpkg --configure -a --force-confdef --force-confnew || exit 1 ## do upgrade sudo apt-get update sudo apt-get -y autoremove echo 'libc6 libraries/restart-without-asking boolean true' | sudo debconf-set-selections sudo env DEBIAN_FRONTEND=noninteractive APT_LISTCHANGES_FRONTEND=none apt-get dist-upgrade -f -y -q -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confnew' || exit 1 sudo apt-get install -y -q fonts-droid-fallback || exit 1 ## clean sudo apt-get -y -q autoremove # remove unused / conflicts dependencies sudo apt-get purge -y -q ntp lxde-core lxappearance lxde-common lxsession lxpanel* firefox-esr mplayer2 pulseaudio* supervisor # pi-gen pooliot modifs sudo apt-get purge -y -q ed ncdu build-essential manpages-dev gdb pkg-config python-rpi.gpio v4l-utils \ luajit nfs-common usbutils libraspberrypi-dev libraspberrypi-doc libfreetype6-dev pi-bluetooth scrot sudo rm /etc/systemd/system/getty@tty1.service.d/noclear.conf sudo cp /etc/wpa_supplicant/ifupdown.sh /etc/ifplugd/action.d/ifupdown sudo apt-get -y -q autoremove # update ## sudo apt-get update ## sudo apt-get install dirmngr debian-keyring debian-archive-keyring # nodejs curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - echo 'deb https://deb.nodesource.com/node_8.x stretch main' | sudo tee /etc/apt/sources.list.d/nodesource.list echo 'deb-src https://deb.nodesource.com/node_8.x stretch main' | sudo tee -a /etc/apt/sources.list.d/nodesource.list # pooliot sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0277F0B87A84E0BE echo 'deb http://apt.pooliot.net stable main' | sudo tee /etc/apt/sources.list.d/pooliot-client.list # update sudo apt-get update # install dependencies sudo apt-get install -y -q wpasupplicant wireless-tools firmware-atheros firmware-brcm80211 firmware-libertas firmware-misc-nonfree firmware-realtek \ raspberrypi-net-mods dhcpcd5 net-tools \ policykit-1 unattended-upgrades \ rpi-pooliot-client pooliot-client || exit 1 sudo apt-get install --no-install-recommends -y -q \ xserver-xorg-video-fbdev xserver-xorg xinit xserver-xorg-video-fbturbo \ libgl1-mesa-dri \ rpi-pooliot-chromium ffmpeg \ fonts-droid-fallback \ fonts-liberation2 \ pooliot-plymouth-theme \ rpi-pooliot-client-display pooliot-client-display || exit 1 sudo apt-get install --no-install-recommends -y -q \ gstreamer1.0-x gstreamer1.0-omx gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-alsa gstreamer1.0-libav # config sudo sed /etc/lightdm/lightdm.conf -i -e "s/^\(#\|\)autologin-user=.*/autologin-user=pi/" # uninstall sudo rm /etc/systemd/system/pooliot-client.service sudo mv /etc/pooliot-client/config /etc/default/pooliot-client if [ -f /usr/share/pooliot-client/bin/run ]; then sudo npm uninstall -g pooliot-client sudo systemctl enable pooliot-client fi echo "done, you should reboot now"