Skip to content

bingalls/mac-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

mac-tools

Productivity software for Mac OSX

macupdate.sh

Updates Mac with enhanced support for brew cask

This command line shell script tries to work with your existing Mac OS X software. Install the following free requirements for the best experience:

Installation

  • chmod +x macupdate.sh
  • cp macupdate.sh /usr/local/bin/
  • macupdate.sh

Until now, Mac OSX lacks a standard for packaging and updating all your software. MS Windows has hacks like Download.com & FileHippo, Linux & BSD Unix long ago had tools like apt-get, yum, etc.

The Apple Store is a partial solution, for applications that pay Apple for certificates, but it lacks an uninstall feature.

Now you can run macupdate.sh from the command line. It will update all your software (when you switch to managed packages).

Brew Cask

For best results, switch your software to Brew Cask

  • brew cask search iterm # finds iterm2
  • brew cask install iterm2 # Brew tells you to add --force to overwrite any existing iterm2 Now you can upgrade with macupdate.sh, or even uninstall

Caveats

Tested with shellcheck

MacUpdate is designed to be simple and thorough, rather than fast. If you run it every day, it should should only take about a minute. If you wait a month, it could take half an hour, if you have much software to download.

MacUpdate does not run brew cleanup nor brew cask cleanup to safely avoid any destructive changes, and to allow rollbacks. You should run cleanup regularly, or add these calls to the end of the macupdate.sh script.

MacUpdate can run ~5% faster, and scroll less text off the screen, by disabling descriptions of new software, and disabling self-diagnostics. These are easy enough to modify in the source; with enough demand, I can ship these changes.

About

Bash scripts for OS X UX

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages