crate2nix
robotnix
crate2nix | robotnix | |
---|---|---|
10 | 14 | |
321 | 565 | |
2.8% | 2.3% | |
9.3 | 6.7 | |
9 days ago | about 1 month ago | |
Nix | Nix | |
Apache License 2.0 | 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.
crate2nix
- Transitioning to Rust as a company
-
How to package a Rust app using Nix
I'll use nixpkgs' buildRustPackage. There's a few other tools, my favorite being crate2nix, but we'll leave that to a future tutorial.
-
Nix shell related questions (for rust)
If you want to iterate with nix instead of cargo, crate2nix and cargo2nix provides more caching and more fine control over your dependencies. I haven't used these two so you would have to decide for yourself. You may also want to try out nocargo for something more experimental.
-
Introducing Crane: Composable and Cacheable Builds with Cargo and Nix
I'm yet to try it out, but from the blog post, the README and the source it appears that Crane builds all dependencies in one derivation (separately from the main crate). This means that if a dependency gets added, removed or changed, all dependencies of a crate will be rebuilt. This is in contrast with https://github.com/kolloch/crate2nix, which does build every dependency in a separate package, thus you don't need to rebuild other dependencies if you only change a small part of the tree.
-
Nixery – Docker images on the fly with Nix
Yes, you will have to package it if it's not already in nixpkgs.
The good news is once you learn how, it's basically trivial with crate2nix[0], which can autogenerate nix derivations from rust crates
[0] https://github.com/kolloch/crate2nix
-
Help with Nix and Rust
From my quick reading of cargo2nix's webpage yes. https://github.com/kolloch/crate2nix has a workspaces section.
-
How do you install packages not in Nixpkgs?
As for your two applications, they're both written in Rust, and I like https://github.com/kolloch/crate2nix as a way to package Rust crates with Nix. BTW, wezterm is already in nixpkgs!
-
Nix-ifying a Rust project
I like the way crate2nix works. I have made a flake template for it here. Sometimes it requires a couple of overrides to fix some misbehaving crates (see https://github.com/balsoft/simple-osd-daemons/blob/master/flake.nix#L29 for an example of such overrides), but otherwise it's fantastic. It doesn't require any hash nonsense, it downloads and builds all the crates separately (unlike naersk or other solutions) so you get all the benefits of Nix (reproducibility and proper caching).
-
How to do a full, reproducible archive of a Rust project?
Crate2nix might help: https://github.com/kolloch/crate2nix
robotnix
- Immutable Linux Distributions for Those Looking to Embrace the Future
-
Towards a reproducible F-Droid
danielfullmer/robotnix
-
Error signing TrichromeChrome.apk when building OTA package
commit 660b23fb152874b6d237065045c78ceeb6ebdbf9 Author: Chirayu Desai Date: Fri Jun 24 01:41:28 2022 +0530 releasetools: Replace Trichrome fingerprint * Trichrome APKs depend on TrichromeLibrary, and they specify both package name and a certificate digest * We sign TrichromeLibrary and both dependent APKs with the same key, so we can simply make sure that the fingerprint matches the key the APK is being (re)signed with Based on: https://github.com/danielfullmer/robotnix/blob/master/modules/apps/chromium-trichrome-patcher.py Change-Id: I79f8c69787decd5abbb5d5513dee9bc357eb8814
-
post home folders
You might be interested in https://github.com/danielfullmer/robotnix
-
Nixery – Docker images on the fly with Nix
Just noting, using Nix it is possible to build an actual real deal Android image using Robotnix:
- https://github.com/danielfullmer/robotnix/
This is different from a non-Android Linux on Mobile devices, which is what Mobile NixOS aims to achieve :).
-
Project End of Life
If you still want to do your own builds, I'd recommend looking at Robotnix (https://github.com/danielfullmer/robotnix). While it doesn't out of the box build on AWS like this, it's a way more sane build process and it would be easy enough to execute a build on any cloud provider.
- Wir schreiben für das c't-Magazin über Linux - fragt uns alles! [Beginn um 17 Uhr]
- Build Android (AOSP) Using Nix
- I wonder if we're ever going to see a mobile OS made with the same philosophy as Arch Linux.
-
Add Android Auto to Calyx OS before flashing ROM
There are some tools already which support automated builds such as https://github.com/dan-v/rattlesnakeos-stack and https://github.com/danielfullmer/robotnix - however they'll need work to support both CalyxOS and also Android Auto.
What are some alternatives?
naersk - Build Rust projects in Nix - no configuration, no code generation, no IFD, sandbox friendly.
calyxos
cargo2nix - Granular builds of Rust projects for Nix
AuroraStore
rust-nix-template - Rust project template with Nix (Flakes) and VSCode support
nix - Nix, the purely functional package manager
crates.io-index - Registry index for crates.io
rattlesnakeos-stack - Build your own privacy and security focused Android OS in the cloud.
nix-templates - Nix Flake templates for various languages
Pine64-Arch - :penguin: Arch Linux ARM for your PinePhone/Pro and PineTab/2
nixos - My NixOS Configurations
haskell-nix - Nix and Haskell in production