From 25c505717171df464565226d205d3c496948c91d Mon Sep 17 00:00:00 2001 From: Ruben Molina Date: Thu, 24 Nov 2022 14:17:58 -0500 Subject: [PATCH] Add support for juliaup (#208) * Add support for juliaup * Update config.rs * Change the position for Juliaup Step. * Update generic.rs --- .github/workflows/check-and-lint.yaml | 2 +- src/config.rs | 1 + src/main.rs | 1 + src/steps/generic.rs | 13 +++++++++++++ src/steps/node.rs | 1 - 5 files changed, 16 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check-and-lint.yaml b/.github/workflows/check-and-lint.yaml index cb825f48..587c8c1a 100644 --- a/.github/workflows/check-and-lint.yaml +++ b/.github/workflows/check-and-lint.yaml @@ -22,7 +22,7 @@ jobs: - name: Setup Rust uses: dtolnay/rust-toolchain@master with: - toolchain: '${{ env.RUST_VER }}' + toolchain: '${{ env.RUST_VER }} components: rustfmt - name: Run cargo fmt diff --git a/src/config.rs b/src/config.rs index e4a2dd63..f551236d 100644 --- a/src/config.rs +++ b/src/config.rs @@ -106,6 +106,7 @@ pub enum Step { HomeManager, Jetpack, Julia, + Juliaup, Kakoune, Krew, Macports, diff --git a/src/main.rs b/src/main.rs index b62a50a9..c082742b 100644 --- a/src/main.rs +++ b/src/main.rs @@ -324,6 +324,7 @@ fn run() -> Result<()> { runner.execute(Step::Atom, "apm", || generic::run_apm(run_type))?; runner.execute(Step::Fossil, "fossil", || generic::run_fossil(run_type))?; runner.execute(Step::Rustup, "rustup", || generic::run_rustup(&base_dirs, run_type))?; + runner.execute(Step::Juliaup, "juliaup", || generic::run_juliaup(&base_dirs, run_type))?; runner.execute(Step::Dotnet, ".NET", || generic::run_dotnet_upgrade(&ctx))?; runner.execute(Step::Choosenim, "choosenim", || generic::run_choosenim(&ctx))?; runner.execute(Step::Cargo, "cargo", || generic::run_cargo_update(&ctx))?; diff --git a/src/steps/generic.rs b/src/steps/generic.rs index 1646b0be..eb9c5428 100644 --- a/src/steps/generic.rs +++ b/src/steps/generic.rs @@ -175,6 +175,19 @@ pub fn run_rustup(base_dirs: &BaseDirs, run_type: RunType) -> Result<()> { run_type.execute(&rustup).arg("update").status_checked() } +pub fn run_juliaup(base_dirs: &BaseDirs, run_type: RunType) -> Result<()> { + let juliaup = utils::require("juliaup")?; + + print_separator("juliaup"); + + if juliaup.canonicalize()?.is_descendant_of(base_dirs.home_dir()) { + run_type.execute(&juliaup).args(["self", "update"]).status_checked()?; + } + + run_type.execute(&juliaup).arg("update").status_checked() + +} + pub fn run_choosenim(ctx: &ExecutionContext) -> Result<()> { let choosenim = utils::require("choosenim")?; diff --git a/src/steps/node.rs b/src/steps/node.rs index d9a71e58..5455b4c7 100644 --- a/src/steps/node.rs +++ b/src/steps/node.rs @@ -4,7 +4,6 @@ use std::os::unix::fs::MetadataExt; use std::path::PathBuf; use std::process::Command; - use crate::sudo; use crate::utils::require_option; use color_eyre::eyre::Result;