From af02d8d7610982c3259cc11344200088a1feaecd Mon Sep 17 00:00:00 2001 From: Roey Darwish Dror Date: Tue, 3 Jul 2018 14:31:25 +0300 Subject: [PATCH] Add fisherman --- README.md | 1 + src/main.rs | 7 +++++++ src/unix.rs | 10 ++++++++++ 3 files changed, 18 insertions(+) diff --git a/README.md b/README.md index 346bd333..d7a84fd4 100644 --- a/README.md +++ b/README.md @@ -31,6 +31,7 @@ Just run `topgrade`. It will run the following steps: * ~/.config/fish/config.fish * Custom defined paths * *Unix*: Run [zplug](https://github.com/zplug/zplug) update +* *Unix*: Run [fisherman](https://github.com/fisherman/fisherman) update * *Unix*: Upgrade tmux plugins with [TPM](https://github.com/tmux-plugins/tpm) * Update Rustup by running `rustup update`. This will also attempt to run `rustup self update` when Rustup is installed inside the home directory. * Run Cargo [install-update](https://github.com/nabijaczleweli/cargo-update) diff --git a/src/main.rs b/src/main.rs index fecc13bf..19539db6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -152,6 +152,13 @@ fn run() -> Result<(), Error> { } } + if let Some(fish) = utils::which("fish") { + if home_path(".config/fish/functions/fisher.fish").exists() { + terminal.print_separator("fisherman"); + unix::run_fisherman(&fish).report("fisherman", &mut reports); + } + } + if let Some(tpm) = unix::tpm_path() { terminal.print_separator("tmux plugins"); unix::run_tpm(&tpm).report("tmux", &mut reports); diff --git a/src/unix.rs b/src/unix.rs index 85cefc9c..bcce260d 100644 --- a/src/unix.rs +++ b/src/unix.rs @@ -17,6 +17,16 @@ pub fn run_zplug(zsh: &PathBuf) -> Result<(), failure::Error> { Ok(()) } +pub fn run_fisherman(fish: &PathBuf) -> Result<(), failure::Error> { + Command::new(fish) + .args(&["-c", "fisher update"]) + .spawn()? + .wait()? + .check()?; + + Ok(()) +} + pub fn run_tpm(tpm: &PathBuf) -> Result<(), failure::Error> { Command::new(&tpm).arg("all").spawn()?.wait()?.check()?;