Nix Hackers | 949 Members | |
| For people hacking on the Nix package manager itself | 196 Servers |
| Sender | Message | Time |
|---|---|---|
| 10 Dec 2024 | ||
| ๐๏ธ๐๏ธ Can I motivate someone to fix https://github.com/NixOS/nix/issues/8074 ? ๐ฅบ | 15:25:14 | |
| 11 Dec 2024 | ||
| 05:09:28 | ||
| 12:05:42 | ||
| 14:20:17 | ||
| I'm having an issue that in my org, the simple invocation I'd like instead to point I've tried for example to point it at a local git repository, but this results in nix trying to clone the nixpkgs git repository, which is incredibly expensive in time, CPU time, disk and bandwidth. How do others handle this, or does everyone simply supply a github token? I'm just not sure this is a scalable approach, and it would be nice to drop the requirement of github being visible to the machine invoking nix. | 14:56:05 | |
| http_proxy envs and the like? | 14:57:34 | |
| or just copy the downloaded store entry to the machine | 14:57:48 | |
| the one place where this happens to me, I just have tokens | 14:58:02 | |
| I'm not clear how a http proxy helps matters? Wouldn't that again have the effect of concentrating requests to go through one IP and requiring that they're authenticated? Since it uses https I don't see how the proxy could even provide the authentication if I was inclined to go that route. | 14:59:36 | |
| Having a store on the machine could work, but I need to persuade nix not to query the github API at all. | 14:59:55 | |
| (a store = a copy of a nixpkgs tree) | 15:00:08 | |
| But there is still the secondary problem of user flakes: those will contain references to nixpkgs, and those references also need to be acquired. This also generates a similar problem that needs solving | 15:00:44 | |
| I personally follow nixpkgs on every flake input | 15:01:45 | |
I suppose in this latter case, at if the user has a locked flake, it's possible (maybe?) to substitute the nixpkgs tree from a substituter, which would be acceptable. But that's only fine so long as they have a locked flake and breaks if they want to nix flake update. | 15:01:49 | |
| Right, but nixpkgs will still be locked into the flake as github:nixos/nixpkgs, no? | 15:02:02 | |
| yeah, basically | 15:02:12 | |
| Really I need some way of telling nix 'these things are available from this other place'; and for nix to query for example what the latest commit is from that place, and not github. | 15:03:30 | |
| The problem is that many obvious places to put a git repository don't provide an efficient way to acquire a checkout tree of nixpkgs at a specific commit. | 15:04:18 | |
| (e.g, I don't think gerrit provides an equivalent of github's /archive/) | 15:04:32 | |
| Gerrit is usually paired with gitiles, which dose. | 15:05:59 | |
| Right but can nix fetch a tree through it? | 15:06:17 | |
| * | 15:06:19 | |
| (and better, can I redirect requests to github to a gitiles instance?) | 15:06:38 | |
| I don't think so, although it could โ we have a gitiles fetcher in Nixpkgs. | 15:06:42 | |
| Right, fetching via gitiles could work. But I don't see a fetcher in nix? (No grep hits, no PR hits). And even if there was, there would also need to be a redirection mechanism in nix | 15:12:28 | |
| So, I think I have a sort-of route. 1) weโd need a gitiles fetcher. 2) the machines which canโt access github can have a registry pin for nixpkgs which points them to the private gitiles mirror. Minor detail that a gitiles would be needed. And the other minor detail that any flake lockfiles made on those machines would end up referencing the mirror, and not the original github repository as you would probably want. | 17:30:43 | |
| An additional annoyance is that the mirror actually has different URLs in different contexts. So youโd really not want to write those into lockfiles if possible. | 17:33:57 | |
| 12 Dec 2024 | ||
| 19:44:36 | ||
| 13 Dec 2024 | ||
| 10:34:07 | ||
| 14 Dec 2024 | ||
| 03:00:24 | ||