Nix Rust | 688 Members | |
| Rust | 155 Servers |
| Sender | Message | Time |
|---|---|---|
| 27 Feb 2025 | ||
| direnv requires you to manually allow each .envrc before executing it, so you have a chance to read it before you run it. It re-requests if the file changes too | 16:44:26 | |
In reply to @niklaskorz:korz.dev There is a PR that tries to fix the issue with symlinks. (Can't send the url atm) Though, if it's in the config file, I doubt it solves that. Would be interesting to see what upstream carg does about this. (fetchCargoTarball or the | 16:50:36 | |
| A change could be made to fetchCargoVendor that doesn't only copy a crate's subtree, but the entire git tree. This would break the expectation of having all crates in the root of cargoDeps. Though this is something we've been considering doing anyways (to allow duplicate packages with the same version). I'm very satisfied with the fact that we can do all these changes without having to worry about breaking the FOD hash. | 18:06:56 | |
| that being said, it doesn't re-request if the file didn't change but the flake did so doing an allow for some project that just uses (though in practice i don't think this is much of an issue if it's a project where you would execute the code of it anyways, the allow is just to stop you getting owned by a direnv you don't expect) | 21:51:12 | |
oh right shellHook exists | 21:51:52 | |
| i forget about that | 21:51:56 | |
| but yeah ultimately i don't think it's a problem they could also just insert malicious code into the project itself and own a lot more people than just nix users | 21:56:11 | |
| requiring re-validation whenever the environment changes wouldn't be very helpful because there's no way you're actually going to read all the changes every time | 21:57:01 | |
| it'd be nice if there was a paranoid mode that based the permission on derivation hash | 23:14:09 | |
| hmmm can you know that without actually running any binaries? (even in the presence of, say, IFD) | 23:25:17 | |
| * hmmm can you know that without actually running any (project-supplied) binaries? (even in the presence of, say, IFD) | 23:25:27 | |
| for the simple case of a git project honestly pinning it to the commit hash would be enough | 23:25:55 | |
| "if the current hash isn't X, bail" | 23:26:01 | |
| I assume you mean "absence"? Nix eval should be safe, nominally | 23:36:39 | |
| no i mean if you want to implement a paranoid mode, it would need to work even with IFD being used in the project | 23:38:48 | |
| well, it can just pass the Nix flag to disable IFD :) | 23:45:23 | |
| but also – that's still in the Nix sandbox | 23:45:33 | |
| which is a crummy security boundary admittedly | 23:45:36 | |
| 28 Feb 2025 | ||
my humble opinion is that IFD should be axed and I run all my systems with allow-import-from-derivation = false so I wouldn't mind the paranoid mode not supporting IFD | 09:08:05 | |