Compare commits
10 Commits
v10.1.0-rc
...
v10.1.0-cd
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d8748b004b | ||
|
|
16953409fd | ||
|
|
c85adb8980 | ||
|
|
91554cac56 | ||
|
|
7256aaffc8 | ||
|
|
66e0b94e85 | ||
|
|
4dcb5a214b | ||
|
|
8731fd2b3f | ||
|
|
9233846479 | ||
|
|
94bdb8c3fd |
26
.github/workflows/check-and-lint.yaml
vendored
26
.github/workflows/check-and-lint.yaml
vendored
@@ -10,7 +10,10 @@ name: Check and Lint
|
|||||||
jobs:
|
jobs:
|
||||||
check:
|
check:
|
||||||
name: Check
|
name: Check
|
||||||
runs-on: ubuntu-latest
|
strategy:
|
||||||
|
matrix:
|
||||||
|
platform: [ ubuntu-latest, macos-latest, windows-latest ]
|
||||||
|
runs-on: ${{ matrix.platform }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions-rs/toolchain@v1
|
- uses: actions-rs/toolchain@v1
|
||||||
@@ -24,7 +27,10 @@ jobs:
|
|||||||
|
|
||||||
fmt:
|
fmt:
|
||||||
name: Rustfmt
|
name: Rustfmt
|
||||||
runs-on: ubuntu-latest
|
strategy:
|
||||||
|
matrix:
|
||||||
|
platform: [ ubuntu-latest, macos-latest, windows-latest ]
|
||||||
|
runs-on: ${{ matrix.platform }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions-rs/toolchain@v1
|
- uses: actions-rs/toolchain@v1
|
||||||
@@ -40,7 +46,10 @@ jobs:
|
|||||||
|
|
||||||
clippy:
|
clippy:
|
||||||
name: Clippy
|
name: Clippy
|
||||||
runs-on: ubuntu-latest
|
strategy:
|
||||||
|
matrix:
|
||||||
|
platform: [ ubuntu-latest, macos-latest, windows-latest ]
|
||||||
|
runs-on: ${{ matrix.platform }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions-rs/toolchain@v1
|
- uses: actions-rs/toolchain@v1
|
||||||
@@ -48,8 +57,13 @@ jobs:
|
|||||||
toolchain: stable
|
toolchain: stable
|
||||||
components: clippy
|
components: clippy
|
||||||
override: true
|
override: true
|
||||||
- uses: actions-rs/clippy-check@v1
|
- uses: actions-rs/cargo@v1.0.1
|
||||||
with:
|
with:
|
||||||
token: ${{ secrets.GITHUB_TOKEN }}
|
command: clippy
|
||||||
args: --all-features
|
args: --all-targets --locked -- -D warnings
|
||||||
name: Clippy Output
|
name: Clippy Output
|
||||||
|
- uses: actions-rs/cargo@v1.0.1
|
||||||
|
with:
|
||||||
|
command: clippy
|
||||||
|
args: --all-targets --locked --all-features -- -D warnings
|
||||||
|
name: Clippy (All features) Output
|
||||||
|
|||||||
2
.github/workflows/crates-publish.yml
vendored
2
.github/workflows/crates-publish.yml
vendored
@@ -15,7 +15,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions-rs/toolchain@v1
|
- uses: actions-rs/toolchain@v1
|
||||||
with:
|
with:
|
||||||
toolchain: nightly-2022-08-03
|
toolchain: stable
|
||||||
override: true
|
override: true
|
||||||
|
|
||||||
publish:
|
publish:
|
||||||
|
|||||||
2
.github/workflows/release-cross.yml
vendored
2
.github/workflows/release-cross.yml
vendored
@@ -19,7 +19,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions-rs/toolchain@v1
|
- uses: actions-rs/toolchain@v1
|
||||||
with:
|
with:
|
||||||
toolchain: 1.57.0
|
toolchain: stable
|
||||||
profile: minimal
|
profile: minimal
|
||||||
default: true
|
default: true
|
||||||
override: true
|
override: true
|
||||||
|
|||||||
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -19,7 +19,7 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- uses: actions-rs/toolchain@v1
|
- uses: actions-rs/toolchain@v1
|
||||||
with:
|
with:
|
||||||
toolchain: 1.57.0
|
toolchain: stable
|
||||||
profile: minimal
|
profile: minimal
|
||||||
override: true
|
override: true
|
||||||
components: rustfmt, clippy
|
components: rustfmt, clippy
|
||||||
|
|||||||
@@ -245,7 +245,7 @@ impl Aura {
|
|||||||
|
|
||||||
impl ArchPackageManager for Aura {
|
impl ArchPackageManager for Aura {
|
||||||
fn upgrade(&self, ctx: &ExecutionContext) -> Result<()> {
|
fn upgrade(&self, ctx: &ExecutionContext) -> Result<()> {
|
||||||
let sudo = which("sudo").unwrap_or(PathBuf::new());
|
let sudo = which("sudo").unwrap_or_else(PathBuf::new);
|
||||||
let mut aur_update = ctx.run_type().execute(&sudo);
|
let mut aur_update = ctx.run_type().execute(&sudo);
|
||||||
|
|
||||||
if sudo.ends_with("sudo") {
|
if sudo.ends_with("sudo") {
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ pub fn run_chocolatey(ctx: &ExecutionContext) -> Result<()> {
|
|||||||
args.insert(0, "choco");
|
args.insert(0, "choco");
|
||||||
}
|
}
|
||||||
|
|
||||||
let mut command = ctx.run_type().execute(&cmd);
|
let mut command = ctx.run_type().execute(cmd);
|
||||||
|
|
||||||
command.args(&args);
|
command.args(&args);
|
||||||
|
|
||||||
@@ -47,7 +47,7 @@ pub fn run_winget(ctx: &ExecutionContext) -> Result<()> {
|
|||||||
return Err(SkipStep(String::from("Winget is disabled by default")).into());
|
return Err(SkipStep(String::from("Winget is disabled by default")).into());
|
||||||
}
|
}
|
||||||
|
|
||||||
ctx.run_type().execute(&winget).args(&["upgrade", "--all"]).check_run()
|
ctx.run_type().execute(&winget).args(["upgrade", "--all"]).check_run()
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn run_scoop(cleanup: bool, run_type: RunType) -> Result<()> {
|
pub fn run_scoop(cleanup: bool, run_type: RunType) -> Result<()> {
|
||||||
@@ -55,34 +55,34 @@ pub fn run_scoop(cleanup: bool, run_type: RunType) -> Result<()> {
|
|||||||
|
|
||||||
print_separator("Scoop");
|
print_separator("Scoop");
|
||||||
|
|
||||||
run_type.execute(&scoop).args(&["update"]).check_run()?;
|
run_type.execute(&scoop).args(["update"]).check_run()?;
|
||||||
run_type.execute(&scoop).args(&["update", "*"]).check_run()?;
|
run_type.execute(&scoop).args(["update", "*"]).check_run()?;
|
||||||
|
|
||||||
if cleanup {
|
if cleanup {
|
||||||
run_type.execute(&scoop).args(&["cleanup", "*"]).check_run()?;
|
run_type.execute(&scoop).args(["cleanup", "*"]).check_run()?;
|
||||||
}
|
}
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_wsl_distributions(wsl: &Path) -> Result<Vec<String>> {
|
fn get_wsl_distributions(wsl: &Path) -> Result<Vec<String>> {
|
||||||
let output = Command::new(wsl).args(&["--list", "-q"]).check_output()?;
|
let output = Command::new(&wsl).args(["--list", "-q"]).check_output()?;
|
||||||
Ok(output
|
Ok(output
|
||||||
.lines()
|
.lines()
|
||||||
.filter(|s| !s.is_empty())
|
.filter(|s| !s.is_empty())
|
||||||
.map(|x| x.replace('\u{0}', "").replace('\r', ""))
|
.map(|x| x.replace(['\u{0}', '\r'], ""))
|
||||||
.collect())
|
.collect())
|
||||||
}
|
}
|
||||||
|
|
||||||
fn upgrade_wsl_distribution(wsl: &Path, dist: &str, ctx: &ExecutionContext) -> Result<()> {
|
fn upgrade_wsl_distribution(wsl: &Path, dist: &str, ctx: &ExecutionContext) -> Result<()> {
|
||||||
let topgrade = Command::new(&wsl)
|
let topgrade = Command::new(wsl)
|
||||||
.args(&["-d", dist, "bash", "-lc", "which topgrade"])
|
.args(["-d", dist, "bash", "-lc", "which topgrade"])
|
||||||
.check_output()
|
.check_output()
|
||||||
.map_err(|_| SkipStep(String::from("Could not find Topgrade installed in WSL")))?;
|
.map_err(|_| SkipStep(String::from("Could not find Topgrade installed in WSL")))?;
|
||||||
|
|
||||||
let mut command = ctx.run_type().execute(&wsl);
|
let mut command = ctx.run_type().execute(&wsl);
|
||||||
command
|
command
|
||||||
.args(&["-d", dist, "bash", "-c"])
|
.args(["-d", dist, "bash", "-c"])
|
||||||
.arg(format!("TOPGRADE_PREFIX={} exec {}", dist, topgrade));
|
.arg(format!("TOPGRADE_PREFIX={} exec {}", dist, topgrade));
|
||||||
|
|
||||||
if ctx.config().yes(Step::Wsl) {
|
if ctx.config().yes(Step::Wsl) {
|
||||||
@@ -134,7 +134,7 @@ pub fn windows_update(ctx: &ExecutionContext) -> Result<()> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub fn reboot() {
|
pub fn reboot() {
|
||||||
Command::new("shutdown").args(&["/R", "/T", "0"]).spawn().ok();
|
Command::new("shutdown").args(["/R", "/T", "0"]).spawn().ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn insert_startup_scripts(ctx: &ExecutionContext, git_repos: &mut Repositories) -> Result<()> {
|
pub fn insert_startup_scripts(ctx: &ExecutionContext, git_repos: &mut Repositories) -> Result<()> {
|
||||||
|
|||||||
@@ -46,8 +46,8 @@ impl Powershell {
|
|||||||
|
|
||||||
#[cfg(windows)]
|
#[cfg(windows)]
|
||||||
pub fn has_module(powershell: &Path, command: &str) -> bool {
|
pub fn has_module(powershell: &Path, command: &str) -> bool {
|
||||||
Command::new(&powershell)
|
Command::new(powershell)
|
||||||
.args(&[
|
.args([
|
||||||
"-NoProfile",
|
"-NoProfile",
|
||||||
"-Command",
|
"-Command",
|
||||||
&format!("Get-Module -ListAvailable {}", command),
|
&format!("Get-Module -ListAvailable {}", command),
|
||||||
@@ -100,14 +100,14 @@ impl Powershell {
|
|||||||
|
|
||||||
let mut command = if let Some(sudo) = ctx.sudo() {
|
let mut command = if let Some(sudo) = ctx.sudo() {
|
||||||
let mut command = ctx.run_type().execute(sudo);
|
let mut command = ctx.run_type().execute(sudo);
|
||||||
command.arg(&powershell);
|
command.arg(powershell);
|
||||||
command
|
command
|
||||||
} else {
|
} else {
|
||||||
ctx.run_type().execute(&powershell)
|
ctx.run_type().execute(powershell)
|
||||||
};
|
};
|
||||||
|
|
||||||
command
|
command
|
||||||
.args(&[
|
.args([
|
||||||
"-NoProfile",
|
"-NoProfile",
|
||||||
"-Command",
|
"-Command",
|
||||||
&format!(
|
&format!(
|
||||||
|
|||||||
@@ -84,7 +84,7 @@ pub fn run_in_tmux(args: Vec<String>) -> ! {
|
|||||||
shell_words::join(command)
|
shell_words::join(command)
|
||||||
};
|
};
|
||||||
|
|
||||||
let tmux = Tmux::new(args.clone());
|
let tmux = Tmux::new(args);
|
||||||
|
|
||||||
if !tmux.has_session("topgrade").expect("Error detecting a tmux session") {
|
if !tmux.has_session("topgrade").expect("Error detecting a tmux session") {
|
||||||
tmux.new_session("topgrade").expect("Error creating a tmux session");
|
tmux.new_session("topgrade").expect("Error creating a tmux session");
|
||||||
|
|||||||
Reference in New Issue
Block a user