#cargo-install #预编译 #二进制 # #版本 #二进制文件 #ripgrep

bin+lib cargo-quickinstall

cargo install 预编译的二进制安装

22 个版本

0.2.11 2024年8月8日
0.2.10 2023年11月18日
0.2.9 2023年3月14日
0.2.7 2022年12月28日
0.1.3 2020年11月30日

#44Cargo 插件

Download history 1215/week @ 2024-05-04 1704/week @ 2024-05-11 1412/week @ 2024-05-18 1059/week @ 2024-05-25 1172/week @ 2024-06-01 2943/week @ 2024-06-08 2626/week @ 2024-06-15 1615/week @ 2024-06-22 2730/week @ 2024-06-29 2952/week @ 2024-07-06 2364/week @ 2024-07-13 2390/week @ 2024-07-20 2707/week @ 2024-07-27 3568/week @ 2024-08-03 2123/week @ 2024-08-10 1921/week @ 2024-08-17

每月下载量 10,987

MIT/Apache 许可协议

44KB
1K SLoC

cargo-quickinstall

Crates.io Join the chat at https://gitter.im/cargo-quickinstall/community

cargo-quickinstall 类似于 Homebrew 的 Bottles (二进制包) 概念,但用于 cargo install

安装

cargo install cargo-quickinstall

支持 Windows、MacOS 和 Linux 的最新版本。

用法

当您通常需要编写类似

cargo install ripgrep

的内容时,现在可以写成

cargo quickinstall ripgrep

这将安装 crate 中任何二进制文件的预编译版本。如果没有预编译版本,它将自动回退到 cargo install

cargo-binstall 的关系

cargo-binstall(从 0.6.2 版本开始)也能够从 cargo-quickinstall 的 GitHub 发布仓库中获取包。cargo-binstall 是一款优秀的软件。如果您在寻找桌面使用的东西,我推荐使用 cargo-binstall

在 CI 系统中的应用

如果您想在 CI 系统上安装 rust 包,可以使用 curl | tar 命令,直接从 cargo-quickinstall 的 GitHub 发布仓库安装。

$ cargo-quickinstall --dry-run ripgrep

将打印

"curl" "--user-agent" "cargo-quickinstall client ([email protected])" "--location" "--silent" "--show-error" "--fail" "https://github.com/cargo-bins/cargo-quickinstall/releases/download/ripgrep-13.0.0-x86_64-apple-darwin/ripgrep-13.0.0-x86_64-apple-darwin.tar.gz" | "tar" "-xzvvf" "-" "-C" "/Users/alsuren/.cargo/bin"

根据需要编辑命令,并将其粘贴到您的 CI 流程中。

支持的目标

检查 支持的目标,了解 quickinstall 可以为其构建的目标列表。

限制

不支持非默认功能。

目前 cargo-quickinstall 客户端只是一个华丽的 bash 脚本。

目前它假设您有访问权限

  • tar
  • curl

这两个都应该存在于所有最新的Windows和MacOS安装中。 curl在大多数Linux系统中都可用,并且被rustup安装说明所假定存在。我只计划在不会增加cargo install cargo-quickinstall所需时间的情况下删除这些运行时依赖项(可能可以通过功能标志来完成?)。

还有一些基础设施也是这个项目的一部分

  • 用于分发预构建二进制文件的服务器
    • 我们使用github releases来处理。
  • 用于收集报告的服务器
    • 这是通过一个vercel服务器完成的,该服务器将计数保存到redis。
  • 一个周期性任务,用于为每个操作系统/架构构建最常请求的包
    • 请某人审计我的GitHub Actions沙箱方案。

贡献

目前有很多事情需要解决,所以现在是加入并帮助的最佳时机。我创建了一个Gitter房间来协作。您也可以在Twitter或Discord上联系@alsuren。我还愿意通过zoom进行配对,以帮助新贡献者入门。

当前的工作正在看板板上跟踪。如果您需要帮助分解票据,请在上面的任何一个地方向我呼喊。

发布

补丁版本的发布由makefile处理,因此可以通过以下方式完成

make release

如果您需要执行主要版本的升级,则复制粘贴Makefile中的命令。

一旦发布,请将相关信息发布在rust论坛Reddit和Twitter上。

许可协议

版权(c)2020-2022 cargo-quickinstall开发者

cargo-quickinstall可在MIT许可协议或Apache License 2.0的条款下提供,任选其一。

有关许可详情,请参阅LICENSE-APACHELICENSE-MIT文件。

依赖项

~2–12MB
~122K SLoC