Rust Is Portable

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
InfluxDB high-performance time series database
Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.
influxdata.com
featured
  1. cargo-raze

    Generate Bazel BUILD from Cargo dependencies!

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. pyroscope-rs

    Pyroscope Profiler for Rust. Profile your Rust applications.

    I feel some of the OP points. I was working on a profiling agent lately, and one of the issues was running it on multiple platforms (just the four big ones linux/mac-x86/arm) on FFI (because it'll be run directly from python/ruby/etc...) and preferably having the thing just work without having to install or configure any dependencies.

    Like OP I hit two walls: libunwind, and linking. For libunwind, I ended up downloading/compiling manually; and for linking there is auditwheel[1]. Although it is a Python tool, I did actually end up using for Ruby (by creating a "fake python package", and then copying the linked dependencies).

    It was at that time that I learned about linking for dynamic libraries, patchelf and there is really no single/established tool to do this. I thought there should be something but most people seem to install the dependencies with any certain software. I also found, the hard way, that you still have to deal with gcc/c when working with Rust. It does isolate you from many stuff, but for many things there is no work around.

    There is a performance hit to this strategy, however, since shared dynamic libraries will be used by all the running programs that need them; whereas my solution will run its own instance. It made me wonder if wasm will come up with something similar without affecting portability.

    Finally, the project is open source and you can browse the code here: https://github.com/pyroscope-io/pyroscope-rs

    [1]: https://github.com/pypa/auditwheel

  4. code_templates

    Discontinued Collection of templates (mostly bazelized) for fast and easy start of projects.

    Did you eventually get a ref to an example Bazel build for Rust in that thread? (Writing here because you'll probably not look at the other thread again.)

    I see the linked resources are to docs only.

    If it's any help, here's a bazelized Rust demo implementation:

    https://github.com/mihaigalos/code_templates/tree/master/rus...

  5. rules_closure

    Closure rules for Bazel

    Hi I created Actually Portable Executable. I also created Bazel's Closure Compiler tooling. https://github.com/bazelbuild/rules_closure

  6. derasterize

    textmode supremacy

  7. sixel-tmux

    sixel-tmux is a fork of tmux, with just one goal: having the most reliable support of graphics

  8. dazel

    Run Google's bazel inside a docker container via a seamless proxy.

  9. InfluxDB

    InfluxDB high-performance time series database. Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.

    InfluxDB logo
  10. buildfarm

    Bazel remote caching and execution service

    Not sure what to say concerning buildfarm's remote execution.

    Reading an issue I've opened 1y ago [1], seems the backend requires the client to have a specific gcc version.

    That's a strong limitation imho.

    [1] https://github.com/bazelbuild/bazel-buildfarm/issues/545

  11. cosmopolitan

    build-once run-anywhere c library

    While I love this sort of portability and in particular how it just makes Rust even more useful to me.

    The library this is built on does have a bit of a weakness with respect to GUI software https://github.com/jart/cosmopolitan/issues/35 if this can be fixed this will be an amazing tool for building simple cross platform utilities and tools.

  12. sccache

    Sccache is a ccache-like tool. It is used as a compiler wrapper and avoids compilation when possible. Sccache has the capability to utilize caching in remote storage environments, including various cloud storage options, or alternatively, in local storage.

    There's also mozilla's sccache, which integrates with cargo (by wrapping rustc) to cache artifacts. A local cache is 2 lines of config in your .cargo/config.toml, and if you want to you can have shared caches in Redis or S3/Azure/GCP.

    Not nearly as flexible or powerful as Bazel, but also vastly simpler to setup if all you want is caching.

    https://github.com/mozilla/sccache

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

  • landlock-make: GNU Make fork using landlock for sandboxing, and solving the cache invalidation problem faster than Bazel

    3 projects | /r/cpp | 7 Aug 2022
  • Entropy for Clones

    1 project | news.ycombinator.com | 13 Apr 2025
  • Firecracker Entropy for VM Clones

    1 project | news.ycombinator.com | 11 Apr 2025
  • Revisit base container image for AWS services

    4 projects | dev.to | 3 Feb 2025
  • Release Cosmopolitan v4.0.0 ยท jart/cosmopolitan

    1 project | news.ycombinator.com | 23 Jan 2025

Did you know that C is
the 6th most popular programming language
based on number of references?