!FBuJyWXTGcGtHTPphC:nixos.org

Nix Rust

661 Members
Rust153 Servers

Load older messages


SenderMessageTime
4 Aug 2025
@emilazy:matrix.orgemily the cool thing about splicing is how it doesn't work at all with like foo.package = foo.override { … }; 18:10:05
@emilazy:matrix.orgemilylike it only actually helps the boring easy case18:10:17
@dramforever:matrix.orgdramforever yeah i think the entirety of overrides.nix needs a callPackage-ification or like pkgsXY-ification 18:10:50
@dramforever:matrix.orgdramforever
In reply to @emilazy:matrix.org
I think it's not because the main package set isn't spliced and nobody knows why
i think the funniest part is iirc pkgs in _module.args in nixos is spliced
18:16:57
@emilazy:matrix.orgemilywell…18:17:16
@emilazy:matrix.orgemilyhttps://github.com/NixOS/nixpkgs/pull/41627618:17:24
@emilazy:matrix.orgemilyI spent several days being like wtf is cross NixOS just totally busted until I discovered this bug18:17:32
@emilazy:matrix.orgemilybut yes by default it is18:17:47
@kjeremy:matrix.orgkjeremythis didn't seem to change anything18:40:31
@emilazy:matrix.orgemilyyour whole splicing is messed up18:45:33
@emilazy:matrix.orgemilycan you do this as not an overlay18:45:40
@kjeremy:matrix.orgkjeremy I'm not sure. It's even worse than this in reality. This is an unholy abomination. We're a few years out of date with nixpkgs and the latest nix-ros-overlay so I'm trying to jam these packages into our older nix-ros-overlay with an overlay and then use rust from nix-unstable to compile the zenoh packages since they require a newer toolchain. Miraculously it works natively but dies horribly during cross 18:48:11
@emilazy:matrix.orgemilyuhhh18:49:01
@kjeremy:matrix.orgkjeremyyep18:49:09
@emilazy:matrix.orgemilyyou should be happy it can build anything :D18:50:05
@kjeremy:matrix.orgkjeremyhonestly it's pretty impressive that nix can do this when non-cross18:50:30
@emilazy:matrix.orgemily anyway any time you nativeBuildInputs you must explicitly use buildPacakges 18:50:45
@emilazy:matrix.orgemilysince no splicing18:50:51
@kjeremy:matrix.orgkjeremy Okay! So I got it to use the right packages by using buildPackages.{rustPlatform, cargo, rustc}. It turns out I had to tell zeno to pass the right architecture down to cmake with cmakeFlags = [ "-DZENOHC_CUSTOM_TARGET=aarch64-unknown-linux-gnu" ]; 20:06:51
@kfiz:matrix.sopado.dekfiz joined the room.20:33:12
@kfiz:matrix.sopado.dekfiz changed their display name from kfiz 🏳️‍⚧️ to kfiz.21:18:59
@impqxr:matrix.orgimpqxr joined the room.21:52:01
5 Aug 2025
@isabel:isabelroses.comisabel changed their profile picture.09:49:06
@kfiz:matrix.sopado.dekfiz set a profile picture.20:14:27
6 Aug 2025
@vidariondr:matrix.orgvidariondr set a profile picture.18:30:52
7 Aug 2025
@goatastronaut0212:matrix.orgThe Little Waltz joined the room.17:31:33
@damccull:matrix.orgdamccull

How do I find out what "buildRustPackage" has as far as options? Like, I see it has a 'buildFeatures' option by looking at someone else's code, but does it have a buildPackages option, for instance? Where would I look to find that out?

Basically I want to specify which particular binary in the cargo.toml to build. Normally would do this with cargo build --package mybin but not sure how in the buildRustPackage helper.

23:10:42
@damccull:matrix.orgdamccull *

How do I find out what "buildRustPackage" has as far as options? Like, I see it has a 'buildFeatures' option by looking at someone else's code, but does it have a cargoPackages option, for instance? Where would I look to find that out?

Basically I want to specify which particular binary in the cargo.toml to build. Normally would do this with cargo build --package mybin but not sure how in the buildRustPackage helper.

23:12:04
@dramforever:matrix.orgdramforever
In reply to @damccull:matrix.org

How do I find out what "buildRustPackage" has as far as options? Like, I see it has a 'buildFeatures' option by looking at someone else's code, but does it have a cargoPackages option, for instance? Where would I look to find that out?

Basically I want to specify which particular binary in the cargo.toml to build. Normally would do this with cargo build --package mybin but not sure how in the buildRustPackage helper.

maybe buildAndTestSubdir? it's a bit confusingly documented i agree
23:18:36
@damccull:matrix.orgdamccull

So this is what I'm using in my flake:

          rustPackage =
            package: features:
            (pkgs.makeRustPlatform {
              cargo = pkgs.rust-bin.stable.latest.minimal;
              rustc = pkgs.rust-bin.stable.latest.minimal;
            }).buildRustPackage
              {
                inherit (cargoToml.package) name version;
                src = ./.;
                cargoLock.lockFile = ./Cargo.lock;
                buildFeatures = features;
                buildInputs = rustBuildInputs;
                nativeBuildInputs = [ rustToolchain ];
                cargoInstallFlags = [
                  "--package"
                  package
                ];
              };

I want to run cargo build --package dioxus-cli --features no-downloads specifically. Then copy the bin to the right location for future use, but first I just want to get it building.

23:23:23

Show newer messages


Back to Room ListRoom Version: 6