I decided to use Arch Linux on my latest home server thinking that a rolling release distribution might be less of a burden for personal projects.
Previously, I had been sticking to the LTS release of Ubuntu and I found myself falling behind on upgrading when releases reached their end of life support.
So far I’ve found the experience pleasant but it was easier to "fire and forget" updates with Debian systems.
On my server I have a handful of packages ignored so that I can manually ensure their upgrade is successful.
The included checkupdates
utility is useful but hides ignored packages by default.
I settled on creating a script triggered by a weekly timer which combines checkupdates
with a custom pacman query so I get emailed a complete listing of all outdated packages including the ignored ones.
#!/usr/bin/bash
export CHECKUPDATES_DB=/tmp/checkup-db
checkupdates &> /dev/null
sendmail matthew << EOF
Subject: Terrace Server Status
Outdated packages:
$(pacman --dbpath $CHECKUPDATES_DB --query --upgrades)
EOF