altKYMSU is a fork from KYMSU (Keep Your macOs Stuff Updated) https://github.com/welcoMattic/kymsu
Each plugin notifie you about available update and upgrade apps and packages.
homebrew and pecl plugins notifie you if apache/php configuration files have been modified.
- atom (plug-ins)
- antibody (zsh plug-ins)
- gem (Ruby)
- homebrew (brew and cask)
- installed (create a list of all your brew, pip, npm... stuffs and a Brewfile).
- nodejs (npm package) (local or global packages) (can update nvm script)
- mas (Mac Appstore)
- pecl (PHP modules) (for testing only)
- perl (Perl modules (cpan))
- pip (Python Package index) (pip or pip3)
- pipx (Python Apps in Isolated Environments)
- rust (Rust)
- venv (Environnement virtuel Python)
- wp (WordPress wp-cli) (for testing only)
Optionnal:
- pipdeptree (pip install pipdeptree) for checking dependancies (pip plugin)
- terminal-notifier (brew install terminal-notifier) for sending macOS notification (all plugins)
Bash 5 (brew install bash) for associative array (homebrew plugin)(homebrew plugin 2.0)
$ git clone [email protected]:Bruno21/kymsu.git && cd kymsu2 && ./install.sh
A symbolic link is created in /usr/local/bin/
Plug-ins are placed in ~/.kymsu/
Only update all the things: $ kymsu2
Run only 1 script: $ kymsu2 -s homebrew
(option -s and name of script without extension)
With cleanup after updates: $ kymsu2 --cleanup
No distract mode (no user interaction):$ kymsu2 --nodistract
$ kymsu2 -n
(update without confirmation)
Help: $ kymsu2 --help
$ kymsu2 -h
Prefix plugin with a _ to ignore it:
# _wp.sh is disabled (still beta)
~/.kymsu/plugins.d $ ls
00-kymsu.sh _wp.sh atom.sh homebrew.sh mas.sh npm.sh pecl.sh pip.sh
Installed.sh
create a Markdown file with all yours installed stuffs and a Brewfile. I suggest to disable the plugin and run it manually.
There is a settings section on top of each plug-in:
- [homebrew-pip-nodejs] don't update a module, package...: add it to the
do_not_update
array on the top.
$ nano homebrew.sh
declare -a do_not_update=('virtualbox,virtualbox-extension-pack')
- [homebrew] display info on updated pakages:
display_info=true
- [homebrew-nodejs-pecl-pip] no distract mode (no user interaction):
no_distract=false
If running Homebrew plug-in in no_distract mode, Casks with 'latest' version number won't be updated. - [nodejs] run npm maintenance tools:
doctor=true
- [pip]
version=pip or pip3
user="" or "--user"
Git pull and re-run install.sh:
$ cd kymsu2 && git pull && ./install.sh
altKYMSU comes with 2 .plist files (one for kymsu2, one for installed.sh) to automate the use of KYMSU. Please edit and drag them into the folder ~ / Library / LaunchAgents
For configure LaunchAgent, I suggest LaunchControl.
Run uninstall.sh:
$ cd kymsu2 && ./uninstall.sh
All credit goes to welcoMattic
Same as KYMSU (MIT)