From d9c7091ded6bd819e42b63f3f65036aab4d0fbcc Mon Sep 17 00:00:00 2001 From: 魏曹先生 <1992414357@qq.com> Date: Fri, 7 Aug 2026 16:41:08 +0800 Subject: build: replace cargo install with local release build in scripts Update install scripts to build from manifest and copy binaries manually instead of using `cargo install`. Add load scripts for bash, zsh, fish, and PowerShell to set up PATH and source completion scripts from external packages. --- .run/src/bin/install-mling.ps1 | 15 +++++++++------ .run/src/bin/install-mling.sh | 17 ++++++++++++++--- 2 files changed, 23 insertions(+), 9 deletions(-) (limited to '.run') diff --git a/.run/src/bin/install-mling.ps1 b/.run/src/bin/install-mling.ps1 index 7fba62e..5409460 100644 --- a/.run/src/bin/install-mling.ps1 +++ b/.run/src/bin/install-mling.ps1 @@ -1,7 +1,10 @@ -cargo install --path mingling_cli +$ErrorActionPreference = "Stop" -New-Item -ItemType Directory -Force -Path .temp/comp | Out-Null -# Copy all files containing _comp from the debug directory -Get-ChildItem .temp/target/release/*_comp* | ForEach-Object { - Copy-Item $_.FullName .temp/comp/ -} +cargo build --release --manifest-path mingling_cli/Cargo.toml + +New-Item -ItemType Directory -Force -Path .temp/mling/bin, .temp/mling/scripts | Out-Null + +Copy-Item .temp/target/release/mling.exe .temp/mling/bin/ +Copy-Item .temp/target/release/mingling-cli.exe .temp/mling/bin/ +Copy-Item .temp/target/release/mingling-cli_comp.ps1 .temp/mling/scripts/mling_comp.ps1 +Copy-Item mingling_cli/scripts/load_mling.ps1 .temp/mling/ diff --git a/.run/src/bin/install-mling.sh b/.run/src/bin/install-mling.sh index 5b5e7b2..e40121f 100755 --- a/.run/src/bin/install-mling.sh +++ b/.run/src/bin/install-mling.sh @@ -1,6 +1,17 @@ #!/bin/bash -cargo install --path mingling_cli +set -e -mkdir -p .temp/comp -cp .temp/target/release/*_comp.* .temp/comp/ 2>/dev/null || echo "No matching files found" +cargo build --release --manifest-path mingling_cli/Cargo.toml + +mkdir -p .temp/mling/bin .temp/mling/scripts + +cp .temp/target/release/mling .temp/mling/bin/ +cp .temp/target/release/mingling-cli .temp/mling/bin/ + +for comp in zsh sh fish; do + cp ".temp/target/release/mingling-cli_comp.$comp" ".temp/mling/scripts/mling_comp.$comp" +done +cp mingling_cli/scripts/load_mling.zsh .temp/mling/ +cp mingling_cli/scripts/load_mling.sh .temp/mling/ +cp mingling_cli/scripts/load_mling.fish .temp/mling/ -- cgit