I must keep all the software around me up to date, just like walking without stepping on the cracks in the tiles, it doesn't make sense, but it's not harmful either, so I let it develop.
Operating Systems and Firmware
From the most basic, such as my main productivity MacBook, to the smallest, like the unused Dockcase dock, everything needs to be updated. This is my checklist, and usually relying on update reminders is enough.
Devices Screenshots
MacBook
NAS
Router
iPad
iPhone
Xiaomi Bracelet
Xiaomi Smart Home
Camera
PS5
Switch
Dockcase Dock
Applications
Applications under the operating system also need to be updated.
MacBook
Before Homebrew Cask appeared, updating applications on macOS was always a problem. The App Store's automatic updates are the best, but there are very few applications available. It used to bother me for a long time, but now it's not a problem.
For macOS applications, I follow these principles:
- First priority is the web version, such as Discord, Slack, Telegram, Spotify.
- Second priority is the App Store version.
- Third priority is Homebrew.
- I don't install anything else.
The web version doesn't need to be updated, the App Store will update automatically, and Homebrew only needs to be executed daily with the following command:
brew update && brew upgrade && brew cu -a -y && brew cleanup
However, sometimes the App Store takes several days to update automatically, which is unacceptable. I install mas to trigger forced updates through the command line. In addition, I also update the Rime input method dictionary and alias using Rime. The following is my complete command:
alias up="brew update && brew upgrade && brew cu -a -y && brew cleanup && mas upgrade && ~/plum/rime-install iDvel/rime-ice/recipes/full"
NAS
There are two parts, the Synology suite will update automatically, and the Docker part will be updated automatically using Watchtower.
Others
Although iPad and iPhone applications will also update automatically, they often take several days to update, so the first thing I do every morning is manually update these two devices. For other less frequently used devices, I wait for reminders or automatic updates, which I can tolerate, after all, my OCD is not that severe.
Plugins
Plugins within applications also need to be updated.
Browsers
They usually update automatically, but sometimes they get stuck for a few days without updating. I occasionally manually click Update. These are the browser plugins I currently use.
Obsidian
Obsidian's community plugins and themes need to be updated. There is no official automatic update method, but you can install the plugin Beta Reviewers Auto-update Tester to achieve automatic updates. These are the Obsidian plugins I currently use.
VS Code
VS Code has a good automatic update feature. These are the VS Code plugins I currently use.
Home Assistant
Home Assistant is not that smooth. I installed Home Assistant Community Store (HACS) to get more integrations, but it does not update automatically and there are no update reminders. I have to go in to see the updates.
Project Dependencies
Project dependencies also need to be updated. I use Dependabot to automatically submit dependency update pull requests. For projects with comprehensive automated testing, such as RSSHub, I can use Github Action Merge Dependabot to automatically merge the updates without waiting.
automerge:
if: github.actor == 'dependabot[bot]' && github.event_name == 'pull_request'
needs: [ jest, puppeteer, docs, all ]
runs-on: ubuntu-latest
permissions:
pull-requests: write
contents: write
steps:
- uses: fastify/github-action-merge-dependabot@v3
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
target: patch
Changelog
Quietly updating sometimes is not enough. For some important or interesting software, I subscribe to their Changelog via RSS to keep up with their updates.
These are the ones I can think of for now. Once you get used to it, checking everything is quick, and it brings comfort for the whole day.
Don't follow my example, and even if you do, don't say I taught you.