Bash
#!/bin/bash
deskpi_daemon=deskpilite
deskpi_lite_svc=/storage/.config/system.d/$deskpi_daemon.service
# remove old service file
if [ -e $deskpi_lite_svc ]; then
sudo rm -f $deskpi_lite_svc
fi
# adding dtoverlay to enable dwc2 on host mode.
mount -o remount,rw /flash
sed -i '/dtoverlay=dwc2*/d' /flash/config.txt
sed -i '$a\dtoverlay=dwc2,dr_mode=host' /flash/config.txt
# install safe cut off power daemon.
mkdir -p /storage/deskpi
cd /storage/deskpi
# copy python script to /storage/deskpi
wget https://github.com/DeskPi-Team/deskpi_v1/raw/main/drivers/python/fan_control.py
wget https://github.com/DeskPi-Team/deskpi_v1/raw/main/drivers/python/safe_shutdown.py
wget https://github.com/DeskPi-Team/deskpi_v1/raw/main/drivers/python/safecutoffpower.py
# send signal to MCU before system shuting down.
echo "[Unit]" > $deskpi_lite_svc
echo "Description=DeskPi Lite Service" >> $deskpi_lite_svc
echo "Conflicts=reboot.target" >> $deskpi_lite_svc
echo "Before=halt.target shutdown.target poweroff.target" >> $deskpi_lite_svc
echo "DefaultDependencies=no" >> $deskpi_lite_svc
echo "StartLimitIntervalSec=60" >> $deskpi_lite_svc
echo "StartLimitBurst=5" >> $deskpi_lite_svc
echo "[Service]" >> $deskpi_lite_svc
echo "RootDirectory=/" >> $deskpi_lite_svc
echo "User=root" >> $deskpi_lite_svc
echo "Type=simple" >> $deskpi_lite_svc
echo "ExecStart=/usr/bin/python3 /storage/deskpi/safe_shutdown.py &" >> $deskpi_lite_svc
echo "RemainAfterExit=yes" >> $deskpi_lite_svc
echo "Restart=on-failure" >> $deskpi_lite_svc
echo "RestartSec=30" >> $deskpi_lite_svc
echo "[Install]" >> $deskpi_lite_svc
echo "WantedBy=multi-user.target" >> $deskpi_lite_svc
chown root:root $deskpi_lite_svc
chmod 644 $deskpi_lite_svc
systemctl daemon-reload
systemctl enable $deskpi_daemon.service
systemctl restart $deskpi_daemon.service
Display More
^ that's the install script adapted for LE quirks and locations .. no idea if it works or not.