diff --git a/README.md b/README.md new file mode 100644 index 00000000..5e8b37f8 --- /dev/null +++ b/README.md @@ -0,0 +1,29 @@ +# Topgrade + +![Alt Text](doc/screenshot.gif) + +Keeping your system up to date mostly involves invoking more than a single package manager. This +usually results in big shell one-liners saved in your shell history. Topgrades tries to solve this +problem by detecting which tools you use and invoke their appropriate package managers. + +## Installation +Use `cargo install` to install it from Github. I'll post precompiled binaries in the future. + +## Usage +Just invoke `topgrade`. It will invoke the following steps: + +* Check if the following paths are tracked by Git. If so, pull them: + * ~/.emacs.d (Should work whether you use [Spacemacs](http://spacemacs.org/) or a custom configuration) + * ~/.zshrc + * [~/.oh-my-zsh](https://github.com/robbyrussell/oh-my-zsh) + * ~/.tmux + +* *Unix*: Invoke [zplug](https://github.com/zplug/zplug) update +* *Unix*: Upgrade tmux plugins with [TPM](https://github.com/tmux-plugins/tpm) +* Invoke Cargo [install-update](https://github.com/nabijaczleweli/cargo-update) +* Upgrade Emacs packages +* *Linux* - Invoke the system package manager: + * *Arch* - Invoke [yay](https://github.com/Jguer/yay) or fall back to pacman +* *Linux* - Run [needrestart](https://github.com/liske/needrestart) +* *macOS* - Upgrade [Homebrew](https://brew.sh/) packages +* *macOS* - Upgrade App Store applications diff --git a/doc/screenshot.gif b/doc/screenshot.gif new file mode 100644 index 00000000..5cca6b01 Binary files /dev/null and b/doc/screenshot.gif differ