A small script for keeping MacOS computers up to date.
NOTE: This command is meant to be run as root. You should read through it and understand it entirely before running it on your machine.
Because keeping software up to date shouldn't be hard.
The update script updates a number of global dependencies. Specifically:
- softwareupdate: The system software update tool (see:
man softwareupdatefor more details). - Homebrew: update, upgrade, and cleanup
- npm: install npm, upgrade
- gem: update, cleanup
There is a plist file that schedules the update script to be run once a day around midnight.
To get started, run:
$ source ./bin/setup.sh
Aside from Homebrew;
- shellcheck:
brew install shellcheck
Copies the plist files from the plist directory to the default /Library/LaunchDaemons/ directory.
$ source ./bin/plist-update.sh
Unloads and then loads the plist files in the default /Library/LaunchDaemons/ directory with the launchctl command.
$ source ./bin/plist-reload.sh
Checks that all of the plist files have been loaded with the launchctl command without error.
$ source ./bin/plist-check.sh
Runs all of the commands: plist-update, plist-reload, and plist-check at once.
$ source ./bin/plist-deploy.sh