Rust Offline?

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • SonarQube - Static code analysis for 29 languages.
  • Mergify - Updating dependencies is time-consuming.
  • InfluxDB - Collect and Analyze Billions of Data Points in Real Time
  • crates.io

    The Rust package registry

    We had previously tried panamax but it broke constantly. Well, recently we tried again and it worked beautifully this time and we used it to create an offline mirror. It was pretty straightforward to set up, has plenty of customization options, and is quick to update. It includes the Rust toolchain itself as well as the entire ecosystem of https://crates.io/. It's amazing, and it feels like we're online almost! The entire mirror is only about 150GB. Not bad!

  • cargo-auditable

    Make production Rust binaries auditable

    Further we use cargo-auditable and cargo-audit as part of both our pipeline and regular scanning of all deployed services. This makes our InfoSec and Legal super happy since it means they can also monitor compliance with licenses and patch/update timings.

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • rustsec

    RustSec API & Tooling

    Further we use cargo-auditable and cargo-audit as part of both our pipeline and regular scanning of all deployed services. This makes our InfoSec and Legal super happy since it means they can also monitor compliance with licenses and patch/update timings.

  • Cargo

    The Rust package manager

    Do note that cargo vendor can’t handle duplicated dependencies 1. Not a very widespread issue, but there are some projects that (even intentionally) have duplicated dependencies, which prevents this command from working with them.

  • guix

    Read-only mirror of GNU Guix — pull requests are ignored, see https://guix.gnu.org/en/manual/en/guix.html#Submitting-Patches instead

    You should perhaps utilize guix for your projects. It provides rather acceptable rust resp. crates support and in a perfectly reproducible build environment. But be aware, that it even tries to build even the rust compiler from source by going through all this nasty steps of its iterative bootstrap process. This can be a little bit complex and time-consuming, if you need an up-to-date version of rustc.

  • panamax

    Mirror rustup and crates.io repositories, for offline Rust and cargo usage.

    We had previously tried panamax but it broke constantly. Well, recently we tried again and it worked beautifully this time and we used it to create an offline mirror. It was pretty straightforward to set up, has plenty of customization options, and is quick to update. It includes the Rust toolchain itself as well as the entire ecosystem of https://crates.io/. It's amazing, and it feels like we're online almost! The entire mirror is only about 150GB. Not bad!

  • crates.io-index

    Registry index for crates.io

    # $HOME/.cargo/config.toml [...] [registry] default = "gitea" [registries.crates] index = "https://github.com/rust-lang/crates.io-index.git" [registries.gitea] index = "https://gitea.localhost.local/user/_cargo-index.get" [...]

  • Mergify

    Updating dependencies is time-consuming.. Solutions like Dependabot or Renovate update but don't merge dependencies. You need to do it manually while it could be fully automated! Add a Merge Queue to your workflow and stop caring about PR management & merging. Try Mergify for free.

  • wgsl-analyzer

    a language server implementation for the WGSL shading language

    An example would be wgsl-analyzer's ide crate (see their Cargo.toml). They intentionally depend on multiple versions of naga for the users of the LSP server to choose from at runtime.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts