diff --git a/src/config.rs b/src/config.rs index aba6b9e0..d5de43be 100644 --- a/src/config.rs +++ b/src/config.rs @@ -78,6 +78,7 @@ pub enum Step { Firmware, Flatpak, Flutter, + Fossil, Gcloud, Gem, GitRepos, diff --git a/src/main.rs b/src/main.rs index a95ee3bc..fc1876c7 100644 --- a/src/main.rs +++ b/src/main.rs @@ -278,6 +278,7 @@ fn run() -> Result<()> { target_os = "dragonfly" )))] runner.execute(Step::VSCode, "vscode", || generic::run_vscode(run_type))?; + runner.execute(Step::Fossil, "fossil", || generic::run_fossil(run_type))?; runner.execute(Step::Atom, "apm", || generic::run_apm(run_type))?; runner.execute(Step::Rustup, "rustup", || generic::run_rustup(&base_dirs, run_type))?; runner.execute(Step::Dotnet, ".NET", || generic::run_dotnet_upgrade(&ctx))?; diff --git a/src/steps/generic.rs b/src/steps/generic.rs index b5913bd9..34b18822 100644 --- a/src/steps/generic.rs +++ b/src/steps/generic.rs @@ -82,6 +82,14 @@ pub fn run_sheldon(ctx: &ExecutionContext) -> Result<()> { ctx.run_type().execute(&sheldon).args(&["lock", "--update"]).check_run() } +pub fn run_fossil(run_type: RunType) -> Result<()> { + let fossil = utils::require("fossil")?; + + print_separator("Fossil"); + + run_type.execute(&fossil).args(&["all", "sync"]).check_run() +} + pub fn run_vscode(run_type: RunType) -> Result<()> { let vscode = utils::require("code")?;