| 19 Nov 2025 |
K900 | Cross-compilation is ~fundamentally broken | 18:09:20 |
K900 | The layout is extremely verbose | 18:09:33 |
K900 | The dependency resolution is non-existent | 18:09:43 |
Emma [it/its] | i like the layout though
also wdym "dependency resolution" here? | 18:10:26 |
K900 | I mean that you have to spam .follows everywhere | 18:11:00 |
K900 | To make flakes reasonably compose | 18:11:06 |
K900 | And I bet you're using flake-utils or flake-parts or whatever for the layout | 18:11:39 |
K900 | That abstracts the nonsense away | 18:11:45 |
Emma [it/its] | this seems like a benefit to me (at least for flakes that give you packages) | 18:12:23 |
whispers (it/fae) | versioning is just nonexistent too | 18:12:33 |
K900 | What is, having to spam .follows everywhere? | 18:12:44 |
Emma [it/its] | // flake-utils.lib.eachSystem flake-utils.lib.allSystems ( is the only part where i use flake-utils, and that's only for packages outputs | 18:12:49 |
K900 | So you are in fact using an entire abstraction to express things that are bad | 18:13:06 |
Emma [it/its] | im merging it into the rest of the structure lol | 18:13:23 |
K900 | Same thing | 18:13:30 |
Emma [it/its] | i suppose yeah - i meant more the other side of the issue: being able to import a flake and reasonably beign able to expect it to build as it uses it's own definition of nixpkgs etc | 18:13:50 |
K900 | It would be significantly easier if you could just have { buildPlatform, hostPlatform } as arguments to your outputs function | 18:14:01 |
K900 | Or something like that | 18:14:20 |
K900 | You should have that option | 18:14:36 |
K900 | But I don't think it should be the default | 18:14:41 |
K900 | I actually really appreciate the choice Cargo makes here | 18:14:51 |
K900 | The final artifact is always locked | 18:14:57 |
K900 | But the intermediate dependencies are cross-resolved | 18:15:04 |
ghpzin | It has plenty of other weird gotchas. | 18:15:32 |
Katalin 🔪 | yeah. something not building should be the exception, it shouldn't be the expectation, that you then have to always work around | 18:15:54 |
Emma [it/its] | i dont mind it being the default - i tend to use that detail a lot myself | 18:15:56 |
Katalin 🔪 | I want to just say "this repo needs nixpkgs (and whatever other dependencies), supply it yourself if you import this repo somewhere" | 18:17:09 |
Katalin 🔪 | and only when building standalone, should it supply its own locked dependencies | 18:17:18 |
Katalin 🔪 | essentially I want something like what meson does for wrap-files, where only the wrap files in the top-level project are considered | 18:18:19 |
raitobezarius | In reply to @emma:rory.gay also re the announcement, does that note about flakes in vNext mean the UX/commands will be changing, or will it be invisible to users? No change | 18:21:06 |