gomod2nix
cargo2nix
gomod2nix | cargo2nix | |
---|---|---|
3 | 12 | |
197 | 325 | |
3.0% | 3.7% | |
6.9 | 6.7 | |
about 1 month ago | 17 days ago | |
Nix | Nix | |
MIT License | MIT License |
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.
gomod2nix
-
Way to get NVM working in CI/CD systems
I'm actually working on a blog article about our setup (or possibly a series of articles, depending on how much longer it gets), it'll be published on https://korz.dev once its done. In the meantime, here's the rough summary:
- Go projects are built with https://github.com/nix-community/gomod2nix. We generate a list of internal packages a project depends on using `go list -json` that is then passed to gomod2nix's `buildGoApplication`.
-
Help packaging Go binaries
There are tools to automate that process if you've got an lockfile: gomod2nix.
-
Help with gomod2nix
- https://github.com/tweag/gomod2nix/issues/21
cargo2nix
- Transitioning to Rust as a company
-
Way to get NVM working in CI/CD systems
- Rust projects are built with https://github.com/cargo2nix/cargo2nix. We chose cargo2nix to get incremental builds, meaning that dependency builds can be shared between our Rust projects and that not all dependencies have to be rebuilt when adding/updating/removing dependencies from a project.
-
[Blog post]: Scaling Rust builds with Bazel
We used cargo2nix to generate top-level Cargo.nix file that we committed to the repository (we didn't allow generating nix files on CI for security and reproducibility reasons).
-
Nix & Rust - cargo2nix 0.11.0 released
There's a cross compile example that works for at least 3-4 targets on Linux and uses proc macros. Pretty sure the situation you described is no more complex.
-
Rust nix develop & nix build - cargo2nix 0.11.0 released
Release notes. Last announced release was 0.9.0.
- Nix and NixOS Get So Close to Perfect
-
How Go Mitigates Supply Chain Attacks
Nix already solves this problem and can handle dependencies and building projects across a range of languages (including Rust via Cargo2nix) and reproducible machine configuration.
- From nix-shell to nix develop
-
Is using crates more safe than using npm?
Building with nix, for instance with cargo2nix (https://github.com/cargo2nix/cargo2nix), could be safer if sandboxing is enabled.
-
Nix-ifying a Rust project
cargo2nix
What are some alternatives?
core - GO implementation of the Terra Protocol
naersk - Build Rust projects in Nix - no configuration, no code generation, no IFD, sandbox friendly.
wasmvm - Go bindings to the running cosmwasm contracts with wasmer
rust-nix-template - Rust project template with Nix (Flakes) and VSCode support
regen-ledger - :seedling: Blockchain for planetary regeneration
rust-overlay - Pure and reproducible nix overlay of binary distributed rust toolchains
nixpkgs - Nix Packages collection & NixOS
crate2nix - rebuild only changed crates in CI with crate2nix and nix
yarnpnp2nix - A performance focused and space efficient way of packaging NodeJS applications with Nix
Cargo - The Rust package manager
watt - Runtime for executing procedural macros as WebAssembly
nix-templates - Nix Flake templates for various languages