Hi, DIYgod

nintendo switch

I have software update OCD.

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
Xiaomi Bracelet
Xiaomi Smart Home
Dockcase Dock


Applications under the operating system also need to be updated.


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"


There are two parts, the Synology suite will update automatically, and the Docker part will be updated automatically using Watchtower.


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 within applications also need to be updated.


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'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.

    if: == 'dependabot[bot]' && github.event_name == 'pull_request'
    needs: [ jest, puppeteer, docs, all ]
    runs-on: ubuntu-latest
      pull-requests: write
      contents: write
      - uses: fastify/github-action-merge-dependabot@v3
          github-token: ${{ secrets.GITHUB_TOKEN }}
          target: patch


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.

Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.