This tool will remember the applications you installed and update them all (even from a git repo). To do that you will need to configure all the commands you want to run when upgrating your system (see the `example_config` folder).
See also [topgrade](https://github.com/topgrade-rs/topgrade) for a solution that auto-detect everything it can.
* [X] Run commands found in different configuration files
* [X] Have Pre / Post commands to do before / after the upgrade
* [X] Do all the installations and give a summary of success and errors at the end
* [X] Improve errors ^^'
* [ ] Executors from a packagers need to be executed in order and only if all of the previous failed
* [ ] Tests
* [ ] Prevent the usage of `sudo` and equivalent, add a config to say "needAdminRights"
* [ ] Parallel execution of commands
* [ ] Packagers need to state their dependency
* [ ] Show a progress bar general and the list of task in execution (with their stepNumber): "helix PostInstall (1/2)"
* [ ] All input should be prevented (even asking for `sudo`’s password)
* [ ] All output (standard and errors) needs to be redirected in files. Maybe something like: /tmp/system-updater/<DATETIME>-<packagerName>-<executorName?/stepNumber??>.log
* [ ] Start self and command "Nicer" (Not sure it is possible in all systems, or in the same way)
The configuration folder is at [the standard path for configuration on your system](https://docs.rs/directories/latest/directories/struct.ProjectDirs.html#method.config_dir) and the commads should be in the packagers subfolder.
Example on linux it is at `~/.config/systemupdater/packagers/`
Just start the program, no option needed in you day to day usage.