UPDATE NOTIFIER runit

Version 3 for runit

UPDATE-NOTIFIER–runit-all

….. Make a /opt/UPDATE folder

sudo mkdir -p /opt/UPDATE

….. Copy files a.txt, b.txt, PHASE2, update-check, update-check-a23 to /opt/UPDATE

sudo cp a.txt b.txt PHASE2 UPDATE update-check update-check-a23 /opt/UPDATE

…. then need to make a runit service

sudo mkdir /etc/sv/update

…. create script

gksu geany /etc/sv/update/run

… which contens is

#!/bin/bash
exec chpst -u root /opt/UPDATE/update-check-a23 -m 64

…. make it executable

sudo chmod +x /etc/sv/update/run

… link to /etc/service

sudo ln -s /etc/sv/update /etc/service/update

…. Add $HOME/.desktop-session/startup a line

cd /opt/UPDATE && ./PHASE2 &

…. to edit the file

geany $HOME/.desktop-session/startup

###############################################

Files:

a.txt is an empty file

b.txt

apt list

PHASE2

#!/bin/bash
# RJP 21.6.2023
A=$(grep -o 'apt list' /tmp/a.txt)
B=$(grep -o 'apt list' /tmp/b.txt)
sleep 100
if [ "$A" = "$B" ]
sleep 180
then
cd /opt/UPDATE && ./UPDATE
else
sleep 5
fi

update-check-a23

#!/bin/bash
##
## check updates every 600 minutes
for (( ; ; ))
do
cp /opt/UPDATE/a.txt /tmp
cp /opt/UPDATE/b.txt /tmp
chmod 644 /tmp/b.txt
sleep 60
apt update > /tmp/a.txt
chmod 644 /tmp/a.txt
sleep 36000
done

UPDATE

#!/bin/bash
#
# RJP 16.6.2023
#
#!/bin/bash
LIST=$(apt-get --simulate upgrade)
#
export DISPLAY=:0.0
echo "$LIST" | yad --list --title "Search Results" --width=1000 --height=500 --text "INFORMATION" --column "AVAILABLE UPDATES" --button=gtk-ok:1
yad --text="Would you like to install updates?" --title="UPDATER"
if [ $? = 0 ];
then
x-terminal-emulator -e /bin/bash -c "sudo apt update && sudo apt upgrade && yad --center --borders=5 --width=400 --text-align=center --button=gtk-ok:1 --title='Update Complete' --buttons-layout=center"
else exit 0
fi