Well I think something is missing here as update doesn’t actually update anything other than the repositories on file.
apt-get upgrade is what does the work.
So you would have to run
apt-get -y upgrade to actually upgrade your system. Note this is generally NOT RECOMMENDED as the -y means to go ahead with the upgrade regardless of the results. This could update software you don’t want updated.
I personally, would add an
apt-get upgrade to the end of your script, with maybe a message.
echo "$(tput setaf 1)Welcome, $(tput setab 0)Quinn!$(tput sgr 0)"
echo "Checking for updates..."
sudo apt-get update 2>&1 >/dev/null
echo "$(tput setaf 2)Done!$(tput sgr 0)"
echo "Running upgrade now. Check to ensure compatibility and approve the update."
sudo apt-get upgrade
My script includes sudo as I don’t have a user that runs apt-get without it. But you could remove that if you don’t need sudo.
The additions give a quick message to tell me what my script wants (always recommend this) and then runs the upgrade with the output to the screen. This allows me to then confirm the process and see what will actually be upgraded. It still hides the long list of output from apt-get update which is generally not needed.
I didn’t have it run on login, but did run it manually, here is the output from my script on a droplet. Forgive me if I missed the mark, but I’m assuming you don’t actually need to know if apt-get update worked or not, as that doesn’t actually update the system.