https://github.com/cargo-bins/cargo-quickinstall

pre-compiled binary packages for `cargo install`

https://github.com/cargo-bins/cargo-quickinstall

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.1%) to scientific vocabulary

Keywords from Contributors

sequencing hack interpreter interactive genomics parallel pdes distributed ecosystem-models autograder
Last synced: 11 months ago · JSON representation

Repository

pre-compiled binary packages for `cargo install`

Basic Info
  • Host: GitHub
  • Owner: cargo-bins
  • License: apache-2.0
  • Language: Rust
  • Default Branch: main
  • Size: 26.6 MB
Statistics
  • Stars: 261
  • Watchers: 2
  • Forks: 16
  • Open Issues: 70
  • Releases: 0
Created over 5 years ago · Last pushed 11 months ago
Metadata Files
Readme License Support

README.md

cargo-quickinstall

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

cargo-quickinstall is a bit like Homebrew's concept of Bottles (binary packages), but for cargo install.

Installation

cargo install cargo-quickinstall

Recent versions of Windows, MacOS and Linux are supported.

Usage

Whenever you would usually write something like:

cargo install ripgrep

you can now write:

cargo quickinstall ripgrep

This will install pre-compiled versions of any binaries in the crate. If we don't have a pre-compiled version, it will fallback to cargo install automatically.

Relationship to cargo-binstall

cargo-binstall (from version 0.6.2 onwards) is also capable of fetching packages from the cargo-quickinstall github releases repo. cargo-binstall is an excellent piece of software. If you're looking for something for desktop use, I can recommend using cargo-binstall.

Use in CI systems

If you want to install a rust package on a CI system, you can do it with a curl | tar command, directly from the cargo-quickinstall github releases repo.

bash cargo-quickinstall --dry-run --no-binstall ripgrep

will print:

bash curl --user-agent "cargo-quickinstall/0.3.13 client (alsuren@gmail.com)" --location --silent --show-error --fail "https://github.com/cargo-bins/cargo-quickinstall/releases/download/ripgrep-14.1.1/ripgrep-14.1.1-aarch64-apple-darwin.tar.gz" | tar -xzvvf - -C /Users/alsuren/.cargo/bin

Edit the command however you need, and paste it into your CI pipeline.

Supported targets

Check supported-targets for lists of targets quickinstall can build for.

Limitations

Non-default features are not supported.

The cargo-quickinstall client is just a glorified bash script at this point.

Currently it assumes that you have access to:

  • tar
  • curl

Both of these should exist on all recent Windows and MacOS installs. curl is available on most Linux systems, and is assumed to exist by the rustup installation instructions. I only plan to remove these runtime dependencies if it can be done without increasing how long cargo install cargo-quickinstall takes (might be possible to do this using feature flags?).

There are a few pieces of infrastructure that are also part of this project:

  • [x] A server for distributing the pre-built binaries
    • We are using github releases for this.
  • [x] A server for report gathering
    • This is done using a vercel server that saves counts to redis.
  • [x] A periodic task for building the most-requested packages for each OS/architecture
    • [ ] Get someone to audit my GitHub Actions sandboxing scheme.

Contributing

There are a lot of things to figure out at the moment, so now is the perfect time to jump in and help. I created a Gitter room for collaborating in. You can also poke @alsuren on Twitter or Discord. I'm also up for pairing over zoom to get new contributors onboarded.

Work is currently tracked on the kanban board. If you want help breaking down a ticket, give me a shout in one of the above places.

Releasing

Releasing of patch versions is handled by the makefile, so can be done by:

bash make release

If you need to make a major version bump then copy-paste the commands out of the Makefile.

Once a release has been made, post about it on the rust forums, reddit and twitter.

License

Copyright (c) 2020-2022 cargo-quickinstall developers

cargo-quickinstall is made available under the terms of either the MIT License or the Apache License 2.0, at your option.

See the LICENSE-APACHE and LICENSE-MIT files for license details.

Owner

  • Name: cargo-bins
  • Login: cargo-bins
  • Kind: organization

Cargo (rust) binary tools

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 548
  • Total Committers: 15
  • Avg Commits per committer: 36.533
  • Development Distribution Score (DDS): 0.681
Past Year
  • Commits: 81
  • Committers: 5
  • Avg Commits per committer: 16.2
  • Development Distribution Score (DDS): 0.568
Top Committers
Name Email Commits
David Laban d****n@r****m 175
Jiahao XU J****U@o****m 145
David Laban a****n@g****m 123
dependabot[bot] 4****] 59
progga 1****a 16
github-actions[bot] 4****] 14
Eduardo Flores e****z@g****m 5
Christof Weickhardt c****f@w****h 2
Francisco Garau f****u@g****m 2
Sagie Gur-Ari s****i@g****m 2
Eliah Kagan d****e@g****m 1
Lovecraftian Horror L****r@p****e 1
Milo 5****9 1
The Gitter Badger b****r@g****m 1
Yury Yarashevich y****h@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 69
  • Total pull requests: 328
  • Average time to close issues: 3 months
  • Average time to close pull requests: 5 days
  • Total issue authors: 27
  • Total pull request authors: 9
  • Average comments per issue: 2.64
  • Average comments per pull request: 0.43
  • Merged pull requests: 273
  • Bot issues: 0
  • Bot pull requests: 182
Past Year
  • Issues: 25
  • Pull requests: 195
  • Average time to close issues: 1 day
  • Average time to close pull requests: 1 day
  • Issue authors: 13
  • Pull request authors: 7
  • Average comments per issue: 1.36
  • Average comments per pull request: 0.07
  • Merged pull requests: 153
  • Bot issues: 0
  • Bot pull requests: 145
Top Authors
Issue Authors
  • alsuren (21)
  • NobodyXu (19)
  • Milo123459 (4)
  • Azathothas (2)
  • Ancient77 (1)
  • ckysmrn (1)
  • lwiechec (1)
  • kkysen (1)
  • ilyagr (1)
  • mstyura (1)
  • vic1707 (1)
  • 2bndy5 (1)
  • mdekstrand (1)
  • Timmmm (1)
  • jwodder (1)
Pull Request Authors
  • dependabot[bot] (126)
  • NobodyXu (104)
  • github-actions[bot] (56)
  • alsuren (34)
  • EliahKagan (2)
  • Milo123459 (2)
  • platy (2)
  • mstyura (1)
  • 2bndy5 (1)
Top Labels
Issue Labels
good first issue (2) on-hold (1)
Pull Request Labels
dependencies (126) rust (87) python (30) PR: dependencies (10) github_actions (9)

Dependencies

.github/workflows/build-package.yml actions
  • actions/checkout v4 composite
  • actions/download-artifact v3 composite
  • actions/upload-artifact v3 composite
  • andstor/file-existence-action v2 composite
  • andymckay/cancel-action 0.3 composite
  • svenstaro/upload-release-action v2 composite
  • taiki-e/install-action v2 composite
.github/workflows/cronjob.yml actions
  • actions/checkout v4 composite
.github/workflows/selfbuild.yml actions
  • actions/checkout v4 composite
  • taiki-e/install-action v2 composite
.github/workflows/test.yml actions
  • actions/checkout v4 composite
.github/workflows/weekly.yml actions
  • actions/checkout v4 composite
Cargo.lock cargo
  • bitflags 1.3.2
  • bitflags 2.3.3
  • cc 1.0.79
  • cfg-if 1.0.0
  • errno 0.2.8
  • errno 0.3.1
  • errno-dragonfly 0.1.2
  • fastrand 2.0.0
  • getrandom 0.2.10
  • guess_host_triple 0.1.3
  • home 0.5.5
  • libc 0.2.147
  • linux-raw-sys 0.4.3
  • log 0.4.19
  • mktemp 0.5.1
  • pico-args 0.5.0
  • redox_syscall 0.3.5
  • rustix 0.38.4
  • tempfile 3.8.0
  • tinyjson 2.5.1
  • uuid 1.4.1
  • wasi 0.11.0+wasi-snapshot-preview1
  • winapi 0.3.9
  • winapi-i686-pc-windows-gnu 0.4.0
  • winapi-x86_64-pc-windows-gnu 0.4.0
  • windows-sys 0.48.0
  • windows-targets 0.48.1
  • windows_aarch64_gnullvm 0.48.0
  • windows_aarch64_msvc 0.48.0
  • windows_i686_gnu 0.48.0
  • windows_i686_msvc 0.48.0
  • windows_x86_64_gnu 0.48.0
  • windows_x86_64_gnullvm 0.48.0
  • windows_x86_64_msvc 0.48.0
Cargo.toml cargo
cargo-quickinstall/Cargo.toml cargo
  • mktemp 0.5.1 development
  • guess_host_triple 0.1.3
  • home 0.5.5
  • pico-args 0.5.0
  • tempfile 3.8.0
  • tinyjson 2
zigbuild-requirements.txt pypi
  • cargo-zigbuild *
  • ziglang <0.11