| 15 Mar 2024 |
cmacrae | Sorry, does that make sense? | 15:22:33 |
accelbread | * can just build one and pass it to flakelight. The default flakelight-rust one just uses Rust, cargo.toml, and cargo.locl | 15:22:37 |
accelbread | * can just build one and pass it to flakelight. The default flakelight-rust one just uses Rust, cargo.toml, and cargo.lock files | 15:22:42 |
cmacrae | outputs = { flakelight, flakelight-rust, devenv, ... }@inputs:
flakelight ./. {
imports = [ flakelight-rust.flakelightModules.default ];
systems = inputs.nixpkgs.lib.systems.flakeExposed;
| 15:22:47 |
cmacrae | like this :) | 15:22:51 |
accelbread | same way:
outputs = { flakelight, flakelight-rust, devenv, ... }@inputs:
flakelight ./. {
imports = [ flakelight-rust.flakelightModules.default ];
systems = inputs.nixpkgs.lib.systems.flakeExposed;
fileset = ./.;
| 15:23:32 |
cmacrae | oh, I tried that but it didn't seem to do what I wanted 😅 I must be doing something wrong | 15:23:59 |
accelbread | calling flakelight-rust is just a shortcut for calling flakelight and adding flakelight-rust.flakelightModules.default | 15:24:07 |
accelbread | Hmm, maybe the fileset is not matching your files? | 15:24:35 |
cmacrae | yeah, I tried ./. to do everything as a test, but it didn't look like the whole tree was in the build env | 15:25:52 |
cmacrae | I'll mess around and see what I can get working. It was very likely user error 🤡 | 15:26:13 |
accelbread | Hmm, odd, might be something with workspaces too; I havn't actually used workspaces for actual projects, that was contributed by others so might have to mess around with it more | 15:27:10 |
cmacrae | seems they do some cargo overrides in some .cargo* files in the tree in places where they're calling out to some shell scripts, hence why I need to expand the filter | 15:27:41 |
accelbread | do you know which subset of files is being picked up?
ah | 15:27:50 |
cmacrae | yeah, I mean I legit have no idea what I'm doing haha, i've never really used rust properly | 15:28:08 |
accelbread | I'm wondering is it might be due to how crane works
| 15:28:34 |
cmacrae | In reply to @accelbread:matrix.org do you know which subset of files is being picked up? ah all the rust related stuff! so that's good, the default filter is working | 15:28:35 |
accelbread | Ah | 15:28:41 |
accelbread | So probably not a crane issue | 15:28:55 |
cmacrae | nope :) let me try and get a different filter working and report back | 15:29:13 |
accelbread | one thing you can try to debug is set:
| 15:29:30 |
accelbread | {
inputs.flakelight-rust.url = "github:accelbread/flakelight-rust";
outputs = { flakelight-rust, ... }:
flakelight-rust ./. ({ lib, outputs, ... }: {
fileset = ./.;
outputs.test = lib.fileset.toList outputs.fileset;
});
}
and nix eval .#test
| 15:32:04 |
accelbread | need a recent nixpkgs for toList; one shipped with flakelight has it already iirc | 15:32:39 |
accelbread | * need a very recent nixpkgs for toList; one shipped with flakelight has it already iirce | 15:32:51 |
accelbread | * need a very recent nixpkgs for toList; one shipped with flakelight has it already iirc | 15:32:55 |
cmacrae | ah nice, that's really handy, thanks! | 15:33:33 |
cmacrae | doesn't seem like fileset is being honoured/evaluated correctly when I'm setting it like so:
outputs = { flakelight, flakelight-rust, devenv, ... }@inputs:
flakelight ./. ({ pkgs, lib, outputs, ... }: {
imports = [ flakelight-rust.flakelightModules.default ];
systems = lib.systems.flakeExposed;
fileset = ./.;
tried mkForceing it in case, that didn't work either
| 15:48:30 |
cmacrae | the handy test output you provided showed that I was able to filter how I wanted. but when the build fails for the cargo stuff, I take a look at the log, get the build env's source tree and look in there, there's only rust related contents, even though I set the filter to ./. | 15:49:47 |
accelbread | huh, should just be using it here: https://github.com/accelbread/flakelight-rust/blob/master/flakelight-rust.nix
doesnt seem like crane is overriding anything | 15:52:14 |
accelbread | if you point at a fork of flakelight-rust with that line swapped with inherit src; would that work? i'll mess around with it in a bit too to see if I can figure it out | 15:54:14 |