rust-overlay
fenix
rust-overlay | fenix | |
---|---|---|
11 | 19 | |
751 | 562 | |
- | 3.6% | |
9.5 | 9.5 | |
8 days ago | 4 days ago | |
Nix | Nix | |
MIT License | Mozilla Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rust-overlay
-
Understanding Overlays and direnv nix shell inheritance
I'm trying to understand overlays in order to make a proper rustup install (I've read that this overlay is the best way to go).
-
Diving straight into flakes with no channels?
real-world example: https://github.com/oxalica/rust-overlay/blob/master/flake.nix
-
An example providing rust toolchain for Linux/macOS using devenv.sh
In this language context specifically, if one wanted to manage their workspace with Nix I would reach for Riff and/or oxalica/rust-overlay first, since they are deliberately more aware of Rust-specific nuance. In the latter's case it has compatibility paths with rustup-toolchain files as well, for allowing your peers who can't or won't adopt Nix to continue to feel like first-class participants in the project. Another alternative I don't have experience with would be nix-community/fenix.
-
Introducing Riff, a Nix-based tool for automatically providing external dependencies to Rust projects
p.s. I'm not sure if it's mentioned much of anywhere, but it'd be neat if there was a way to figure out the appropriate cargo from a rust-toolchain/rust-toolchain.toml if present, ala https://github.com/oxalica/rust-overlay. Funnily enough 95% of my development time is in Rust, but I don't actually have it installed globally, fun times being a NixOS user. I'd definitely make the argument that cargo is an external dependency!
-
Have a few questions about NixOS
Many of us have moved to https://github.com/oxalica/rust-overlay over Mozilla's overlay.
-
Rust Environment and Docker Build with Nix Flakes
We added rust-overlay, so we can easily specify different rust versions without relying on nixpkgs to give us what ever rust version in there.
-
Switching from pyenv, rbenv, goenv and nvm to asdf – yujinyuz
If it's Rust, you can use https://github.com/oxalica/rust-overlay to get any version you want very easily without pinning an instance of nixpkgs just for it.
asdf does not allow you to keep three different versions of the same language, so I'm not sure how that compares? It's not super-trivial to do in Nix, but at least you can do it.
asdf is also no different than Nix when it comes to minor/major versions. You're at the mercy of what the plugin does, other than that you have to create your own plugin from scratch or make a fork. Nix has the option to patch things up more easily at least.
-
Fenix: rust toolchains for all channels and rust-analyzer nightly
How does this compare to https://github.com/oxalica/rust-overlay/ ? Can fenix ingest a rust-toolchain file and provide packages from it?
Can you say a bit about how this compares to oxalica’s rust overlay?
-
What made you grok Nix language?
I frequently try to do something, say use (from the README of rust overlay):
fenix
-
Use nix-shell or systemPackages
Rustup works as is. Though note that Nix supplants all such toolchain installers such as Rustup, nvm, etc. I.e. instead of Rustup there is fenix.
-
Can rustc generate identical binaries, with the same hash, from the same souce code?
Fenix ( https://github.com/nix-community/fenix ) has tooling or picking a specific toolchain or even nightly. You can then build with the following nix code:
- Fenix: Rust toolchains and rust-analyzer nightly for Nix
-
Annoucing fenix monthly, Rust toolchains updated 1st of every month
Fenix monthly is a new branch similar to the main branch, but only updated on the 1st of every month, for cases where you want to use rust nightly but don't need it to be updated very often.
- Fenix - Rust toolchains and rust-analyzer nightly for Nix
- Show HN: Fenix – Rust toolchains and Rust-analyzer nightly for Nix
-
Why this overlay doesn't work?
The issue should be fixed once the nix-vscode-extension and fenix patches are merged. The latter will happen automatically once CI passes.
-
Have a few questions about NixOS
4. I would suggest Mozilla's Rust overlay or fenix or similar instead of Rustup - that would be more of the "Nix-way" to acquire the toolchain and you can still manage multiple versions. Not sure what the Ruby equivalent is, I don't do Ruby.
-
Oops, I Did It Again...I Made A Rust Web API And It Was Not That Difficult
To follow along, you'll need a stable Rust toolchain. See the install page for instructions to install rustup for your platform. You should prefer this method to your distribution's package manager. If you're a NixOS freak, I recommend fenix.
- Fenix: rust toolchains for all channels and rust-analyzer nightly
What are some alternatives?
naersk - Build Rust projects in Nix - no configuration, no code generation, no IFD, sandbox friendly.
nixos-flake-example - This is a demo NixOS config, with optional flakes support. Along with notes on why flakes is useful and worth adopting.
Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]
Nightlies - Nightly builds for DuckieTV
nixpkgs-mozilla - Mozilla overlay for Nixpkgs.
anyhow - Flexible concrete Error type built on std::error::Error
asdf-direnv - direnv plugin for the asdf version manager
nixpkgs - Nix Packages collection & NixOS
cargo2nix - Granular builds of Rust projects for Nix
nix-cargo-integration - Library to easily and effortlessly integrate Cargo projects with Nix.
nix-direnv - A fast, persistent use_nix/use_flake implementation for direnv [maintainer=@Mic92 / @bbenne10]
lazy-static.rs - A small macro for defining lazy evaluated static variables in Rust.