| 15 Mar 2024 |
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 |
cmacrae | good idea :) let me give that a go | 15:55:34 |
cmacrae | thanks! I appreciate it! | 15:55:40 |
cmacrae | hmm, weird, no even with just inherit src; in the crane call the filetree is the same (filtered rust related stuff). that seems completely wrong, based on that change. so, let me dig around and make sure I'm not doing anything stupid | 16:00:37 |